低レベルのアクセス制御では、セキュリティ記述子 を作成し、セキュリティ記述子のコンポーネントを取得および設定するための一連の関数が提供されます。 セキュリティ記述子のコンポーネントを初期化および設定するための低レベル関数は、絶対形式のセキュリティ記述子でのみ機能します。 セキュリティ記述子のコンポーネントを取得するための低レベル関数は、絶対セキュリティ記述子と自己相対セキュリティ記述子の両方で動作。
InitializeSecurityDescriptor 関数は、SECURITY_DESCRIPTOR バッファーを初期化します。 初期化されたセキュリティ記述子は 絶対 形式であり、所有者、プライマリ グループ、随意アクセス制御リスト (DACL)、またはシステム アクセス制御リスト(SACL)はありません。 次の低レベル関数を使用して、指定されたセキュリティ記述子の特定のコンポーネントを取得または設定できます。
| 機能 | 形容 |
|---|---|
| GetSecurityDescriptorControlの | セキュリティ記述子からリビジョンとコントロールの情報を取得します。 |
| GetSecurityDescriptorDaclの | セキュリティ記述子から DACL を取得します。 |
| GetSecurityDescriptorGroupの | セキュリティ記述子から、セキュリティ識別子(SID)プライマリ グループを取得します。 |
| GetSecurityDescriptorLengthをする | セキュリティ記述子の長さを返します。 |
| GetSecurityDescriptorOwnerの | セキュリティ記述子から所有者 SID を取得します。 |
| GetSecurityDescriptorSaclの | セキュリティ記述子から SACL を取得します。 |
| SetSecurityDescriptorDaclの | DACL をセキュリティ記述子に配置し、既存の DACL をスーパーセットします。 |
| SetSecurityDescriptorGroupの | セキュリティ記述子のプライマリ グループ SID を設定します。 |
| SetSecurityDescriptorOwnerの | セキュリティ記述子の所有者 SID を設定します。 |
| SetSecurityDescriptorSaclの | SACL をセキュリティ記述子に配置し、既存の SACL をスーパーセットします。 |
セキュリティ記述子のリビジョン レベルと構造 整合性 を確認するには、IsValidSecurityDescriptor 関数を呼び出します。