EndpointIdentity.CreateSpnIdentity(String) Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee maakt u een SPN-identiteit (Server Principal Name) met een opgegeven naam.
public:
static System::ServiceModel::EndpointIdentity ^ CreateSpnIdentity(System::String ^ spnName);
public static System.ServiceModel.EndpointIdentity CreateSpnIdentity(string spnName);
static member CreateSpnIdentity : string -> System.ServiceModel.EndpointIdentity
Public Shared Function CreateSpnIdentity (spnName As String) As EndpointIdentity
Parameters
- spnName
- String
De naam voor de SPN-identiteit.
Retouren
Een SPN EndpointIdentity die is gekoppeld aan de opgegeven spnName.
Uitzonderingen
spnName is null.
Voorbeelden
De volgende code laat zien hoe u deze methode aanroept.
// Create the service host.
ServiceHost myServiceHost = new ServiceHost(typeof(Calculator));
// Create the binding.
WSHttpBinding binding = new WSHttpBinding();
binding.Security.Mode = SecurityMode.Message;
binding.Security.Message.ClientCredentialType =
MessageCredentialType.Windows;
// Disable credential negotiation and establishment of the
// security context.
binding.Security.Message.NegotiateServiceCredential = false;
binding.Security.Message.EstablishSecurityContext = false;
// Create a URI for the endpoint address.
Uri httpUri = new Uri("http://localhost/Calculator");
// Create the EndpointAddress with the SPN for the Identity.
EndpointAddress ea = new EndpointAddress(httpUri,
EndpointIdentity.CreateSpnIdentity("service_spn_name"));
// Get the contract from the ICalculator interface (not shown here).
// See the sample applications for an example of the ICalculator.
ContractDescription contract = ContractDescription.GetContract(
typeof(ICalculator));
// Create a new ServiceEndpoint.
ServiceEndpoint se = new ServiceEndpoint(contract, binding, ea);
// Add the service endpoint to the service.
myServiceHost.Description.Endpoints.Add(se);
// Open the service.
myServiceHost.Open();
Console.WriteLine("Listening...");
Console.ReadLine();
// Close the service.
myServiceHost.Close();
Opmerkingen
Een beveiligde WCF-client die verbinding maakt met een eindpunt met deze identiteit, gebruikt de SPN bij het uitvoeren van SSPI-verificatie met het eindpunt.
Met deze statische methode maakt u een exemplaar van SpnEndpointIdentity door de constructor aan te roepen, SpnEndpointIdentitymet behulp van spnName de invoerparameter.
Als spnName wordt opgegeven met een lege tekenreeks, valt de verificatie zo mogelijk terug van Kerberos naar NTLM. Als AllowNtlm dat het is false, mislukt de verificatie.