SaferComputeTokenFromLevel

SAFER_LEVEL_HANDLE で指定された制限を使用してトークンを制限する。

SaferComputeTokenFromLevel LevelHandle, InAccessToken, OutAccessToken, dwFlags, lpReserved

LevelHandle : [intptr] 入力トークンに適用する制限を含む SAFER_LEVEL_HANDLE。LevelId が SAFER_LEVELID_FULLYTRUSTED または SAFER_LEVELID_DISALLOWED のハンドルをこの関数に渡してはならない。これは、SAFER_LEVELID_FULLYTRUSTED は制限がなく、SAFER_LEVELID_DISALLOWED はトークンを含まないためである。
InAccessToken : [intptr] 制限するトークン。このパラメータが NULL の場合、現在のスレッドのトークンが使用される。現在のスレッドがトークンを保持していない場合、現在のプロセスのトークンが使用される。
OutAccessToken : [intptr] 結果として得られる制限付きトークン。
dwFlags : [int] 
lpReserved : [intptr] SAFER_TOKEN_COMPARE_ONLY フラグが設定されている場合、このパラメータは出力時にトークン比較の結果を指定する。出力値は LPDWORD である。値 ?1 は、結果として得られるトークンが InAccessToken パラメータで指定されたトークンよりも特権が少ないことを示す。SAFER_TOKEN_WANT_FLAGS フラグが設定され、SAFER_TOKEN_COMPARE_ONLY フラグが設定されていない場合、このパラメータは制限付きトークンの作成に使用されたフラグを指定する LPDWORD 値となる。

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

解説

SAFER_LEVEL_HANDLE で指定された制限を使用してトークンを制限する。

[戻り値]
関数が成功した場合は TRUE、そうでなければ FALSE。拡張情報を取得するには GetLastError を呼び出す。

情報

プラグイン / モジュール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