RtlAddAccessAllowedAceEx 関数 (ntifs.h)
RtlAddAccessAllowedAceEx ルーチンは、アクセス制御リスト (ACL) に継承 ACE フラグを持つアクセス許可アクセス制御エントリ (ACE) を追加します。 アクセス権は、指定されたセキュリティ識別子 (SID) に付与されます。
構文
NTSYSAPI NTSTATUS RtlAddAccessAllowedAceEx(
[in, out] PACL Acl,
[in] ULONG AceRevision,
[in] ULONG AceFlags,
[in] ACCESS_MASK AccessMask,
[in] PSID Sid
);
パラメーター
[in, out] Acl
変更する ACL を含む呼び出し元によって割り当てられたバッファーへのポインター。 RtlAddAccessAllowedAceEx は、この ACL の末尾にアクセス許可 ACE を追加します。 ACE は、 ACCESS_ALLOWED_ACE 構造体の形式です。
[in] AceRevision
追加する ACE の ACL リビジョン レベル。 この値は、ACL_REVISIONまたはACL_REVISION_DSできます。 ACL にオブジェクト固有の ACE が含まれている場合は、ACL_REVISION_DSする必要があります。
[in] AceFlags
追加する ACE の継承フラグを指定するビットマスク。
[in] AccessMask
指定した SID に付与するアクセス権を指定する 1 つ以上の ACCESS_MASK フラグのビットマスク。 詳細については、ZwCreateFile の DesiredAccess パラメーターの説明を参照してください。
[in] Sid
アクセス権が付与されているユーザー、グループ、またはログオン アカウントを表す SID 構造体へのポインター。
戻り値
RtlAddAccessAllowedAceEx は、次のいずれかの値を返すことができます。
リターン コード | 説明 |
---|---|
STATUS_SUCCESS | ACE が正常に追加されました。 |
STATUS_ALLOTTED_SPACE_EXCEEDED | 新しい ACE が ACL に適合しません。 より大きな ACL バッファーが必要です。 ACL のサイズを計算する方法の詳細については、「 RtlCreateAcl」を参照してください。 |
STATUS_INVALID_ACL | 指定された ACL が正しく形成されていません。 |
STATUS_INVALID_PARAMETER | AceFlags パラメーターが無効です。 |
STATUS_INVALID_SID | 指定された SID 構造体が構造的に有効ではありません。 |
STATUS_REVISION_MISMATCH | 指定された AceRevision が不明であるか、ACL の AceRevision と互換性がありません。 |
注釈
RtlAddAccessAllowedAce とは異なり、このルーチンは継承 ACE フラグを設定します。
セキュリティとアクセス制御の詳細については、 ドライバー開発者向けの Windows セキュリティ モデル と、次のような Windows SDK のこれらのトピックに関するドキュメントを参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 |
対象プラットフォーム | ユニバーサル |
Header | ntifs.h (Ntifs.h、FltKernel.h を含む) |
Library | NtosKrnl.lib |
[DLL] | NtosKrnl.exe |
IRQL | <= APC_LEVEL |
こちらもご覧ください
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示