WebRequest.AuthenticationLevel Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá nebo nastaví hodnoty označující úroveň ověřování a zosobnění použité pro tento požadavek.
public:
property System::Net::Security::AuthenticationLevel AuthenticationLevel { System::Net::Security::AuthenticationLevel get(); void set(System::Net::Security::AuthenticationLevel value); };
public System.Net.Security.AuthenticationLevel AuthenticationLevel { get; set; }
member this.AuthenticationLevel : System.Net.Security.AuthenticationLevel with get, set
Public Property AuthenticationLevel As AuthenticationLevel
Hodnota vlastnosti
Bitové kombinace AuthenticationLevel hodnot. Výchozí hodnota je MutualAuthRequested.
Při vzájemném ověřování klient i server předkládají přihlašovací údaje k vytvoření své identity. Hodnoty MutualAuthRequired a MutualAuthRequested jsou relevantní pro ověřování protokolem Kerberos. Ověřování protokolem Kerberos je možné podporovat přímo, nebo je možné ho použít, pokud se k výběru vlastního protokolu zabezpečení používá protokol zabezpečení Negotiate. Další informace o ověřovacích protokolech najdete v tématu Ověřování v internetu.
Pokud chcete zjistit, jestli došlo k vzájemnému ověřování, zkontrolujte IsMutuallyAuthenticated vlastnost.
Pokud zadáte hodnotu příznaku MutualAuthRequired ověřování a vzájemné ověřování nenastane, aplikace obdrží IOException výjimku s ProtocolViolationException vnitřní výjimkou označující, že vzájemné ověřování selhalo.
Příklady
Následující příklad kódu nastaví hodnotu této vlastnosti.
// 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();
}