CoImpersonateClient 함수(combaseapi.h)
서버가 호출 기간 동안 현재 호출의 클라이언트를 가장할 수 있도록 합니다.
구문
HRESULT CoImpersonateClient();
반환 값
이 함수는 S_OK 포함하여 표준 반환 값을 지원합니다.
설명
이 메서드를 사용하면 서버가 호출 기간 동안 현재 호출의 클라이언트를 가장할 수 있습니다. CoRevertToSelf를 호출하지 않으면 COM이 자동으로 되돌아갑니다. 개체가 RPC_C_AUTHN_LEVEL_CONNECT 이상의 인증을 사용하여 호출되지 않는 한 이 함수는 실패합니다(RPC_C_AUTHN_LEVEL_NONE 제외한 모든 인증 수준임). 이 함수는 다음과 같은 일반적인 호출 시퀀스(제외된 오류 처리)를 캡슐화합니다.
CoGetCallContext(IID_IServerSecurity, (void**)&pss);
pss->ImpersonateClient();
pss->Release();
CoImpersonateClient는 현재 호출에 대한 데이터가 포함된 IServerSecurity의 instance 대한 포인터를 가져오고 ImpersonateClient 메서드를 호출한 다음 포인터를 해제하는 프로세스를 캡슐화합니다. CoRevertToSelf(또는 IServerSecurity::RevertToSelf)에 대한 한 번의 호출은 클라이언트를 가장하기 위한 호출 수를 실행 취소합니다.
요구 사항
지원되는 최소 클라이언트 | Windows 2000 Professional[데스크톱 앱만] |
지원되는 최소 서버 | Windows 2000 Server[데스크톱 앱만] |
대상 플랫폼 | Windows |
헤더 | combaseapi.h(Objbase.h 포함) |
라이브러리 | Ole32.lib |
DLL | Ole32.dll |