アクセス権

アクセス権 は、オブジェクトに対して特定の操作を実行する権限です。 例えばFILE_READ_DATAアクセス権は、ファイルから読み取る権限を指定します。

オブジェクトへのハンドルを開くときに、オブジェクトに対して実行できる操作に対応するアクセス権のセットを指定します。 システムは、オブジェクトのセキュリティ記述子に対して指定されたアクセス権を確認し、各操作が現在のユーザーに対して許可されているかどうかを確認します。 (詳細については、 セキュリティ記述子を参照してください。)

アクセス権には、次の 2 種類があります。

特定 のアクセス権は、1 つの操作を実行する権限です。 特定のアクセス権は、オブジェクトの種類によって異なります。

汎用 アクセス権は、同様の操作のセットのいずれかを実行する権限です。 汎用アクセス権は、オブジェクトの種類に依存しません。

標準アクセス権 は、すべての種類のオブジェクトに適用される特定のアクセス権です。 例えば、DELETEアクセス権は種類に関係なく、オブジェクトを削除する権限です。 使用可能な標準アクセス権の詳細については、 ACCESS_MASKを参照してください。

オブジェクトには、オブジェクトの種類に依存する特定のアクセス権もあります。 たとえば、FILE_READ_DATAはファイルから読み取る権限を表し、KEY_QUERY_VALUEはレジストリ キーの値エントリを読み取る権限を表します。

オブジェクト型には、オブジェクトからの読み取りまたはオブジェクトへの書き込みの一般的な概念に対応する 0 個以上のアクセス権を持つことができます。 たとえば、FILE_READ_DATAに加えて、ファイル オブジェクトには、ファイルのメタデータ (ファイルの作成時刻など) を読み取るためのFILE_READ_ATTRIBUTESアクセス権があります。 キー オブジェクトには、キーのサブキーを読み取る権限を表すKEY_QUERY_VALUEとKEY_ENUMERATE_SUBKEYSの両方があります。

読み取りまたは書き込みなどの一般的な概念に対応するすべてのアクセス権を簡単に指定するために、システムは汎用アクセス権を提供します。 システムは、オブジェクトの特定のアクセス権の適切なセットに汎用アクセス権をマップします。

システムは、次の汎用アクセス権を提供します。

  • GENERIC_READ

  • GENERIC_WRITE

  • GENERIC_EXECUTE

  • GENERIC_ALL

したがって、システムはGENERIC_READを、ファイルのFILE_READ_DATAとFILE_READ_ATTRIBUTES、およびキーのKEY_QUERY_VALUEとKEY_ENUMERATE_SUBKEYSを含む権限のセットにマップします。 各汎用アクセス権の詳細については、 ACCESS_MASKを参照してください。