Oracle ASMファイル・アクセス制御を管理するには、ACCESS_CONTROL.ENABLED
およびACCESS_CONTROL.UMASK
ディスク・グループ属性を設定する必要があります。ALTER
DISKGROUP
SQL文でディスク・グループを変更して属性を設定するか、またはASMCMD setattr
コマンドを使用して属性を設定できます。ASMCMD setattr
コマンドの詳細は、「setattr」を参照してください。
ファイル・アクセス制御を既存のディスク・グループに対して設定した場合、作成済のファイルはすべてのユーザーからアクセス可能なままになります。これを避けるには、ALTER
DISKGROUP
SET
PERMISSION
SQL文を実行するか、ASMCMD chmod
コマンドを実行して権限を制限します。ASMCMD chmod
コマンドの詳細は、「chmod」を参照してください。
Oracle ASMファイル・アクセス制御を有効にするには、COMPATIBLE.ASM
およびCOMPATIBLE.RDBMS
ディスク・グループ属性を11.2
以上に設定する必要があります。ディスク・グループの互換性属性の詳細は、「ディスク・グループの互換性」を参照してください。
Oracle ASMファイル・アクセス制御を制御するディスク・グループ属性は次のとおりです。
この属性により、Oracle ASMファイル・アクセス制御がディスク・グループに対して有効かどうかが決まります。
値はtrue
またはfalse
です。デフォルトは、false
です。
属性がtrue
に設定されている場合、Oracle ASMファイルへのアクセスはアクセス制御の対象となります。false
に設定した場合、すべてのユーザーがディスク・グループ内のすべてのファイルにアクセスできます。他のすべての操作は、この属性とは関係なく動作します。
この属性により、Oracle ASMファイルの作成時に、ファイルの所有者であるユーザー、同じユーザー・グループのユーザー、およびユーザー・グループに属さない他のユーザーに対して、どの権限をマスクするかが決まります。この属性は、ディスク・グループ内のすべてのファイルに適用されます。
値は3桁の数字{0
|2
|6
} {0
|2
|6
} {0
|2
|6
}の組合せです。デフォルトは066
です。
0
に設定すると、何もマスクされません。2
に設定すると、書込み権限がマスクされます。6
に設定すると、読取り権限と書込み権限の両方がマスクされます。
ACCESS_CONTROL.UMASK
ディスク・グループ属性を設定する前に、ACCESS_CONTROL.ENABLED
属性をtrue
に設定してOracle ASMファイル・アクセス制御を有効にしておく必要があります。
例4-11に、SQL*Plusを使用してディスク・グループに対するOracle ASMファイル・アクセス制御を有効にする方法を示します。この例では、umask
権限設定は026
で、これにより、所有者には読取り/書込みアクセス(0
を使用して何もマスクしない)、グループのユーザーには読取りアクセス(2
を使用して書込み権限をマスク)が有効になり、グループに属さない他のユーザーにはアクセスが許可されません(6
を使用してすべてのアクセスをマスク)。
例4-11 Oracle ASMファイル・アクセス制御の設定
ALTER DISKGROUP data1 SET ATTRIBUTE 'access_control.enabled' = 'true'; ALTER DISKGROUP data1 SET ATTRIBUTE 'access_control.umask' = '026';