AuthenticationSchemes Enumeração
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Especifica os protocolos de autenticação.
Essa enumeração dá suporte a uma combinação bit a bit dos valores de membro.
public enum class AuthenticationSchemes
[System.Flags]
public enum AuthenticationSchemes
[<System.Flags>]
type AuthenticationSchemes =
Public Enum AuthenticationSchemes
- Herança
- Atributos
Campos
Anonymous | 32768 | Especifica autenticação anônima. |
Basic | 8 | Especifica autenticação básica. |
Digest | 1 | Especifica a autenticação Digest. |
IntegratedWindowsAuthentication | 6 | Especifica autenticação do Windows. |
Negotiate | 2 | Negocia com o cliente para determinar o esquema de autenticação. Se o cliente e o servidor oferecem suporte ao Kerberos, ele é usado; caso contrário, o NTLM é usado. |
None | 0 | Nenhuma autenticação é permitida. Um cliente solicita um HttpListener objeto com esse sinalizador definido sempre receberá status 403 Proibido. Use esse sinalizador quando um recurso nunca deve ser atendido para um cliente. |
Ntlm | 4 | Especifica autenticação NTLM. |
Exemplos
O exemplo de código a seguir demonstra o uso do valor de enumeração Negotiate para especificar que os clientes são autenticados usando o protocolo de segurança Negotiate.
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
Comentários
Essa enumeração é usada para especificar o método usado para autenticar solicitações de cliente que estão sendo processadas por HttpListener objetos.
Importante
A autenticação básica requer a troca de uma senha e, portanto, deve ser evitada, exceto no caso de conexões criptografadas e seguras.
Para obter informações adicionais sobre a autenticação básica e digest, consulte RFC2617 – Autenticação HTTP: Autenticação Básica e Digest. Este documento está disponível em https://www.rfc-editor.org.