IntranetZoneCredentialPolicy.ShouldSendCredential 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
클라이언트의 자격 증명이 Boolean를 사용하여 이루어진 리소스 요청과 함께 전송되는지 여부를 나타내는 WebRequest을 반환합니다.
public:
virtual bool ShouldSendCredential(Uri ^ challengeUri, System::Net::WebRequest ^ request, System::Net::NetworkCredential ^ credential, System::Net::IAuthenticationModule ^ authModule);
public virtual bool ShouldSendCredential (Uri challengeUri, System.Net.WebRequest request, System.Net.NetworkCredential credential, System.Net.IAuthenticationModule authModule);
abstract member ShouldSendCredential : Uri * System.Net.WebRequest * System.Net.NetworkCredential * System.Net.IAuthenticationModule -> bool
override this.ShouldSendCredential : Uri * System.Net.WebRequest * System.Net.NetworkCredential * System.Net.IAuthenticationModule -> bool
Public Overridable Function ShouldSendCredential (challengeUri As Uri, request As WebRequest, credential As NetworkCredential, authModule As IAuthenticationModule) As Boolean
매개 변수
- request
- WebRequest
요청할 리소스를 나타내는 WebRequest입니다.
- credential
- NetworkCredential
이 메서드가 true
를 반환하는 경우 요청과 함께 보낼 NetworkCredential입니다.
- authModule
- IAuthenticationModule
인증이 필요한 경우 인증을 수행할 IAuthenticationModule입니다.
반환
요청된 리소스가 요청을 하는 클라이언트와 같은 도메인에 있으면 true
이고, 그렇지 않으면 false
입니다.
구현
예제
다음 코드 예제에서 파생 하는 방법을 보여 줍니다 IntranetZoneCredentialPolicy 자격 증명을 기본 인증을 사용 하 여 보안 하이퍼텍스트 전송 프로토콜 (HTTPS)을 사용 하는 요청을 보낼 수 있도록 합니다. HTTPS 및 기본 인증을 사용 하 여, 사용자 암호를 네트워크를 통해 전송 되기 전에 암호화 됩니다.
// The following class allows credentials to be sent if they are for requests for resources
// in the same domain, or if the request uses the HTTPSscheme and basic authentication is
// required.
public ref class HttpsBasicCredentialPolicy: public IntranetZoneCredentialPolicy
{
public:
HttpsBasicCredentialPolicy(){}
virtual bool ShouldSendCredential( Uri^ challengeUri, WebRequest^ request, NetworkCredential^ credential, IAuthenticationModule^ authModule ) override
{
Console::WriteLine( L"Checking custom credential policy for HTTPS and basic." );
bool answer = IntranetZoneCredentialPolicy::ShouldSendCredential( challengeUri, request, credential, authModule );
if ( answer == true )
{
Console::WriteLine( L"Sending credential for intranet resource." );
return answer;
}
// Determine whether the base implementation returned false for basic and HTTPS.
if ( request->RequestUri->Scheme == Uri::UriSchemeHttps && authModule->AuthenticationType->Equals( L"Basic" ) )
{
Console::WriteLine( L"Sending credential for HTTPS and basic." );
return true;
}
return false;
}
};
// The following class allows credentials to be sent if they are for requests for resources
// in the same domain, or if the request uses the HTTPSscheme and basic authentication is
// required.
public class HttpsBasicCredentialPolicy: IntranetZoneCredentialPolicy
{
public HttpsBasicCredentialPolicy()
{
}
public override bool ShouldSendCredential(Uri challengeUri,
WebRequest request,
NetworkCredential credential,
IAuthenticationModule authModule)
{
Console.WriteLine("Checking custom credential policy for HTTPS and basic.");
bool answer = base.ShouldSendCredential(challengeUri, request, credential, authModule);
if (answer == true)
{
Console.WriteLine("Sending credential for intranet resource.");
return answer;
}
// Determine whether the base implementation returned false for basic and HTTPS.
if (request.RequestUri.Scheme == Uri.UriSchemeHttps &&
authModule.AuthenticationType == "Basic")
{
Console.WriteLine("Sending credential for HTTPS and basic.");
return true;
}
return false;
}
}
설명
애플리케이션이이 메서드를 직접 호출 하지 마십시오 에 의해 호출 되는 IAuthenticationModule 는 서버를 사용 하 여 인증을 수행 합니다. 이 메서드가 반환 하는 경우 false
, IAuthenticationModule 서버에 클라이언트를 인증 하지 것입니다.
자격 증명을 지정 하거나 사용 하는 요청에 대해서만이 메서드는 WebProxy 자격 증명을 지정 하는 개체입니다.
적용 대상
.NET