IServerSecurity::QueryBlanket 메서드(objidlbase.h)
서버의 메서드 중 하나를 호출한 클라이언트에 대한 정보를 검색합니다.
구문
HRESULT QueryBlanket(
[out] DWORD *pAuthnSvc,
[out] DWORD *pAuthzSvc,
[out] OLECHAR **pServerPrincName,
[out] DWORD *pAuthnLevel,
[out] DWORD *pImpLevel,
[out] void **pPrivs,
[in, out] DWORD *pCapabilities
);
매개 변수
[out] pAuthnSvc
현재 인증 서비스에 대한 포인터입니다. 인증 서비스 상수 목록에서 가져온 단일 값입니다. 호출자가 NULL을 지정하면 현재 인증 서비스가 검색되지 않습니다.
[out] pAuthzSvc
현재 권한 부여 서비스를 수신하는 변수에 대한 포인터입니다. 권한 부여 상수 목록에서 단일 값이 됩니다. 호출자가 NULL을 지정하면 현재 권한 부여 서비스가 검색되지 않습니다.
[out] pServerPrincName
현재 보안 주체 이름입니다. 문자열은 CoTaskMemAlloc을 사용하여 호출 수신자가 할당하며 , CoTaskMemFree를 사용하여 호출자가 해제해야 합니다. 기본적으로 Schannel 보안 주체 이름은 msstd 형식입니다. EOAC_MAKE_FULLSIC pCapabilities 매개 변수에 지정된 경우 fullsic 양식이 반환됩니다. msstd 및 fullsic 양식에 대한 자세한 내용은 보안 주체 이름을 참조하세요. 호출자가 NULL을 지정하면 현재 보안 주체 이름이 검색되지 않습니다.
[out] pAuthnLevel
현재 인증 수준을 수신하는 변수에 대한 포인터입니다. 인증 수준 상수 목록에서 가져온 단일 값입니다. 호출자가 NULL을 지정하면 현재 인증 수준이 검색되지 않습니다.
[out] pImpLevel
이 매개 변수는 NULL이어야 합니다.
[out] pPrivs
클라이언트 애플리케이션에 대한 권한 정보입니다. 핸들이 참조하는 구조체의 형식은 인증 서비스에 따라 달라집니다. 애플리케이션은 메모리를 쓰거나 해제해서는 안 됩니다. 정보는 현재 호출 기간 동안만 유효합니다. NTLMSSP 및 Kerberos의 경우 SEC_WINNT_AUTH_IDENTITY 또는 SEC_WINNT_AUTH_IDENTITY_EX 구조입니다. Schannel의 경우 클라이언트의 인증서를 나타내는 CERT_CONTEXT 구조입니다. 클라이언트에 인증서가 없으면 NULL 이 반환됩니다. 호출자가 NULL을 지정하면 현재 권한 정보가 검색되지 않습니다.
[in, out] pCapabilities
호출의 기능입니다. Schannel이 인증 서비스인 경우 보안 주체 이름을 전체 형식으로 반환하도록 요청하려면 호출자가 이 매개 변수에서 EOAC_MAKE_FULLSIC 플래그를 설정할 수 있습니다. 호출자가 NULL을 지정하면 현재 기능이 검색되지 않습니다.
반환 값
이 메서드는 표준 반환 값 E_INVALIDARG, E_OUTOFMEMORY 및 S_OK 반환할 수 있습니다.
설명
QueryBlanket 은 서버에서 메서드 중 하나를 호출한 클라이언트에 대해 알아내는 데 사용됩니다. 현재 스레드에서 현재 호출에 대한 IServerSecurity 에 대한 포인터를 얻으려면 CoGetCallContext를 호출하고 IID_IServerSecurity 지정합니다. 이 인터페이스 포인터는 호출 기간 동안 호출과 동일한 아파트에서만 사용할 수 있습니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 2000 Professional[데스크톱 앱만] |
지원되는 최소 서버 | Windows 2000 Server[데스크톱 앱만] |
대상 플랫폼 | Windows |
헤더 | objidlbase.h(ObjIdl.h 포함) |