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

추가 정보

클 로킹

IServerSecurity::ImpersonateClient

가장

가장 및 비동기 호출

COM의 보안