ITSGPolicyEngine::AuthorizeConnection-Methode (tsgpolicyengine.h)
Bestimmt, ob die angegebene Verbindung für die Verbindung mit dem Remotedesktopgateway (RD-Gateway) autorisiert ist.
RD Gateway ruft diese Methode auf, nachdem ein Benutzer erfolgreich authentifiziert wurde. Das Autorisierungs-Plug-In sollte dann die ITSGAuthorizeConnectionSink-Schnittstelle verwenden, um rd Gateway über das Ergebnis der Autorisierung zu informieren.
Syntax
HRESULT AuthorizeConnection(
[in] GUID mainSessionId,
[in] BSTR username,
[in] AAAuthSchemes authType,
[in] BSTR clientMachineIP,
[in] BSTR clientMachineName,
[in] BYTE *sohData,
[in] ULONG numSOHBytes,
[in] BYTE *cookieData,
[in] ULONG numCookieBytes,
[in] HANDLE_PTR userToken,
[in] ITSGAuthorizeConnectionSink *pSink
);
Parameter
[in] mainSessionId
Ein eindeutiger Bezeichner, der der Verbindungsanforderung vom RD-Gateway zugewiesen ist.
[in] username
Der Benutzername.
[in] authType
Ein Wert des AAAuthSchemes-Enumerationstyps , der den Typ der Authentifizierung angibt, die zum Herstellen einer Verbindung mit dem RD-Gateway verwendet wird.
[in] clientMachineIP
Die IP-Adresse des Computers des Benutzers.
[in] clientMachineName
Der Name des Computers des Benutzers.
[in] sohData
Ein Zeiger auf einen BYTE , der die vom Computer des Benutzers bereitgestellte Integritätsanweisung (SoH) enthält. Wenn für das Autorisierungs-Plug-In keine Integritätsanweisung erforderlich ist, ist dieser Parameter NULL. Weitere Informationen finden Sie in der IsQuarantineEnabled-Methode .
[in] numSOHBytes
Die Anzahl der Bytes, auf die vom parameter sohData verwiesen wird.
[in] cookieData
Ein Zeiger auf einen BYTE , der das vom Benutzer bereitgestellte Cookie enthält. Wenn der authType-Parameter nicht auf AA_AUTH_COOKIE festgelegt ist, ist dieser Parameter NULL.
[in] numCookieBytes
Die Anzahl der Bytes, auf die der cookieData-Parameter verweist.
[in] userToken
Ein Zeiger auf einen HANDLE , der das Benutzertoken des Benutzers angibt. Wenn der Benutzer Windows nicht ausführt, ist dieser Parameter NULL.
[in] pSink
Ein Zeiger auf eine ITSGAuthorizeConnectionSink-Schnittstelle , die das Autorisierungs-Plug-In verwenden muss, um RD Gateway über das Ergebnis der Autorisierung zu benachrichtigen.
Rückgabewert
Wenn diese Methode erfolgreich ist, wird S_OK zurückgegeben. Andernfalls wird ein Fehlercode HRESULT zurückgegeben.
Hinweise
Wenn diese Methode S_OK zurückgibt, wartet das RD-Gateway, bis das Autorisierungs-Plug-In eine Methode der ITSGAuthorizeConnectionSink-Schnittstelle aufruft . Wenn ein anderer Wert zurückgegeben wird, verweigert RD Gateway die Autorisierungsanforderung sofort.
Wenn die Autorisierung mehr als 1 Sekunde benötigt, empfehlen wir, einen separaten Thread zu starten, um die Autorisierung durchzuführen.
Ein Beispiel, das die AuthorizeConnection-Methode verwendet, finden Sie im Beispiel für die pluggable Authentifizierung und Autorisierung des Remotedesktopgateways .
Anforderungen
Unterstützte Mindestversion (Client) | Windows 7 |
Unterstützte Mindestversion (Server) | Windows Server 2008 R2 |
Zielplattform | Windows |
Kopfzeile | tsgpolicyengine.h |