Udostępnij za pośrednictwem


WindowsServiceCredential.AllowAnonymousLogons Właściwość

Definicja

Pobiera lub ustawia wartość wskazującą, czy zezwolić anonimowym użytkownikom na dostęp (dotyczy tylko zabezpieczeń na poziomie komunikatów).

public:
 property bool AllowAnonymousLogons { bool get(); void set(bool value); };
public bool AllowAnonymousLogons { get; set; }
member this.AllowAnonymousLogons : bool with get, set
Public Property AllowAnonymousLogons As Boolean

Wartość właściwości

true jeśli użytkownicy anonimowi mają dozwolony dostęp; w przeciwnym razie , false. Wartość domyślna to false.

Przykłady

Poniższy kod pokazuje, jak uzyskać tę właściwość.

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

// Create a binding that uses a WindowsServiceCredential.
WSHttpBinding b = new WSHttpBinding(SecurityMode.Message);
b.Security.Message.ClientCredentialType = MessageCredentialType.Windows;

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

// Get a reference to the WindowsServiceCredential object.
WindowsServiceCredential winCredential =
    sh.Credentials.WindowsAuthentication;
// Print out values.
Console.WriteLine("IncludeWindowsGroup: {0}",
    winCredential.IncludeWindowsGroups);
Console.WriteLine("UserNamePasswordValidationMode: {0}",
    winCredential.AllowAnonymousLogons);

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 WindowsServiceCredential.
Dim b As New WSHttpBinding(SecurityMode.Message)
b.Security.Message.ClientCredentialType = MessageCredentialType.Windows

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

' Get a reference to the WindowsServiceCredential object.
Dim winCredential As WindowsServiceCredential = sh.Credentials.WindowsAuthentication
' Print out values.
Console.WriteLine("IncludeWindowsGroup: {0}", winCredential.IncludeWindowsGroups)
Console.WriteLine("UserNamePasswordValidationMode: {0}", winCredential.AllowAnonymousLogons)

Console.ReadLine()

Uwagi

W przypadku korzystania z poświadczeń klienta systemu Windows w powiązaniu system domyślnie nie zezwala na dostęp anonimowy. Oznacza to, że w systemie są dozwolone tylko uwierzytelnieni użytkownicy domeny lub grupy roboczej. Jednak w niektórych przypadkach dopuszczalne jest, aby anonimowi, nieuwierzytelnieni użytkownicy uzyskiwali dostęp do usługi. W takim przypadku można ustawić tę właściwość tak, aby true umożliwić anonimowym klientom wywoływanie usługi. Usługa, która umożliwia uwierzytelnianie anonimowe, znacznie poluzuje wymagania dotyczące zabezpieczeń, dlatego to ustawienie powinno być używane ostrożnie.

Należy pamiętać, że ta właściwość nie ma zastosowania do scenariuszy zabezpieczeń transportu i ma zastosowanie tylko wtedy, gdy zabezpieczenia komunikatów są używane przez bazowe powiązanie w celu zabezpieczenia komunikatów. Jeśli są używane zabezpieczenia transportu systemu Windows, ta właściwość nie ma zastosowania.

Dotyczy