ICredentialPolicy 인터페이스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
WebRequest와 이 클래스의 파생 클래스를 통한 리소스 요청에 사용할 자격 증명 정책을 정의합니다.
public interface class ICredentialPolicy
public interface ICredentialPolicy
type ICredentialPolicy = interface
Public Interface ICredentialPolicy
- 파생
예제
다음 코드 예제에서는 특정 호스트를 대상으로 하는 요청에 대해서만 자격 증명을 보낼 수 있도록 하는 이 인터페이스의 구현을 보여 줍니다.
public ref class SelectedHostsCredentialPolicy: public ICredentialPolicy
{
public:
SelectedHostsCredentialPolicy(){}
virtual bool ShouldSendCredential( Uri^ challengeUri, WebRequest^ request, NetworkCredential^ /*credential*/, IAuthenticationModule^ /*authModule*/ )
{
Console::WriteLine( L"Checking custom credential policy." );
if ( request->RequestUri->Host->Equals( L"www.contoso.com" ) || challengeUri->IsLoopback )
return true;
return false;
}
};
public class SelectedHostsCredentialPolicy: ICredentialPolicy
{
public SelectedHostsCredentialPolicy()
{
}
public virtual bool ShouldSendCredential(Uri challengeUri,
WebRequest request,
NetworkCredential credential,
IAuthenticationModule authModule)
{
Console.WriteLine("Checking custom credential policy.");
if (request.RequestUri.Host == "www.contoso.com" ||
challengeUri.IsLoopback)
return true;
return false;
}
}
설명
자격 증명 정책은 웹 페이지의 콘텐츠와 같은 네트워크 리소스에 대한 을 WebRequest 보낼 때 자격 증명을 보낼지 여부를 결정합니다. 자격 증명이 전송되는 경우 클라이언트 인증이 필요한 서버는 클라이언트의 자격 증명이 필요하다는 응답을 보내는 대신 요청을 받을 때 클라이언트를 인증하려고 시도할 수 있습니다. 이렇게 하면 서버로의 왕복이 절약되지만, 이 성능 향상은 네트워크를 통해 자격 증명을 보내는 데 내재된 보안 위험과 균형을 유지해야 합니다. 대상 서버에 클라이언트 인증이 필요하지 않은 경우 자격 증명을 보내지 않는 것이 가장 좋습니다.
참고
ICredentialPolicy 경우에 정책을 호출 되는 WebRequest 또는 WebProxy 연결 된 요청 되지 않는 자격 증명에 null
입니다. 이 정책 설정에 자격 증명을 지정 하지 않으면 하는 요청에 대 한 영향을 주지 않습니다.
AuthenticationManager.CredentialPolicy 속성을 사용하여 정책을 설정합니다ICredentialPolicy. 합니다 IAuthenticationModule 요청에 대 한 인증을 처리 하는 호출을 ShouldSendCredential 인증을 수행 하기 전에 메서드. 메서드가 를 반환 false
하는 경우 인증이 수행되지 않습니다.
ICredentialPolicy 정책에는의 모든 인스턴스에 영향을 줍니다. WebRequest 현재 애플리케이션 도메인에서 null이 아닌 자격 증명을 사용 합니다. 개별 요청에 대해 정책을 재정의할 수 없습니다.
메서드
ShouldSendCredential(Uri, WebRequest, NetworkCredential, IAuthenticationModule) |
Boolean 클래스의 인스턴스를 사용하여 리소스를 요청할 때 클라이언트의 자격 증명을 함께 보내는지 여부를 나타내는 WebRequest을 반환합니다. |
적용 대상
.NET