AuthenticationLevel Enumeración
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í.
Especifica los requisitos del cliente para la autenticación y suplantación al utilizar la clase WebRequest y las clases derivadas para solicitar un recurso.
public enum class AuthenticationLevel
public enum AuthenticationLevel
type AuthenticationLevel =
Public Enum AuthenticationLevel
- Herencia
Campos
MutualAuthRequested | 1 | El cliente y el servidor se deben autenticar. No se produce ningún error en la solicitud si el servidor no está autenticado. Para determinar si se realizó una autenticación mutua, compruebe el valor de la propiedad IsMutuallyAuthenticated. |
MutualAuthRequired | 2 | El cliente y el servidor se deben autenticar. Si el servidor no se autentica, la aplicación recibirá una excepción IOException con una excepción interna ProtocolViolationException que indica que se ha producido un error en la autenticación mutua. |
None | 0 | No se necesita autenticación ni para el cliente ni para el servidor. |
Ejemplos
En el ejemplo de código siguiente se muestra cómo establecer las marcas de autenticación para una solicitud.
// The following example uses the System, System.Net,
// and System.IO namespaces.
static void RequestMutualAuth( Uri^ resource )
{
// Create a new HttpWebRequest object for the specified resource.
WebRequest^ request = dynamic_cast<WebRequest^>(WebRequest::Create( resource ));
// Request mutual authentication.
request->AuthenticationLevel = AuthenticationLevel::MutualAuthRequested;
// Supply client credentials.
request->Credentials = CredentialCache::DefaultCredentials;
HttpWebResponse^ response = dynamic_cast<HttpWebResponse^>(request->GetResponse());
// Determine whether mutual authentication was used.
Console::WriteLine( L"Is mutually authenticated? {0}", response->IsMutuallyAuthenticated );
// Read and display the response.
Stream^ streamResponse = response->GetResponseStream();
StreamReader^ streamRead = gcnew StreamReader( streamResponse );
String^ responseString = streamRead->ReadToEnd();
Console::WriteLine( responseString );
// Close the stream objects.
streamResponse->Close();
streamRead->Close();
// Release the HttpWebResponse.
response->Close();
}
// The following example uses the System, System.Net,
// and System.IO namespaces.
public static void RequestMutualAuth(Uri resource)
{
// Create a new HttpWebRequest object for the specified resource.
WebRequest request=(WebRequest) WebRequest.Create(resource);
// Request mutual authentication.
request.AuthenticationLevel = AuthenticationLevel.MutualAuthRequested;
// Supply client credentials.
request.Credentials = CredentialCache.DefaultCredentials;
HttpWebResponse response = (HttpWebResponse) request.GetResponse();
// Determine whether mutual authentication was used.
Console.WriteLine("Is mutually authenticated? {0}", response.IsMutuallyAuthenticated);
// Read and display the response.
Stream streamResponse = response.GetResponseStream();
StreamReader streamRead = new StreamReader(streamResponse);
string responseString = streamRead.ReadToEnd();
Console.WriteLine(responseString);
// Close the stream objects.
streamResponse.Close();
streamRead.Close();
// Release the HttpWebResponse.
response.Close();
}
Comentarios
Los valores de esta enumeración se usan para establecer la AuthenticationLevel propiedad .
Nota
Los valores MutualAuthRequired y MutualAuthRequested son relevantes para la autenticación Kerberos. La autenticación Kerberos se puede admitir directamente o se puede utilizar si se utiliza el protocolo de seguridad Negotiate para seleccionar el protocolo de seguridad activo. Para obtener más información sobre los protocolos de autenticación, consulte Autenticación de Internet.