MessageSecurityOverHttp.NegotiateServiceCredential Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá nebo nastaví hodnotu, která označuje, zda je přihlašovací údaje služby zřízeny v klientovi mimo pásmo nebo je získán ze služby prostřednictvím procesu vyjednávání.
public:
property bool NegotiateServiceCredential { bool get(); void set(bool value); };
public bool NegotiateServiceCredential { get; set; }
member this.NegotiateServiceCredential : bool with get, set
Public Property NegotiateServiceCredential As Boolean
Hodnota vlastnosti
true
je-li přihlašovací údaje služby získány prostřednictvím procesu vyjednávání; false
v opačném případě . Výchozí formát je true
.
Příklady
Následující kód ukazuje, jak získat přístup k této vlastnosti a nastavit ji.
WSHttpBinding binding = new WSHttpBinding();
binding.Security.Mode = SecurityMode.Message;
binding.Security.Message.ClientCredentialType =
MessageCredentialType.UserName;
binding.Security.Message.NegotiateServiceCredential = false;
CalculatorClient CalculatorClient = new CalculatorClient("myBinding");
CalculatorClient.ClientCredentials.ServiceCertificate.
SetDefaultCertificate("Al", StoreLocation.CurrentUser, StoreName.My);
Dim binding As New WSHttpBinding()
binding.Security.Mode = SecurityMode.Message
binding.Security.Message.ClientCredentialType = _
MessageCredentialType.UserName
binding.Security.Message.NegotiateServiceCredential = False
Dim CalculatorClient As New CalculatorClient("myBinding")
CalculatorClient.ClientCredentials.ServiceCertificate. _
SetDefaultCertificate("Al", StoreLocation.CurrentUser, StoreName.My)
Poznámky
Nastavení této vlastnosti na true
, vyžaduje, aby klient a služba WS-Trust a WS-SecureConversation. Nastavení této vlastnosti false
nevyžaduje podporu WS-Trust ani WS-SecureConversation.
Pro anonymní typy přihlašovacích údajů klienta, uživatelské jméno nebo certifikát, nastavení této vlastnosti false
znamená, že certifikát služby musí být k dispozici v klientovi mimo pásmo a že klient musí zadat certifikát služby, který se má použít.
V případě Windows přihlašovacích údajů nastavte tuto vlastnost tak, aby false
způsobila ověřování na KerberosToken
základě . To vyžaduje, aby klient a služba byly součástí domény Kerberos. Tento režim je interoperabilní se zásobníky SOAP, které implementují profil tokenu Kerberos z OASIS. Nastavením této vlastnosti způsobíte true
vyjednávání protokolu SOAP, které tuneluje výměnu SPNego přes zprávy SOAP. Tento režim není interoperabilní.
Tato vlastnost označuje, zda se přihlašovací údaje služby vyjednávají automaticky mezi klientem a službou. Pokud je true
tato vlastnost , dojde k takovému vyjednávání. Pokud je false
tato vlastnost , musí být přihlašovací údaje služby zadány v klientovi před komunikací se službou.
Pokud je tato vlastnost nastavená na false
hodnotu a vazba je nakonfigurovaná tak, aby používala Windows jako typ přihlašovacích údajů klienta, musí být účet služby přidružený k hlavnímu názvu služby (SPN). Provedete to tak, že službu spustíte pod účtem NETWORK SERVICE nebo účtem LOCAL SYSTEM. Případně pomocí nástroje SetSpn.exe vytvořte hlavní název služby (SPN) pro účet služby. V obou případech musí klient použít správný hlavní název služby (SPN) v elementu <servicePrincipalName> nebo pomocí konstruktoru EndpointAddress . Další informace najdete v tématu Identita a ověřování služby.