AuthenticationSchemes Enumeración

Definición

Especifica los protocolos de autenticación.Specifies protocols for authentication.

Esta enumeración tiene el atributo FlagsAttribute, que permite una combinación bit a bit de sus valores de miembro.

public enum class AuthenticationSchemes
[System.Flags]
public enum AuthenticationSchemes
type AuthenticationSchemes = 
Public Enum AuthenticationSchemes
Herencia
AuthenticationSchemes
Atributos

Campos

Anonymous 32768

Especifica la autenticación anónima.Specifies anonymous authentication.

Basic 8

Especifica la autenticación básica.Specifies basic authentication.

Digest 1

Especifica la autenticación implícita.Specifies digest authentication.

IntegratedWindowsAuthentication 6

Especifica la autenticación de Windows.Specifies Windows authentication.

Negotiate 2

Negocia con el cliente para determinar el esquema de autenticación.Negotiates with the client to determine the authentication scheme. Si cliente y el servidor son compatibles con Kerberos, se utiliza; de lo contrario, se utiliza NTLM.If both client and server support Kerberos, it is used; otherwise, NTLM is used.

None 0

No se permite ninguna autenticación.No authentication is allowed. Un cliente que solicite un objeto HttpListener con este conjunto de marcadores siempre recibe un estado 403 Prohibido.A client requesting an HttpListener object with this flag set will always receive a 403 Forbidden status. Utilice este marcador si un recurso nunca se debe poner a disposición de un cliente.Use this flag when a resource should never be served to a client.

Ntlm 4

Especifica la autenticación NTLM.Specifies NTLM authentication.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar el valor de enumeración Negotiate para especificar que los clientes se autentiquen mediante el protocolo de seguridad Negotiate.The following code example demonstrates using the Negotiate enumeration value to specify that clients are authenticated using the Negotiate security protocol.

Console.WriteLine("Listening for {0} prefixes...", listener.Prefixes.Count);
HttpListenerContext context = listener.GetContext();
HttpListenerRequest request = context.Request;
Console.WriteLine("Received a request.");
// This server requires a valid client certificate
// for requests that are not sent from the local computer.

// Did the client omit the certificate or send an invalid certificate?
if (request.IsAuthenticated &&
    request.GetClientCertificate() == null || 
    request.ClientCertificateError != 0)
{
    // Send a 403 response.
    HttpListenerResponse badCertificateResponse = context.Response ;
    SendBadCertificateResponse(badCertificateResponse);
    Console.WriteLine("Client has invalid certificate.");
    continue;
}
Console.WriteLine("Listening for {0} prefixes...", listener.Prefixes.Count)
Dim context As HttpListenerContext = listener.GetContext()
Dim request As HttpListenerRequest = context.Request
Console.WriteLine("Received a request.")
' This server requires a valid client certificate
' for requests that are not sent from the local computer.

' Did the client omit the certificate or send an invalid certificate?
If request.IsAuthenticated AndAlso request.GetClientCertificate() Is Nothing OrElse request.ClientCertificateError <> 0 Then
    ' Send a 403 response.
    Dim badCertificateResponse As HttpListenerResponse = context.Response
    SendBadCertificateResponse(badCertificateResponse)
    Console.WriteLine("Client has invalid certificate.")
    Continue Do
End If

Comentarios

Esta enumeración se usa para especificar el método que se usa para autenticar las solicitudes HttpListener de cliente que se procesan mediante objetos.This enumeration is used to specify the method used to authenticate client requests being processed by HttpListener objects.

Importante

La autenticación básica requiere el intercambio de una contraseña y, por lo tanto, debe evitarse, excepto en el caso de conexiones seguras cifradas.Basic authentication requires the exchange of a password and should therefore be avoided except in the case of secure, encrypted connections.

Para obtener información adicional sobre la autenticación básica e implícita , vea RFC2617-http Authentication: Basic and Digest Authentication (Autenticación HTTP: Autenticación básica e implícita).For additional information on basic and digest authentication, see RFC2617 - HTTP Authentication: Basic and Digest Authentication. Este documento está disponible en https://www.rfc-editor.org.This document is available at https://www.rfc-editor.org.

Se aplica a