FltSetSecurityObject 関数 (fltkernel.h)

FltSetSecurityObject は 、オブジェクトのセキュリティ状態を設定します。

構文

NTSTATUS FLTAPI FltSetSecurityObject(
  [in] PFLT_INSTANCE        Instance,
  [in] PFILE_OBJECT         FileObject,
  [in] SECURITY_INFORMATION SecurityInformation,
  [in] PSECURITY_DESCRIPTOR SecurityDescriptor
);

パラメーター

[in] Instance

呼び出し元の不透明なインスタンス ポインター。 このパラメーターは必須であり、 NULL にすることはできません。

[in] FileObject

セキュリティ状態が設定されるオブジェクトのファイル オブジェクト ポインター。 呼び出し元は、 SecurityInformation パラメーターの説明に示されているテーブルの [意味] 列に指定されたアクセス権を持っている必要があります。 このパラメーターは必須であり、 NULL にすることはできません。

[in] SecurityInformation

SECURITY_INFORMATION 次の 1 つ以上の組み合わせとして設定する情報を指定する値です。

説明
OWNER_SECURITY_INFORMATION オブジェクトの所有者識別子を設定することを示します。 WRITE_OWNERアクセスが必要です。
GROUP_SECURITY_INFORMATION オブジェクトのプライマリ グループ識別子を設定することを示します。 WRITE_OWNERアクセスが必要です。
DACL_SECURITY_INFORMATION オブジェクトの随意アクセス制御リスト (DACL) を設定することを示します。 WRITE_DACアクセスが必要です。
SACL_SECURITY_INFORMATION オブジェクトのシステム ACL (SACL) を設定することを示します。 ACCESS_SYSTEM_SECURITYアクセスが必要です。

[in] SecurityDescriptor

オブジェクトに設定するセキュリティ記述子へのポインター。

戻り値

FltSetSecurityObject は 、次のいずれかのSTATUS_SUCCESSまたは適切な NTSTATUS 値を返します。

リターン コード 説明
STATUS_ACCESS_DENIED 呼び出し元に必要なアクセス権がありませんでした。 これはエラー コードです。
STATUS_ACCESS_VIOLATION SecurityDescriptorNULL ポインターでした。 これはエラー コードです。
STATUS_INSUFFICIENT_RESOURCES オブジェクトのセキュリティ記述子をキャプチャできませんでした。 これはエラー コードです。
STATUS_INVALID_ACL オブジェクトのセキュリティ記述子に無効な ACL が含まれていました。 これはエラー コードです。
STATUS_INVALID_SECURITY_DESCR SecurityDescriptor が有効なセキュリティ記述子を指していません。 これはエラー コードです。
STATUS_INVALID_SID オブジェクトのセキュリティ記述子に無効な SID が含まれていました。 これはエラー コードです。
STATUS_UNKNOWN_REVISION オブジェクトのセキュリティ記述子のリビジョン レベルが不明であるか、サポートされていません。 これはエラー コードです。
STATUS_NOT_IMPLEMENTED FltSetSecurityObject ルーチンは存在しますが、呼び出されたオペレーティング システム環境ではサポートされていません。

注釈

FltSetSecurityObject ルーチンは、Windows Vista 以降に存在し、サポートされています。 Windows 2000、Windows XP、Server 2003 SP1 では、ルーチンは存在しますがサポートされていないため、これらの環境のいずれかで呼び出された場合はSTATUS_NOT_IMPLEMENTEDが返されます。

セキュリティ記述子は、絶対または自己相対形式にすることができます。 自己相対形式では、構造体のすべてのメンバーがメモリ内に連続して配置されます。 絶対形式では、構造体にはメンバーへのポインターのみが含まれます。 詳細については、「絶対および自己相対セキュリティ記述子」を参照してください。

セキュリティとアクセス制御の詳細については、Windows SDK のこれらのトピックに関するドキュメントを参照してください。

要件

要件
対象プラットフォーム ユニバーサル
Header fltkernel.h (Fltkernel.h を含む)
Library FltMgr.lib
[DLL] Fltmgr.sys
IRQL PASSIVE_LEVEL

関連項目

SECURITY_DESCRIPTOR

SECURITY_INFORMATION

ZwQuerySecurityObject

ZwSetSecurityObject

FltQuerySecurityObject