次の方法で共有


FltQuerySecurityObject 関数 (fltkernel.h)

FltQuerySecurityObject 、オブジェクトのセキュリティ記述子のコピーを取得します。

構文

NTSTATUS FLTAPI FltQuerySecurityObject(
  [in]            PFLT_INSTANCE        Instance,
  [in]            PFILE_OBJECT         FileObject,
  [in]            SECURITY_INFORMATION SecurityInformation,
  [in, out]       PSECURITY_DESCRIPTOR SecurityDescriptor,
  [in]            ULONG                Length,
  [out, optional] PULONG               LengthNeeded
);

パラメーター

[in] Instance

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

[in] FileObject

セキュリティ記述子が照会されているオブジェクトのファイル オブジェクト ポインター。 このパラメーターは必須であり、NULL することはできません。

[in] SecurityInformation

SECURITY_INFORMATION 値。 このパラメーターは必須であり、次のいずれかである必要があります。

SecurityInformation 値 意味
OWNER_SECURITY_INFORMATION オブジェクトの所有者識別子が照会されています。 READ_CONTROL アクセスが必要です。
GROUP_SECURITY_INFORMATION オブジェクトのプライマリ グループ識別子が照会されています。 READ_CONTROL アクセスが必要です。
DACL_SECURITY_INFORMATION オブジェクトの随意アクセス制御リスト (DACL) が照会されています。 READ_CONTROL アクセスが必要です。
SACL_SECURITY_INFORMATION オブジェクトのシステム ACL (SACL) が照会されています。 ACCESS_SYSTEM_SECURITY アクセスが必要です。

[in, out] SecurityDescriptor

指定したオブジェクトのセキュリティ記述子のコピーを受け取る、呼び出し元が指定した出力バッファーへのポインター。 SECURITY_DESCRIPTOR 構造体は自己相対形式で返されます。 このパラメーターは省略可能であり、NULL できます。

[in] Length

SecurityDescriptor バッファーのサイズ (バイト単位)。

[out, optional] LengthNeeded

SecurityDescriptor パラメーターによって指されるバッファーに返されたコピーされたセキュリティ記述子を格納するために必要なバイト数を受け取る呼び出し元によって割り当てられた変数へのポインター。 このパラメーターは省略可能であり、NULL できます。

戻り値

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

リターン コード 形容
STATUS_ACCESS_DENIED
呼び出し元に必要なアクセス権がありませんでした。 これはエラー コードです。
STATUS_BUFFER_TOO_SMALL
バッファーが小さすぎてセキュリティ記述子を格納できません。 セキュリティ情報がバッファーにコピーされませんでした。 これはエラー コードです。

備考

セキュリティ記述子は、絶対形式でも自己相対形式でもかまいません。 自己相対形式では、構造体のすべてのメンバーが連続してメモリ内に配置されます。 絶対形式では、構造体にはメンバーへのポインターのみが含まれます。

NTFS ファイル システムでは、ファイルのディスクに書き込まれるセキュリティ記述子のサイズに 64 KB の制限が適用されます。 (FAT ファイル システムは、ファイルのセキュリティ記述子をサポートしていません)。したがって、SecurityDescriptor パラメーターが指す 64 KB のバッファーは、返された SECURITY_DESCRIPTOR 構造体を保持するのに十分な大きさであることが保証されます。

FileObject パラメーターが指すオブジェクトは、名前付きデータ ストリームを表すことができます。 名前付きデータ ストリームの詳細については、「FILE_STREAM_INFORMATION」を参照してください。

セキュリティとアクセス制御の詳細については、Microsoft Windows SDK のドキュメントを参照してください。

必要条件

要件 価値
ターゲット プラットフォーム 万国
ヘッダー fltkernel.h (Fltkernel.h を含む)
ライブラリ FltMgr.lib
DLL Fltmgr.sys
IRQL PASSIVE_LEVEL

関連項目

FILE_STREAM_INFORMATION

SECURITY_DESCRIPTOR

SECURITY_INFORMATION