ITSGPolicyEngine::AuthorizeResource-Methode (tsgpolicyengine.h)
Bestimmt, mit welchen Ressourcen die angegebene Verbindung eine Verbindung herstellen darf.
Remotedesktopgateway (RD-Gateway) ruft diese Methode auf, nachdem ein Benutzer erfolgreich authentifiziert wurde. Das Autorisierungs-Plug-In sollte dann die ITSGAuthorizeConnectionSink-Schnittstelle verwenden, um das RD-Gateway über das Ergebnis der Autorisierung zu benachrichtigen.
Syntax
HRESULT AuthorizeResource(
[in] GUID mainSessionId,
[in] int subSessionId,
[in] BSTR username,
[in] BSTR *resourceNames,
[in] ULONG numResources,
[in] BSTR *alternateResourceNames,
[in] ULONG numAlternateResourceName,
[in] ULONG portNumber,
[in] BSTR operation,
[in] BYTE *cookie,
[in] ULONG numBytesInCookie,
[in] ITSGAuthorizeResourceSink *pSink
);
Parameter
[in] mainSessionId
Ein eindeutiger Bezeichner, der der Verbindungsanforderung vom RD-Gateway zugewiesen ist.
[in] subSessionId
Ein eindeutiger Bezeichner, der der Subsession vom RD-Gateway zugewiesen ist. Eine Teilsitzung ist eine Sitzung, die von einer anderen Sitzung gestartet wird.
[in] username
Der Benutzername.
[in] resourceNames
Eine Liste der zu autorisierenden Ressourcen.
[in] numResources
Die Anzahl der Ressourcen, auf die vom resourceNames-Parameter verwiesen wird.
[in] alternateResourceNames
Ein Zeiger auf einen BSTR , der eine Liste mit alternativen Ressourcennamen enthält. Dieser Parameter ist nur gültig, wenn der RD-Verbindungsbroker verwendet wird.
[in] numAlternateResourceName
Die Anzahl der alternativen Ressourcennamen, auf die vom alternateResourceNames-Parameter verwiesen wird.
[in] portNumber
Die vom Benutzer angegebene Portnummer.
[in] operation
Der Vorgang, den der Benutzer für die Ressource versucht. Dieser Parameter ist immer auf "RDP" festgelegt.
[in] cookie
Ein Zeiger auf ein BYTE , das das vom Benutzer bereitgestellte Cookie enthält. Wenn sich der Benutzer nicht mithilfe eines Cookies authentifiziert hat, ist dieser Parameter NULL.
[in] numBytesInCookie
Die Anzahl der Bytes, auf die vom Cookie-Parameter verwiesen wird.
[in] pSink
Ein Zeiger auf eine ITSGAuthorizeResourceSink-Schnittstelle , die das Autorisierungs-Plug-In verwenden muss, um das 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 darauf, dass das Autorisierungs-Plug-In eine Methode der ITSGAuthorizeResourceSink-Schnittstelle aufruft . Wenn ein anderer Wert zurückgegeben wird, verweigert das RD-Gateway sofort die Autorisierungsanforderung.
Wenn die Autorisierung mehr als 1 Sekunde erfordert, wird empfohlen, einen separaten Thread zu starten, um die Autorisierung durchzuführen.
Ein Beispiel, das die AuthorizeResource-Methode verwendet, finden Sie im Beispiel für austauschbare Authentifizierung und Autorisierung des Remotedesktopgateways .
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 7 |
Unterstützte Mindestversion (Server) | Windows Server 2008 R2 |
Zielplattform | Windows |
Kopfzeile | tsgpolicyengine.h |