次の方法で共有


CAccessToken::OpenNamedPipeClientToken

クライアントからのアクセス トークンを使用して CAccessToken を初期化します。このメソッドは、名前付きパイプに関する要求を取得するサーバーで呼び出します。

bool OpenNamedPipeClientToken(
   HANDLE hPipe,
   DWORD dwDesiredAccess,
   bool bImpersonate = false,
   bool bOpenAsSelf = true
) throw(...);

パラメーター

  • hPipe
    名前付きパイプへのハンドル。

  • dwDesiredAccess
    アクセス トークンへのアクセス時に要求されるアクセスの種類を指定するアクセス マスク。 要求されたアクセスの種類は、許可または拒否するアクセスを決定するために、トークンの DACL と比較されます。

  • bImpersonate
    true の場合、呼び出しが正常終了すると、現在のスレッドは呼び出しパイプ クライアントを偽装します。 false の場合、アクセス トークンが開きますが、この呼び出しが完了したときにスレッドは偽装トークンを持ちません。

  • bOpenAsSelf
    GetThreadToken メソッドを呼び出すスレッドのセキュリティ コンテキスト、または呼び出しスレッドのプロセスのセキュリティ コンテキストのどちらに対してアクセス チェックを行うかを指定します。

    パラメーターが false の場合、呼び出しスレッドのセキュリティ コンテキストを使用してアクセス チェックが行われます。 スレッドがクライアントを偽装する場合、このセキュリティ コンテキストはクライアント プロセスのセキュリティ コンテキストであってもかまいません。 パラメーターが true の場合は、呼び出しスレッドのプロセスのセキュリティ コンテキストを使用してアクセス チェックが行われます。

戻り値

正常に終了した場合は true を返します。それ以外の場合は false を返します。

解説

CAutoRevertImpersonation クラス を使用して、bImpersonate フラグを true に設定して作成された偽装アクセス トークンを自動的に復帰できます。

必要条件

**ヘッダー:**atlsecurity.h

参照

参照

CAccessToken クラス

CAccessToken::OpenCOMClientToken

CAccessToken::OpenRPCClientToken

その他の技術情報

CAccessToken のメンバー