MakeAbsoluteSD

自己相対形式のセキュリティ記述子をテンプレートとして使用して、絶対形式のセキュリティ記述子を作成する。

MakeAbsoluteSD pSelfRelativeSecurityDescriptor, pAbsoluteSecurityDescriptor, lpdwAbsoluteSecurityDescriptorSize, pDacl, lpdwDaclSize, pSacl, lpdwSaclSize, pOwner, lpdwOwnerSize, pPrimaryGroup, lpdwPrimaryGroupSize

pSelfRelativeSecurityDescriptor : [int] 自己相対形式の SECURITY_DESCRIPTOR 構造体へのポインタ。関数は元のセキュリティ記述子を変更せずに、このセキュリティ記述子の絶対形式バージョンを作成する。
pAbsoluteSecurityDescriptor : [int] 関数が絶対形式のセキュリティ記述子の本体で埋めるバッファへのポインタ。この情報は SECURITY_DESCRIPTOR 構造体として整形される。
lpdwAbsoluteSecurityDescriptorSize : [var] pAbsoluteSD パラメータが指すバッファのサイズを指定する変数へのポインタ。バッファがセキュリティ記述子に対して十分な大きさでない場合、関数は失敗し、この変数を必要な最小サイズに設定する。
pDacl : [var] 関数が絶対形式のセキュリティ記述子の随意アクセス制御リスト (DACL) で埋めるバッファへのポインタ。絶対形式のセキュリティ記述子の本体がこのポインタを参照する。
lpdwDaclSize : [var] pDacl パラメータが指すバッファのサイズを指定する変数へのポインタ。バッファがアクセス制御リスト (ACL) に対して十分な大きさでない場合、関数は失敗し、この変数を必要な最小サイズに設定する。
pSacl : [var] 関数が絶対形式のセキュリティ記述子のシステムアクセス制御リスト (SACL) で埋めるバッファへのポインタ。絶対形式のセキュリティ記述子の本体がこのポインタを参照する。
lpdwSaclSize : [var] pSacl パラメータが指すバッファのサイズを指定する変数へのポインタ。バッファが ACL に対して十分な大きさでない場合、関数は失敗し、この変数を必要な最小サイズに設定する。
pOwner : [int] 関数が絶対形式のセキュリティ記述子の所有者のセキュリティ識別子 (SID) で埋めるバッファへのポインタ。絶対形式のセキュリティ記述子の本体がこのポインタを参照する。
lpdwOwnerSize : [var] pOwner パラメータが指すバッファのサイズを指定する変数へのポインタ。バッファが SID に対して十分な大きさでない場合、関数は失敗し、この変数を必要な最小サイズに設定する。
pPrimaryGroup : [int] 関数が絶対形式のセキュリティ記述子のプライマリグループの SID で埋めるバッファへのポインタ。絶対形式のセキュリティ記述子の本体がこのポインタを参照する。
lpdwPrimaryGroupSize : [var] pPrimaryGroup パラメータが指すバッファのサイズを指定する変数へのポインタ。バッファが SID に対して十分な大きさでない場合、関数は失敗し、この変数を必要な最小サイズに設定する。

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

解説

自己相対形式のセキュリティ記述子をテンプレートとして使用して、絶対形式のセキュリティ記述子を作成する。

[戻り値]
関数が成功した場合、関数は 0 以外を返す。関数が失敗した場合、0 を返す。拡張エラー情報を取得するには GetLastError
を呼び出す。可能な戻りコードは以下を含むがこれに限定されない。
(以下省略)

[備考]

絶対形式のセキュリティ記述子は、情報そのものではなく情報へのポインタを含む。自己相対形式のセキュリティ記述子は、情報を連続したメモリブロックに含む。自己相対セキュリティ記述子では、SECURITY_DESCRIPTOR
構造体が常に情報の先頭に来るが、セキュリティ記述子の他の構成要素は任意の順序で構造体に続くことができる。メモリアドレスを使用する代わりに、自己相対セキュリティ記述子の構成要素はセキュリティ記述子の先頭からのオフセットによって識別される。この形式は、セキュリティ記述子をフロッピーディスクに保存したり、通信プロトコルで送信したりする必要がある場合に有用である。セキュリティ保護されたオブジェクトを様々なメディアにコピーするサーバーは、MakeAbsoluteSD
関数を使用して自己相対セキュリティ記述子から絶対セキュリティ記述子を作成し、MakeSelfRelativeSD
関数を使用して絶対セキュリティ記述子から自己相対セキュリティ記述子を作成できる。

情報

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