Aracılığıyla paylaş


UserNamePasswordServiceCredential.UserNamePasswordValidationMode Özellik

Tanım

Kullanıcı adını ve parolayı doğrulama yöntemini alır veya ayarlar.

public:
 property System::ServiceModel::Security::UserNamePasswordValidationMode UserNamePasswordValidationMode { System::ServiceModel::Security::UserNamePasswordValidationMode get(); void set(System::ServiceModel::Security::UserNamePasswordValidationMode value); };
public System.ServiceModel.Security.UserNamePasswordValidationMode UserNamePasswordValidationMode { get; set; }
member this.UserNamePasswordValidationMode : System.ServiceModel.Security.UserNamePasswordValidationMode with get, set
Public Property UserNamePasswordValidationMode As UserNamePasswordValidationMode

Özellik Değeri

içindeki UserNamePasswordValidationModenumaralandırmasından bir değer.

Örnekler

Aşağıdaki örnek bu özelliğin değerini alır.

// Create a service host.
Uri httpUri = new Uri("http://localhost/Calculator");
ServiceHost sh = new ServiceHost(typeof(Calculator), httpUri);

// Create a binding that uses a username/password credential.
WSHttpBinding b = new WSHttpBinding(SecurityMode.Message);
b.Security.Message.ClientCredentialType = MessageCredentialType.UserName;

// Add an endpoint.
sh.AddServiceEndpoint(typeof(ICalculator), b, "UserNamePasswordCalculator");

// Get a reference to the UserNamePasswordServiceCredential object.
UserNamePasswordServiceCredential unpCredential =
    sh.Credentials.UserNameAuthentication;
// Print out values.
Console.WriteLine("IncludeWindowsGroup: {0}",
    unpCredential.IncludeWindowsGroups);
Console.WriteLine("UserNamePasswordValidationMode: {0}",
    unpCredential.UserNamePasswordValidationMode);
Console.WriteLine("CachedLogonTokenLifetime.Minutes: {0}",
    unpCredential.CachedLogonTokenLifetime.Minutes );
Console.WriteLine("CacheLogonTokens: {0}",
    unpCredential.CacheLogonTokens );
Console.WriteLine("MaxCachedLogonTokens: {0}",
    unpCredential.MaxCachedLogonTokens );

Console.ReadLine();
' Create a service host.
Dim httpUri As New Uri("http://localhost/Calculator")
Dim sh As New ServiceHost(GetType(Calculator), httpUri)

' Create a binding that uses a username/password credential.
Dim b As New WSHttpBinding(SecurityMode.Message)
b.Security.Message.ClientCredentialType = MessageCredentialType.UserName

' Add an endpoint.
sh.AddServiceEndpoint(GetType(ICalculator), b, "UserNamePasswordCalculator")

' Get a reference to the UserNamePasswordServiceCredential object.
Dim unpCredential As UserNamePasswordServiceCredential = sh.Credentials.UserNameAuthentication
' Print out values.
Console.WriteLine("IncludeWindowsGroup: {0}", unpCredential.IncludeWindowsGroups)
Console.WriteLine("UserNamePasswordValidationMode: {0}", unpCredential.UserNamePasswordValidationMode)
Console.WriteLine("CachedLogonTokenLifetime.Minutes: {0}", unpCredential.CachedLogonTokenLifetime.Minutes)
Console.WriteLine("CacheLogonTokens: {0}", unpCredential.CacheLogonTokens)
Console.WriteLine("MaxCachedLogonTokens: {0}", unpCredential.MaxCachedLogonTokens)

Console.ReadLine()

Açıklamalar

Olası değerler şunlardır:

Bu özellik olarak ayarlanırsa Custom, hizmet tarafından döndürülen CustomUserNamePasswordValidator nesnesini kullanarak gelen iletilerdeki kullanıcı adlarını ve parolaları doğrular.

Not

Bir WCF hizmeti, aktarım düzeyi güvenlik kullanılarak Internet Information Services'te (IIS) barındırıldığında ve UserNamePasswordValidationMode özelliği olarak Customayarlandığında, özel kimlik doğrulama düzeni Windows kimlik doğrulamasının bir alt kümesini kullanır. Bunun nedeni, bu senaryoda IIS'nin WCF'nin özel kimlik doğrulayıcıyı çağırmadan önce Windows kimlik doğrulamasını gerçekleştirmesidir.

Bu özelliğin değeri olarak ayarlandığında MembershipProvider, özelliğini ayarlayarak üyelik sağlayıcısını MembershipProvider belirtin ve ardından özellik tarafından MembershipProvider belirtilen üyelik sağlayıcısı örneği gelen iletilerdeki kullanıcı adını ve parolayı doğrulamak için kullanılır.

Şunlara uygulanır