ClaimsPrincipalPermission.Demand 메서드

정의

현재 인스턴스와 연결된 리소스 작업 쌍에 대한 권한이 현재 주체에 부여되었는지 여부를 확인합니다.

public:
 virtual void Demand();
public void Demand ();
abstract member Demand : unit -> unit
override this.Demand : unit -> unit
Public Sub Demand ()

구현

예외

현재 보안 주체는 ClaimsPrincipal에서 할당할 수 없습니다.

또는

구성된 ClaimsAuthorizationManager가 없는 경우

권한 부여 검사에 실패했습니다.

예제

다음 예제에서는 사용 하 여 리소스를 보호 하는 방법의 Demand 메서드. 구성 된 클레임 인증 관리자는 지정 된 리소스 및 작업에 대 한 현재 보안 주체를 평가 하려면 호출 됩니다. 현재 보안 주체는 지정된 된 리소스에서 지정된 된 작업에 대 한 권한이 없는 경우는 SecurityException throw 되 고, 그렇지 않으면 실행이 진행 됩니다.

//
// Method 2. Programmatic check using the permission class
// Follows model found at http://msdn.microsoft.com/library/system.security.permissions.principalpermission.aspx
//
ClaimsPrincipalPermission cpp = new ClaimsPrincipalPermission("resource", "action");
cpp.Demand();

설명

이 인스턴스와 연결 된 리소스 작업 쌍 모두에 대 한 현재 보안 주체를 인증 해야 합니다 또는 SecurityException 예외가 throw 됩니다.

생성자는만 단일 리소스 및 작업에 사용 되지만 ClaimsPrincipalPermission 개체를 통해 결합 될 수는 UnionIntersect 메서드. 이러한 메서드를 통해 만든 사용 권한은 여러 리소스 작업 쌍을 포함할 수 있습니다.

Demand 메서드를 호출 하는 ClaimsAuthorizationManager.CheckAccess 메서드를 사용 하 여 구성 된 클레임 인증 관리자의는 AuthorizationContext 활성 사용자 구성 (CurrentPrincipal), 리소스 및 각 포함 리소스 작업 쌍에 대 한 작업 권한. 에 대 한는 Demand 활성 되려면 사용자 권한에 포함 된 리소스 작업 쌍의 모든 권한이 있어야 합니다.

적용 대상