Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
A version of this page is also available for
4/8/2010

This structure is used to determine the authentication settings.

Syntax

typedef struct _COAUTHINFO {
  DWORD 
dwAuthnSvc;
  DWORD 
dwAuthzSvc;
  LPWSTR 
pwszServerPrincName;
  DWORD 
dwAuthnLevel;
  DWORD
dwImpersonationLevel;
  COAUTHIDENTITY __RPC_FAR* 
pAuthIdentityData;
  DWORD 
dwCapabilities;
} COAUTHINFO;

Members

dwAuthnSvc

Specifies a single DWORDvalue from the list of RPC_C_AUTHN_ XXXconstants indicating the authenticationservice to use.

It can 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

Specifies a single DWORDvalue from the list of RPC_C_AUTHZ_ XXXconstants indicating the authorizationservice 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

Specifies a single DWORDvalue from the list of RPC_C_AUTHN_LEVEL_ XXXconstants indicating the authentication level to use.

dwImpersonationLevel

Specifies the impersonation level to be used.

This value must be RPC_C_IMP_LEVEL_IMPERSONATE.

pAuthIdentityData

Pointer to a COAUTHIDENTITYstructure that establishes a nondefault client identity.

If NULL, the identity of the client is used. Values of structure members are authentication-service specific.

This value must be NULL if dwAuthnSvcis not NTLMSSP or Kerberos.

The form of the COAUTHIDENTITYstructure is identical to that of the Windows NT SEC_WINNT_AUTH_IDENTITYstructure.

dwCapabilities

Specifies a DWORDdefining flags that indicate the further capabilities of this proxy.

This value must be EOAC_NONE.

Remarks

A pointer to a COAUTHINFOstructure is a member of the COSERVERINFOstructure. The COAUTHINFOstructure provides security information to object creation functions across the network.

The values of the COAUTHINFOstructure determine the authentication settings used while making a remote activation request from the client machine to the server machine.

If pAuthInfoin COSERVERINFOis set to NULL, NTLMSSP with the identity of the actual client will be used. However, a non-NULL COAUTHINFOstructure can be specified for pAuthInfoto meet any 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 might or might not be specified.

  • To request unsecure activation.

  • To specify a proprietary authentication service.

Specifying a COAUTHINFOstructure 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.

Requirements

Header wtypes.h
Windows Embedded CE Windows CE 2.0 and later
Windows Mobile Windows Mobile Version 5.0 and later

See Also

Reference

COSERVERINFO

Other Resources

SEC_WINNT_AUTH_IDENTITY