WindowsServiceCredential.AllowAnonymousLogons Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene o establece un valor que indica si permitir el acceso de los usuarios anónimos (solo se aplica a la seguridad de nivel de mensaje).
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
Valor de propiedad
true
si se permite el acceso a los usuarios anónimos; de lo contrario, false
. De manera predeterminada, es false
.
Ejemplos
El código siguiente muestra cómo obtener esta propiedad.
// 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()
Comentarios
Al utilizar las credenciales del cliente de Windows en un enlace, el sistema no permite de forma predeterminada el acceso anónimo. Esto significa que sólo los usuarios del dominio o grupo de trabajo autenticados están autorizados a tener acceso al sistema. Sin embargo, en ciertos casos es aceptable que los usuarios anónimos no autenticados tengan acceso al servicio. En este caso, puede establecer esta propiedad como true
para permitir a los clientes anónimos llamar al servicio. Un servicio que habilita la autenticación anónima está suavizando significativamente los requisitos de seguridad, por lo que esta configuración se debería utilizar con precaución.
Tenga en cuenta que esta propiedad no se aplica a los escenarios de seguridad de transporte y se aplica sólo cuando el enlace subyacente utiliza la seguridad de mensajes para proteger los mensajes. Si se utiliza la seguridad de transporte de Windows, esta propiedad no se aplica.