COAUTHINFO

This structure is used to determine the authentication settings.

At a Glance

Header file: Wtypes.h
Windows CE versions: 2.0 and later

Syntax

typedef struct _COAUTHINFO {
DWORD
dwAuthnSvc;
DWORD
dwAuthzSvc;
[string] WCHAR
* pwszServerPrincName;
DWORD
dwAuthnLevel;
DWORD
ddwImpersonationLevel;
AUTH_IDENTITY
*pAuthIdentityData;
DWORD
dwCapabilities;
} COAUTHINFO;

Members

dwAuthnSvc

[in] Specifies 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] Specifies 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 character 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] Specifies 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] Specifies 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:

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.