ITSGPolicyEngine::AuthorizeConnection メソッド (tsgpolicyengine.h)
指定した接続がリモート デスクトップ ゲートウェイ (RD ゲートウェイ) への接続を承認されているかどうかを判断します。
RD ゲートウェイは、ユーザーが正常に認証された後にこのメソッドを呼び出します。 承認プラグインでは、 ITSGAuthorizeConnectionSink インターフェイスを使用して、承認の結果について RD ゲートウェイに通知する必要があります。
構文
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
);
パラメーター
[in] mainSessionId
RD ゲートウェイによって接続要求に割り当てられた一意の識別子。
[in] username
ユーザー名です。
[in] authType
RD ゲートウェイへの接続に使用される認証の種類を指定する AAAuthSchemes 列挙型の値。
[in] clientMachineIP
ユーザーのコンピューターの IP アドレス。
[in] clientMachineName
ユーザーのコンピューターの名前。
[in] sohData
ユーザーのコンピューターによって提供される正常性ステートメント (SoH) を含む BYTE へのポインター。 承認プラグインに正常性ステートメントが必要ない場合、このパラメーターは NULL です。 詳細については、 IsQuarantineEnabled メソッドを参照してください。
[in] numSOHBytes
sohData パラメーターによって参照されるバイト数。
[in] cookieData
ユーザーによって提供される Cookie を含む BYTE へのポインター。 authType パラメーターが AA_AUTH_COOKIE に設定されていない場合、このパラメーターは NULL です。
[in] numCookieBytes
cookieData パラメーターによって参照されるバイト数。
[in] userToken
ユーザーのユーザー トークンを指定する HANDLE へのポインター。 ユーザーが Windows を実行していない場合、このパラメーターは NULL です。
[in] pSink
承認プラグインが承認の結果について RD ゲートウェイに通知するために使用する必要がある ITSGAuthorizeConnectionSink インターフェイスへのポインター。
戻り値
このメソッドは、成功すると S_OK を返します。 そうでない場合は、HRESULT エラー コードを返します。
解説
このメソッド がS_OKを返す場合、RD ゲートウェイは承認プラグインが ITSGAuthorizeConnectionSink インターフェイスのメソッドを呼び出すのを待機します。 その他の値が返された場合、RD ゲートウェイは承認要求を直ちに拒否します。
承認に 1 秒を超える必要がある場合は、承認を実行するために別のスレッドを開始することをお勧めします。
AuthorizeConnection メソッドを使用するサンプルについては、リモート デスクトップ ゲートウェイのプラグ可能な認証と承認のサンプルを参照してください。
要件
サポートされている最小のクライアント | Windows 7 |
サポートされている最小のサーバー | Windows Server 2008 R2 |
対象プラットフォーム | Windows |
ヘッダー | tsgpolicyengine.h |