IServerSecurity::QueryBlanket  5GU0DX

Called by the server to find out about the client that invoked one of its methods.

HRESULT QueryBlanket(

    DWORD*  pAuthnSvc,

//Pointer to the current authentication service

    DWORD*  pAuthzSvc,

//Pointer to the current authorization service

    OLECHAR **  pServerPrincNam,

//Pointer to the current principal name

    DWORD * pAuthnLevel,

//Pointer to the current authentication level

    DWORD * pImpLevel,

//Must be NULL

    RPC_AUTHZ_HANDLE *  pPrivs,

//Pointer to string identifying client

    DWORD **  pCapabilities

//Pointer to flags indicating further capabilities of the proxy

   );

 

 

Parameter

pAuthnSvc

[out] Pointer to the current authentication service. This will be a single value taken from the list of RPC_C_AUTHN_xxx7Z5JSI constants. May be NULL, in which case the current authentication service is not returned.

pAuthzSvc

[out] Pointer to the current authorization service. This will be a single value taken from the list of RPC_C_AUTHZ_xxx29VYICN constants. May be NULL, in which case the current authorization service is not returned.

pServerPrincName

[out] Pointer to the current principal name. The string will be allocated by the callee using CoTaskMemAlloc16SUUVR, and must be freed by the caller using CoTaskMemFree10DHDVF when they are done with it. May be NULL, in which case the principal name is not returned.

pAuthnLevel

[out] Pointer to the current authentication level. This will be a single value taken from the list of RPC_C_AUTHN_LEVEL_xxx1.DJZN2 constants. May be NULL, in which case the current authorization level is not returned.

pImpLevel

[out] Must be NULL; the current authentication level is not supplied.

pPrivs

[out] Pointer to a string identifying the client.  For NTLMSSP the string is of the form domain\user. This is not a copy, and so should not be modified or freed, and is not valid after the ORPC call completes.

pCapabilities

[out] Pointer to return flags indicating further capabilities of the call. Currently, no flags are defined for this parameter and it will only return EOAC_NONE. May be NULL, in which case the flags indicating further capabilities are not returned.

 

Return Values

This method supports the standard return values E_INVALIDARG and E_OUTOFMEMORY, as well as the following:

S_OK

Success.

 

Remarks

IServerSecurity::QueryBlanket is used by the server to find out about the client that invoked one of its methods. To get a pointer to IServerSecurity for the current call on the current thread, call CoGetCallContext1IHTI14, specifying IID_IServerSecurity. This interface pointer may only be used in the same apartment as the call for the duration of the call.

See Also

CoGetCallContext