CheckTokenMembership

指定したセキュリティ識別子 (SID) がアクセストークン内で有効になっているかを判定する。

CheckTokenMembership TokenHandle, SidToCheck, IsMember

TokenHandle : [intptr] アクセストークンへのハンドル。ハンドルはトークンに対する TOKEN_QUERY アクセス権を持っている必要がある。トークンは偽装トークンでなければならない。
SidToCheck : [int] SID 構造体へのポインタ。CheckTokenMembership 関数はこの SID がアクセストークンのユーザー SID およびグループ SID に存在するかをチェックする。
IsMember : [var] チェック結果を受け取る変数へのポインタ。SID が存在し SE_GROUP_ENABLED 属性を持つ場合、IsMember は TRUE を返す。そうでなければ FALSE を返す。

(プラグイン / モジュール : advapi32.dll)

解説

指定したセキュリティ識別子 (SID) がアクセストークン内で有効になっているかを判定する。

[戻り値]
関数が成功した場合、戻り値は 0 以外となる。関数が失敗した場合、戻り値は 0 となる。拡張エラー情報を取得するには
GetLastError を呼び出す。

[備考]
CheckTokenMembership 関数は、SID
がアクセストークンに存在しかつ有効になっているかを判定する処理を簡素化する。SID
がトークンに存在していても、システムがアクセスチェックでその SID を使用しない場合がある。SID
は無効化されているか、SE_GROUP_USE_FOR_DENY_ONLY
属性を持っている可能性がある。システムはアクセスチェックを行う際、有効な SID のみを使用してアクセスを許可する。詳細は「SID
Attributes in an Access Token」を参照のこと。TokenHandle が制限付きトークンである場合、または
TokenHandle が NULL
で呼び出し元スレッドの現在の実効トークンが制限付きトークンである場合、CheckTokenMembership は制限する SID
のリストにも SID が存在するかをチェックする。

情報

プラグイン / モジュールadvapi32.dll
バージョン1.0
作成日2026/04/16
著作者IronHSP / CsWin32 bridge
URLhttps://github.com/inovia/IronHSP
備考Win32 API の advapi32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。
タイプ拡張命令
グループWin32API
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\win32_advapi32_gen2.hs