Share via


ITSGPolicyEngine::AuthorizeConnection, méthode (tsgpolicyengine.h)

Détermine si la connexion spécifiée est autorisée à se connecter à la passerelle Bureau à distance (passerelle Bureau à distance).

La passerelle Bureau à distance appelle cette méthode une fois qu’un utilisateur a été authentifié avec succès. Le plug-in d’autorisation doit ensuite utiliser l’interface ITSGAuthorizeConnectionSink pour informer la passerelle Bureau à distance du résultat de l’autorisation.

Syntaxe

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
);

Paramètres

[in] mainSessionId

Identificateur unique attribué à la demande de connexion par la passerelle Bureau à distance.

[in] username

Nom d'utilisateur.

[in] authType

Valeur du type d’énumération AAAuthSchemes qui spécifie le type d’authentification utilisé pour se connecter à la passerelle Bureau à distance.

[in] clientMachineIP

Adresse IP de l’ordinateur de l’utilisateur.

[in] clientMachineName

Nom de l’ordinateur de l’utilisateur.

[in] sohData

Pointeur vers un BYTE qui contient l’instruction d’intégrité (SoH) fournie par l’ordinateur de l’utilisateur. Si le plug-in d’autorisation ne nécessite pas d’instruction d’intégrité, ce paramètre est NULL. Pour plus d’informations, consultez la méthode IsQuarantineEnabled .

[in] numSOHBytes

Nombre d’octets référencés par le paramètre sohData .

[in] cookieData

Pointeur vers un BYTE qui contient le cookie fourni par l’utilisateur. Si le paramètre authType n’est pas défini sur AA_AUTH_COOKIE, ce paramètre a la valeur NULL.

[in] numCookieBytes

Nombre d’octets référencés par le paramètre cookieData .

[in] userToken

Pointeur vers un HANDLE qui spécifie le jeton utilisateur de l’utilisateur. Si l’utilisateur n’exécute pas Windows, ce paramètre a la valeur NULL.

[in] pSink

Pointeur vers une interface ITSGAuthorizeConnectionSink que le plug-in d’autorisation doit utiliser pour informer la passerelle Bureau à distance du résultat de l’autorisation.

Valeur retournée

Si cette méthode réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT.

Remarques

Si cette méthode retourne S_OK, la passerelle Bureau à distance attend que le plug-in d’autorisation appelle une méthode de l’interface ITSGAuthorizeConnectionSink . Si une autre valeur est retournée, la passerelle Bureau à distance refuse immédiatement la demande d’autorisation.

Si l’autorisation nécessite plus d’une seconde, nous vous recommandons de démarrer un thread distinct pour effectuer l’autorisation.

Pour obtenir un exemple qui utilise la méthode AuthorizeConnection , consultez l’exemple d’authentification et d’autorisation enfichable de passerelle Bureau à distance .

Configuration requise

   
Client minimal pris en charge Windows 7
Serveur minimal pris en charge Windows Server 2008 R2
Plateforme cible Windows
En-tête tsgpolicyengine.h

Voir aussi

ITSGAuthorizeConnectionSink

ITSGPolicyEngine

IsQuarantineEnabled