nl::Weave::WeaveServerPrzedstawicielBase

#include <src/lib/core/WeaveServerBase.h>

Popularna klasa podstawowa do implementacji obiektów delegowanego serwera Weave.

Podsumowanie

Dziedziczenie

Bezpośrednie powiadomienia: Aplikacja::

Typy chronione

@69{
  kAccessControlResult_NotDetermined = 0,
  kAccessControlResult_Accepted = 1,
  kAccessControlResult_Rejected = 2,
  kAccessControlResult_Rejected_RespSent = 3,
  kAccessControlResult_Rejected_Silent = 4
}
enum | typ wyliczeniowy
AccessControlResult typedef
uint8_t

Funkcje chronione

EnforceAccessControl(ExchangeContext *ec, uint32_t msgProfileId, uint8_t msgType, const WeaveMessageInfo *msgInfo, AccessControlResult & result)
virtual void
Wirtualna metoda określania zasad kontroli dostępu na poziomie wiadomości dla wiadomości przychodzących na serwer.
WeaveServerDelegateBase(void)

Typy chronione

@69

 @69

Wynik kontroli dostępu

uint8_t AccessControlResult

Funkcje chronione

Kontrola dostępu

virtual void EnforceAccessControl(
  ExchangeContext *ec,
  uint32_t msgProfileId,
  uint8_t msgType,
  const WeaveMessageInfo *msgInfo,
  AccessControlResult & result
)

Wirtualna metoda określania zasad kontroli dostępu na poziomie wiadomości dla wiadomości przychodzących na serwer.

Ta metoda jest wywoływana przez infrastrukturę serwera Weave, aby określić, czy przychodzące wiadomości z żądaniem mają być akceptowane czy przetwarzane – normalnie czy odrzucone. Klasy delegowane powiązane z wdrożeniami serwera Weave muszą zastąpić tę metodę, aby zaimplementować odpowiednie zasady kontroli dostępu dla swoich protokołów. Aplikacje mogą ją zastąpić, aby umożliwić obsługę zasad niestandardowych innych niż te skonfigurowane przez standardowe wdrożenia serwera.

Wdrożenie tej metody powinno spowodować zwrócenie wartości zaakceptowanej lub odrzuconej na podstawie wyniku weryfikacji zasad kontroli dostępu. Zwracanie wyniku odrzuconego powoduje wysłanie raportu o stanie statusu Common/AccessDenied. Implementacje metod mogą też wysyłać własne odpowiedzi, którymi mogą być raporty stanu lub dowolne inne komunikaty. W takim przypadku metoda powinna zwracać wynik Odrzuć_RespWysłane, aby wskazać, że odpowiedź została już wysłana. Implementacje mogą również zwracać wartość Odrzuć_cichy, co oznacza, że żądanie powinno zostać odrzucone bez wysyłania odpowiedzi do osoby wysyłającej prośbę.

Klasy, które zastępują metodę EnforceAccessControl(), są wymagane w przypadkach wywoływania metody o nazwie „nazwanej” w najbliższej klasie nadrzędnej, czyli klasy WeaveServerPrzedstawicielBase lub klasy uzyskanej z tej klasy. Zastąpione metody powinny najpierw zaktualizować wartość wyniku w celu określenia zasad kontroli dostępu, a następnie wywołać klasę podstawową w celu określenia tych wyników.

Szczegóły
Parametry
[in] ec
ExchangeContext, przez który wiadomość została odebrana.
[in] msgProfileId
Identyfikator profilu odebranej wiadomości.
[in] msgType
Typ wiadomości o otrzymanej wiadomości.
[in] msgInfo
Struktura WeaveMessageInfo z informacjami o otrzymanej wiadomości
[in,out] result
Wyliczona wartość określająca wynik oceny zasady kontroli dostępu dla odebranej wiadomości. Po wejściu w metodę wartość reprezentuje wstępny wynik w bieżącym punkcie procesu oceny. Po zwróceniu wyniki powinny odzwierciedlać ostateczną ocenę zasad kontroli dostępu do wiadomości.

Baza danych serwera Weave

 WeaveServerDelegateBase(
  void
)