다음을 통해 공유


ISecurityCallContext::IsCallerInRole 메서드(comsvcs.h)

직접 호출자가 지정된 역할에 있는지 여부를 확인합니다.

구문

HRESULT IsCallerInRole(
  [in]  BSTR         bstrRole,
  [out] VARIANT_BOOL *pfInRole
);

매개 변수

[in] bstrRole

역할의 이름입니다.

[out] pfInRole

호출자가 지정된 역할에 있으면 TRUE이고, 그렇지 않은 경우 FALSE입니다. 지정된 역할이 애플리케이션에 대해 정의되지 않은 경우 FALSE 가 반환됩니다. 역할 기반 보안을 사용할 수 없는 경우 이 매개 변수는 TRUE 로 설정됩니다.

반환 값

이 메서드는 다음 값뿐만 아니라 표준 반환 값 E_INVALIDARG, E_OUTOFMEMORY, E_UNEXPECTED 및 E_FAIL 반환할 수 있습니다.

반환 코드 Description
S_OK
bstrRole 매개 변수에 지정된 역할은 인식된 역할이며 pfIsInRole 매개 변수에 반환된 부울 결과는 호출자가 해당 역할에 있는지 여부를 나타냅니다.
CONTEXT_E_ROLENOTFOUND
bstrRole 매개 변수에 지정된 역할이 없습니다.

설명

호출자가 지정된 역할의 멤버가 아닌 한 실행해서는 안 되는 코드 섹션에 대한 액세스를 제한하려면 이 메서드를 사용합니다. Windows 그룹 및 사용자는 구성 요소 서비스 관리 도구를 사용하여 애플리케이션의 역할에 할당됩니다. 역할에 대한 자세한 내용은 역할 기반 보안을 참조하세요.

IsCallerInRole 은 현재 실행 중인 메서드의 직접 호출자에만 적용됩니다. IsCallerInRole 은 현재 메서드가 호출된 호출 시퀀스의 다른 호출자에게는 적용되지 않습니다. 그러나 get_Item 속성 메서드를 사용하여 보안 호출 컨텍스트 개체의 Callers 속성을 가져와서 시퀀스에서 다른 호출자에 대한 정보를 가져올 수 있습니다.

IsCallerInRole은 역할 기반 보안을 사용하도록 설정하지 않은 경우 TRUE이므로 IsCallerInRole을 호출하기 전에 IsSecurityEnabled를 호출하여 IsCallerInRole이 유용한 정보를 반환하도록 하는 것이 좋습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 comsvcs.h

추가 정보

ISecurityCallContext

프로그래밍 방식 구성 요소 보안

역할 기반 보안