Sdílet prostřednictvím


Nastavení zabezpečení na úrovni proxy rozhraní

Někdy klient potřebuje jemně odstupňovanou kontrolu nad zabezpečením volání do konkrétních rozhraní. Zabezpečení může být například nastaveno na nízké úrovni procesu, ale volání konkrétního rozhraní můžou vyžadovat vyšší úroveň ověřování, například šifrování. Metody rozhraní IClientSecurity umožňují klientovi změnit nastavení zabezpečení spojené s voláními konkrétního rozhraní tím, že řídí nastavení zabezpečení na úrovni proxy rozhraní.

Klient se může dotazovat na existující objekt pro IClientSecurity a potom volat metodu IClientSecurity::QueryBlanket, aby zjistil aktuální nastavení zabezpečení pro konkrétní proxy rozhraní. Metodu IClientSecurity::SetBlanket lze použít ke změně nastavení zabezpečení pro jednotlivé proxy rozhraní objektu před voláním jedné z metod rozhraní. Nová nastavení platí pro všechny budoucí volající tohoto konkrétního rozhraní. Metoda IClientSecurity::CopyProxy poskytuje klientovi způsob, jak zkopírovat rozhraní proxy, aby následná volání SetBlanket na kopii neovlivnila volajícího původního proxy.

SetBlanket se běžně používá ke zvýšení úrovně ověřování pro konkrétní proxy rozhraní na vyšší úroveň ochrany zabezpečení. V některých situacích ale může být také užitečné snížit úroveň ověřování pro konkrétní proxy rozhraní. Předpokládejme například, že výchozí úroveň ověřování pro proces je jiná hodnota než RPC_C_AUTHN_LEVEL_NONE a klient a server jsou v samostatných doménách, které navzájem nedůvěřují. V takovém případě se volání serveru nezdaří, pokud klient neprovede SetBlanket ke snížení úrovně autentizace na RPC_C_AUTHN_LEVEL_NONE.

Klienti používající výchozí implementaci IClientSecurity poskytované správcem proxy serveru mohou volat pomocné funkce CoQueryProxyBlanket, CoSetProxyBlanketa CoCopyProxy pomocné funkce místo přímého volání IClientSecurity metody. Pomocné funkce zjednodušují kód, ale jsou o něco méně efektivní než volání odpovídajících metod IClientSecurity přímo.

Rozhraní IClientSecurity je implementované místně pro klienta správcem proxy serveru. Některé vlastní zařazované objekty nemusí podporovat IClientSecurity.

IClientSecurity funguje se všemi podporovanými ověřovacími službami (aktuálně NTLMSSP, Schannel a protokolem Kerberos v5).

Nastavení zabezpečení pro aplikace modelu COM