指定したオブジェクトのセキュリティ記述子に、指定したセキュリティ情報を設定する。呼び出し側はハンドルによってオブジェクトを識別する。
SetSecurityInfo handle, ObjectType, SecurityInfo, psidOwner, psidGroup, pDacl, pSacl
handle : [intptr] セキュリティ情報を設定する対象のオブジェクトへのハンドル。 ObjectType : [int] handle パラメータで識別されるオブジェクトの種類を示す SE_OBJECT_TYPE 列挙のメンバ。 SecurityInfo : [int] 設定するセキュリティ情報の種類を示すビットフラグの集合。このパラメータには SECURITY_INFORMATION ビットフラグの組み合わせを指定できる。 psidOwner : [int] オブジェクトの所有者を識別する SID へのポインタ。SID は、セキュリティ記述子の所有者 SID として割り当て可能なものでなければならない。SecurityInfo パラメータには OWNER_SECURITY_INFORMATION フラグが含まれている必要がある。所有者 SID を設定しない場合、このパラメータは NULL にできる。 psidGroup : [int] オブジェクトのプライマリグループを識別する SID へのポインタ。SecurityInfo パラメータには GROUP_SECURITY_INFORMATION フラグが含まれている必要がある。プライマリグループ SID を設定しない場合、このパラメータは NULL にできる。 pDacl : [var] オブジェクトの新しい DACL へのポインタ。このパラメータは、SecurityInfo パラメータの値に DACL_SECURITY_INFORMATION フラグが含まれない限り無視される。SecurityInfo パラメータの値に DACL_SECURITY_INFORMATION フラグが含まれ、このパラメータの値が NULL に設定されている場合、オブジェクトへの完全アクセスがすべてのユーザに付与される。NULL DACL の詳細については、DACL の作成を参照のこと。 pSacl : [var] オブジェクトの新しい SACL へのポインタ。SecurityInfo パラメータは、SACL_SECURITY_INFORMATION、LABEL_SECURITY_INFORMATION、ATTRIBUTE_SECURITY_INFORMATION、SCOPE_SECURITY_INFORMATION、または BACKUP_SECURITY_INFORMATION のいずれかのフラグを含んでいる必要がある。SACL_SECURITY_INFORMATION または SCOPE_SECURITY_INFORMATION を設定する場合、呼び出し側は SE_SECURITY_NAME 特権を有効にしている必要がある。SACL を設定しない場合、このパラメータは NULL にできる。
(プラグイン / モジュール : advapi32.dll)
指定したオブジェクトのセキュリティ記述子に、指定したセキュリティ情報を設定する。呼び出し側はハンドルによってオブジェクトを識別する。 [戻り値] 関数が成功した場合、関数は ERROR_SUCCESS を返す。関数が失敗した場合、WinError.h で定義された 0 以外のエラーコードを返す。 [備考] オブジェクトの任意アクセス制御リスト (DACL) またはシステムアクセス制御リスト (SACL) の要素を設定する場合、システムは ACE 継承規則に従って、継承可能なアクセス制御エントリ (ACE) を既存の子オブジェクトに自動的に伝播する。 SetSecurityInfo 関数は以下の種類のオブジェクトに使用できる: (以下省略)
| プラグイン / モジュール | advapi32.dll |
| バージョン | 1.0 |
| 作成日 | 2026/04/16 |
| 著作者 | IronHSP / CsWin32 bridge |
| URL | https://github.com/inovia/IronHSP |
| 備考 | Win32 API の advapi32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。 |
| タイプ | 拡張命令 |
| グループ | Win32API |
| 対応環境 |
|
| hs ファイル | hsphelp\win32_advapi32_gen2.hs |