COAUTHINFO
[This is preliminary documentation and subject to change.]
The COAUTHINFO structure specifies the authentication settings used while making a remote activation request from the client machine to the server machine.
typedef struct _COAUTHINFO
{
DWORD dwAuthnSvc;
DWORD dwAuthzSvc;
LPWSTR pwszServerPrincName;
DWORD dwAuthnLevel;
DWORD dwImpersonationLevel;
COAUTHIDENTITY * pAuthIdentityData;
DWORD dwCapabilities;
} COAUTHINFO;
Members
-
dwAuthnSvc
-
[in] A single DWORD value from the list of RPC_C_AUTHN_xxx constants indicating the authentication service to use. It may be RPC_C_AUTHN_NONE if no authentication is required. RPC_C_AUTHN_WINNT is the default and RPC_C_AUTHN_GSS_KERBEROS is also supported.
-
dwAuthzSvc
-
[in] A single DWORD value from the list of RPC_C_AUTHZ_xxx constants indicating the authorization service to use. If you are using the NT authentication service, use RPC_C_AUTHZ_NONE.
-
pwszServerPrincName
-
Pointer to a WCHAR string that indicates the server principal name to use with the authentication service. If you are using RPC_C_AUTHN_WINNT, the principal name must be NULL.
-
dwAuthnLevel
-
[in] A single DWORD value from the list of RPC_C_AUTHN_LEVEL_xxx constants indicating the authentication level to use.
-
dwImpersonationLevel
-
[in] Specifies the impersonation level to be used. This value must be RPC_C_IMP_LEVEL_IMPERSONATE.
-
pAuthIdentityData
-
Pointer to a COAUTHIDENTITY structure that establishes a nondefault client identity. If NULL, the actual identity of the client is used. Values of structure members are authentication-service specific. This value must be NULL if dwAuthnSvc is not NTLMSSP or Kerberos. The form of the COAUTHIDENTITY structure is identical to that of the Windows NT SEC_WINNT_AUTH_IDENTITY structure.
-
dwCapabilities
-
[in] A DWORD defining flags that indicate the further capabilities of this proxy. Currently, this value must be EOAC_NONE.
Remarks
A pointer to a COAUTHINFO structure is a member of the COSERVERINFO structure. The COAUTHINFO structure provides security information to object creation functions across the network. The values of the COAUTHINFO structure determine the authentication settings used while making a remote activation request from the client machine to the server machine.
If pAuthInfo in COSERVERINFO is set to NULL, NTLMSSP with the identity of the actual client will be used. However, a non-NULL COAUTHINFO structure can be specified for pAuthInfo to meet any one of the following special needs:
-
To specify a different client identity for machine remote activations. The specified identity will be used for the launch permission check on the server rather than the real client identity.
-
To specify that Kerberos, rather than NTLMSSP, is used for machine remote activation. A nondefault client identity may or may not be specified.
-
To request unsecure activation.
-
To specify a proprietary authentication service.
Specifying a COAUTHINFO structure allows DCOM activations to work correctly with security providers other than NTLMSSP. You can also specify additional security information used during remote activations for interoperability with alternate implementations of DCOM.
For more information on the uses of COAUTHINFO, see COSERVERINFO.
QuickInfo
Windows NT: Use version 4.0 or later.
Windows: Use Windows 95 or later.
Windows CE: Unsupported.
Header: Declared in wtypes.h.
See Also
COSERVERINFO