GetNamedSecurityInfoW

名前で指定したオブジェクトのセキュリティ記述子のコピーを取得する。(Unicode)

GetNamedSecurityInfoW pObjectName, ObjectType, SecurityInfo, ppsidOwner, ppsidGroup, ppDacl, ppSacl, ppSecurityDescriptor

pObjectName : [wstr] セキュリティ情報を取得するオブジェクトの名前を指定する null 終端文字列へのポインタ。異なるオブジェクト型の文字列形式の説明については SE_OBJECT_TYPE を参照。
ObjectType : [int] pObjectName パラメータで名前が示されるオブジェクトの型を示す SE_OBJECT_TYPE 列挙の値を指定する。
SecurityInfo : [int] 取得するセキュリティ情報の種類を示すビット フラグのセット。このパラメータは SECURITY_INFORMATION ビット フラグの組み合わせを指定できる。
ppsidOwner : [var] ppSecurityDescriptor で返されるセキュリティ記述子内の所有者 SID へのポインタを受け取る変数へのポインタ。セキュリティ記述子に所有者 SID がない場合は NULL となる。返されるポインタは OWNER_SECURITY_INFORMATION フラグを設定した場合にのみ有効である。また、所有者 SID が不要な場合、このパラメータは NULL にできる。
ppsidGroup : [var] 返されるセキュリティ記述子内のプライマリ グループ SID へのポインタを受け取る変数へのポインタ。セキュリティ記述子にグループ SID がない場合は NULL となる。返されるポインタは GROUP_SECURITY_INFORMATION フラグを設定した場合にのみ有効である。また、グループ SID が不要な場合、このパラメータは NULL にできる。
ppDacl : [var] 返されるセキュリティ記述子内の DACL へのポインタを受け取る変数へのポインタ。セキュリティ記述子に DACL がない場合は NULL となる。返されるポインタは DACL_SECURITY_INFORMATION フラグを設定した場合にのみ有効である。また、DACL が不要な場合、このパラメータは NULL にできる。
ppSacl : [var] 返されるセキュリティ記述子内の SACL へのポインタを受け取る変数へのポインタ。セキュリティ記述子に SACL がない場合は NULL となる。返されるポインタは SACL_SECURITY_INFORMATION フラグを設定した場合にのみ有効である。また、SACL が不要な場合、このパラメータは NULL にできる。
ppSecurityDescriptor : [var] オブジェクトのセキュリティ記述子へのポインタを受け取る変数へのポインタ。ポインタの使用が終わったら、LocalFree 関数を呼び出して返されたバッファを解放する。ppsidOwner、ppsidGroup、ppDacl、または ppSacl のいずれか一つでも NULL でない場合、このパラメータは必須である。

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

解説

名前で指定したオブジェクトのセキュリティ記述子のコピーを取得する。(Unicode)

[戻り値]
関数が成功した場合、戻り値は ERROR_SUCCESS となる。失敗した場合、戻り値は WinError.h
で定義されるゼロ以外のエラーコードとなる。

[備考]
ppsidOwner、ppsidGroup、ppDacl、または ppSacl のいずれかが NULL でなく、SecurityInfo
パラメータがそれらをオブジェクトから取得するよう指定している場合、それらのパラメータは ppSecurityDescriptor
で返されるセキュリティ記述子内の対応するパラメータを指す。セキュリティ記述子が要求された情報を含まない場合、対応するパラメータは NULL
に設定される。オブジェクトのセキュリティ記述子から所有者、グループ、または DACL を読み取るには、オブジェクトの DACL
が呼び出し側に READ_CONTROL
アクセスを付与しているか、呼び出し側がオブジェクトの所有者である必要がある。オブジェクトのシステム
アクセス制御リストを読み取るには、呼び出し元プロセスで SE_SECURITY_NAME
特権を有効にしなければならない。特権を有効にすることのセキュリティ上の意味については Running with Special
Privileges を参照。GetNamedSecurityInfo 関数は次の種類のオブジェクトで使用できる。
(以下省略)

情報

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