RPC_HTTP_TRANSPORT_CREDENTIALS_A-Struktur (rpcdce.h)
Die RPC_HTTP_TRANSPORT_CREDENTIALS-Struktur definiert zusätzliche Anmeldeinformationen für die Authentifizierung bei einem RPC-Proxyserver bei Verwendung von RPC/HTTP.
Syntax
typedef struct _RPC_HTTP_TRANSPORT_CREDENTIALS_A {
SEC_WINNT_AUTH_IDENTITY_A *TransportCredentials;
unsigned long Flags;
unsigned long AuthenticationTarget;
unsigned long NumberOfAuthnSchemes;
unsigned long *AuthnSchemes;
unsigned char *ServerCertificateSubject;
} RPC_HTTP_TRANSPORT_CREDENTIALS_A, *PRPC_HTTP_TRANSPORT_CREDENTIALS_A;
Member
TransportCredentials
Ein Zeiger auf eine SEC_WINNT_AUTH_IDENTITY Struktur, die den Benutzernamen, die Domäne und das Kennwort für den Benutzer enthält.
Flags
Eine Gruppe von Flags, die mit dem bitweisen OR-Operator kombiniert werden können.
AuthenticationTarget
Gibt das Authentifizierungsziel an.
Sollte auf einen oder beide der folgenden Werte festgelegt werden:
NumberOfAuthnSchemes
Die Anzahl der Elemente im AuthnScheme-Array .
AuthnSchemes
ServerCertificateSubject
Enthält eine optionale Zeichenfolge mit dem erwarteten Serverprinzipalnamen. Der Prinzipalname hat das gleiche Format wie für RpcCertGeneratePrincipalName (weitere Informationen finden Sie unter Prinzipalnamen ). Dieser Member wird nur verwendet, wenn SSL verwendet wird. In solchen Fällen wird das Serverzertifikat anhand des generierten Prinzipalnamens überprüft. Wenn sie nicht übereinstimmen, wird ein Fehler zurückgegeben. Mit diesem Member können Clients den RPC-Proxy authentifizieren.
Hinweise
Wenn das TransportCredentials-ElementNULL und das Authentifizierungsschema NTLM ist, werden die Anmeldeinformationen des derzeit angemeldeten Benutzers verwendet. Um die Offenlegung von Benutzeranmeldeinformationen im Netzwerk durch einen schwachen LM-Hash zu vermeiden, werden Anmeldeinformationen für Benutzer nur verwendet, wenn eine oder beide der folgenden Bedingungen zutreffen:
- Der Aufrufer hat die Verwendung von SSL angefordert und das Element ServerCertificateSubject verwendet. In diesem Szenario wird sichergestellt, dass Anmeldeinformationen sowohl während der Übertragung als auch am endgültigen Ziel geschützt werden, selbst wenn ein schwacher Hash verwendet wird.
- Der lncompatibilitylevel-Schlüssel ist auf 2 oder höher festgelegt. Dies bewirkt, dass der NTLM-Sicherheitsanbieter nur den starken NT-Hash ausgibt oder darauf reagiert, nicht auf den schwachen LM-Hash. Darüber hinaus werden Kunden empfohlen, Stufe 3 oder höher zu verwenden, wodurch NTLMv2 versucht wird.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows XP mit SP1 [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 [nur Desktop-Apps] |
Kopfzeile | rpcdce.h (rpc.h einschließen) |
Weitere Informationen
RPC_HTTP_TRANSPORT_CREDENTIALS_V2
RPC_HTTP_TRANSPORT_CREDENTIALS_V3