Struttura COAUTHINFO (wtypesbase.h)
Contiene le impostazioni di autenticazione utilizzate durante l'esecuzione di una richiesta di attivazione remota dal computer client al computer server.
Sintassi
typedef struct _COAUTHINFO {
DWORD dwAuthnSvc;
DWORD dwAuthzSvc;
LPWSTR pwszServerPrincName;
DWORD dwAuthnLevel;
DWORD dwImpersonationLevel;
COAUTHIDENTITY *pAuthIdentityData;
DWORD dwCapabilities;
} COAUTHINFO;
Membri
dwAuthnSvc
Servizio di autenticazione da usare. Per un elenco di valori, vedere costanti del servizio di autenticazione. Usare RPC_C_AUTHN_NONE se non è necessaria alcuna autenticazione. RPC_C_AUTHN_WINNT è il valore predefinito e RPC_C_AUTHN_GSS_KERBEROS è supportato anche.
dwAuthzSvc
Servizio di autorizzazione da usare. Per un elenco di valori, vedere Costanti di autorizzazione. Per usare il servizio di autenticazione NT, specificare RPC_C_AUTHZ_NONE.
pwszServerPrincName
Nome dell'entità server da usare con il servizio di autenticazione. Se si usa RPC_C_AUTHN_WINNT, il nome dell'entità deve essere NULL.
dwAuthnLevel
Livello di autenticazione da usare. Per un elenco di valori, vedere costanti livello di autenticazione.
A partire da Windows Server 2003, le attivazioni remote usano il livello di autenticazione predefinito specificato nel parametro CoInitializeSecuritydwAuthnLevel. Nelle versioni precedenti di Windows, RPC_C_AUTHN_LEVEL_CONNECT è sempre stato usato per il livello di sicurezza, a meno che non sia stato specificato in modo esplicito un altro livello.
dwImpersonationLevel
Livello di rappresentazione da utilizzare. Per un elenco di valori, vedere Costanti del livello di rappresentazione. Questo valore deve essere RPC_C_IMP_LEVEL_IMPERSONATE o superiore.
pAuthIdentityData
Puntatore a una struttura COAUTHIDENTITY che stabilisce un'identità client non predefinita. Se questo parametro è NULL, viene usata l'identità effettiva del client. I valori dei membri della struttura sono specifici del servizio di autenticazione. Questo valore deve essere NULL se dwAuthnSvc non specifica il protocollo di autenticazione di rete NTLMSSP o Kerberos viene usato come servizio di autorizzazione.
dwCapabilities
Indica funzionalità aggiuntive di questo proxy. Attualmente, questo membro deve essere EOAC_NONE (0x0) o RPC_C_QOS_CAPABILITIES_MUTUAL_AUTH (0x1). Usare RPC_C_QOS_CAPABILITIES_MUTUAL_AUTH se è necessario Kerberos.
Osservazioni
Se pAuthInfo in COSERVERINFO è impostato su NULL, Snego verrà usato per negoziare un servizio di autenticazione che funzionerà tra il client e il server. Tuttavia,
- Per specificare un'identità client diversa per le attivazioni remote del computer. L'identità specificata verrà usata per il controllo delle autorizzazioni di avvio nel server anziché per l'identità client reale.
- Per specificare che Kerberos, anziché NTLMSSP, viene usato per l'attivazione remota del computer. È possibile specificare o meno un'identità client non predefinita.
- Per richiedere l'attivazione non protetta.
- Per specificare un servizio di autenticazione proprietario.
Se si imposta dwAuthzSvc, pwszServerPrincName, dwImpersonationLevelo dwCapabilities a valori non corretti e chiamare CoGetClassObject o CoCreateInstanceEx, queste funzioni non restituiscono E_INVALIDARG o un errore simile. I valori predefiniti vengono usati anziché i valori non corretti.
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Windows 2000 Professional [app desktop | App UWP] |
server minimo supportato | Windows 2000 Server [app desktop | App UWP] |
intestazione |
wtypesbase.h (include WTypes.h) |