3.5.4.1.8 RpcGetUserCertificates (Opnum 10)

The RpcGetUserCertificates method returns a client X509 certificate if the client used the certificate to connect to a session running on a terminal server. For more information, see [X509]. The caller MUST have WINSTATION_QUERY permission for the session. The method checks whether the caller has WINSTATION_QUERY permission (section 3.1.1) by setting it as the Access Request mask, and fails if the caller does not have the permission.

 HRESULT RpcGetUserCertificates(
   [in] handle_t hBinding,
   [in] ULONG SessionId,
   [out] ULONG* pcCerts,
   [out, size_is(, *pcbCerts)] byte** ppbCerts,
   [out] ULONG* pcbCerts
 );

hBinding: The RPC binding handle. For more information, see [MSDN-RPCBIND].

SessionId: The ID of the session for which the certificate is to be retrieved.

pcCerts: The number of client certificates returned.

ppbCerts: Certificate data.

pcbCerts: The size, in bytes, of ppbCerts.

Return Values: The method MUST return S_OK (0x00000000) on success; otherwise, it MUST return an implementation-specific negative value.

Return value/code

Description

0x00000000

S_OK

Successful completion.