ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
Solaris のシステム管理 (セキュリティサービス) Oracle Solaris 10 8/11 Information Library (日本語) |
パート II システム、ファイル、およびデバイスのセキュリティー
特殊なファイルアクセス権 (setuid、 setgid、 スティッキービット)
実行可能ファイルを原因とするセキュリティーへの悪影響を防止する
セキュリティーリスクのあるプログラムからの保護 (作業マップ)
13. Oracle Solaris の暗号化フレームワーク (概要)
14. Oracle Solaris の暗号化フレームワーク (手順)
19. Oracle Solaris Secure Shell の使用 (手順)
次の作業マップは、UFS ファイルの ACL を表示する、ACL を変更する、ほかのファイルへ ACL をコピーするといった作業について説明した箇所を示しています。
|
% ls -l filename
filename には、ファイルまたはディレクトリを指定します。
出力のモードフィールドの右側にプラス記号 (+) が表示されているときは、そのファイルに ACL が設定されています。
例 6-6 ファイルに ACL が設定されているかどうかを検査する
次の例では、ch1.sgm ファイルに ACL が設定されています。ACL は、モードフィールドの右側にあるプラス記号 (+) で示されています。
% ls -l ch1.sgm -rwxr-----+ 1 stacey techpubs 167 Nov 11 11:13 ch1.sgm
% setfacl -s user::perms,group::perms,other:perms,mask:perms,acl-entry-list filename ...
ファイルに対して ACL を設定します。すでに ACL が設定されている場合、新しい ACL に置き換えます。このオプションには、少なくとも user::、 group::、 および other:: のエントリを指定する必要があります。
所有者のアクセス権を指定します。
グループメンバーのアクセス権を指定します。
所有者またはグループのメンバー以外のユーザーのアクセス権を指定します。
ACL マスクのアクセス権を指定します。マスクは、ユーザー (所有者以外) とグループに許される最大アクセス権を示します。
ファイルまたはディレクトリ上で特定のユーザーとグループに設定する 1 つまたは複数の ACL エントリのリストを指定します。ディレクトリ上でデフォルトの ACL エントリを設定することもできます。有効な ACL エントリについては、表 6-7 と表 6-8 を参照してください。
ACL を設定する 1 つまたは複数のファイルまたはディレクトリを指定します。filename が複数ある場合は、スペースで区切ります。
注意 - すでにファイル上に ACL が存在する場合、-s オプションを指定すると、ACL 全体が新しい ACL に置き換えられます。 |
詳細は、setfacl(1) のマニュアルページを参照してください。
% getfacl filename
詳細は、「ファイルに ACL が設定されているかどうかを検査する方法」を参照してください。
例 6-7 ファイルの ACL を設定する
次の例では、ch1.sgm ファイルのアクセス権を設定しています。所有者には読み取り権と書き込み権が設定され、グループには読み取り専用権が設定され、その他のユーザーには何も設定されません。また、ユーザー anusha にはこのファイルの読み取り権および書き込み権が与えられ、ACL マスクには読み取り権および書き込み権が設定されます。これは、ユーザーやグループは実行権を持たないことを意味します。
% setfacl -s user::rw-,group::r--,other:---,mask:rw-,user:anusha:rw- ch1.sgm % ls -l total 124 -rw-r-----+ 1 stacey techpubs 34816 Nov 11 14:16 ch1.sgm -rw-r--r-- 1 stacey techpubs 20167 Nov 11 14:16 ch2.sgm -rw-r--r-- 1 stacey techpubs 8192 Nov 11 14:16 notes % getfacl ch1.sgm # file: ch1.sgm # owner: stacey # group: techpubs user::rw- user:anusha:rw- #effective:rw- group::r-- #effective:r-- mask:rw- other:---
次の例では、ch2.sgm ファイルのアクセス権を設定します。所有者には読み取り権、書き込み権、および実行権が設定され、グループには読み取り専用権が設定され、その他のユーザーには何も設定されません。また、ACL マスクには読み取り権が設定されます。さらに、ユーザー anusha には読み取り権と書き込み権が与えられます。ただし、ACL マスクの設定により、anusha のアクセス権は読み取り専用です。
% setfacl -s u::7,g::4,o:0,m:4,u:anusha:7 ch2.sgm % getfacl ch2.sgm # file: ch2.sgm # owner: stacey # group: techpubs user::rwx user:anusha:rwx #effective:r-- group::r-- #effective:r-- mask:r-- other:---
% getfacl filename1 | setfacl -f - filename2
ACL のコピー元ファイルを指定します
ACL のコピー先ファイルを指定します
例 6-8 ACL をコピーする
次の例では、ch2.sgm の ACL が ch3.sgm にコピーされます。
% getfacl ch2.sgm | setfacl -f - ch3.sgm
% setfacl -m acl-entry-list filename ...
% getfacl filename
例 6-9 ファイルの ACL エントリを変更する
次の例では、ユーザー anusha のアクセス権を読み取りおよび書き込みに変更します。
% setfacl -m user:anusha:6 ch3.sgm % getfacl ch3.sgm # file: ch3.sgm # owner: stacey # group: techpubs user::rw- user::anusha:rw- #effective:r-- group::r- #effective:r-- mask:r-- other:r-
次の例では、book ディレクトリのデフォルトアクセス権を変更します。グループ staff のデフォルトのアクセス権を読み取りに変更し、さらに、ACL マスクのデフォルトアクセス権を読み取りおよび書き込みに変更します。
% setfacl -m default:group:staff:4,default:mask:6 book
% setfacl -d acl-entry-list filename ...
指定した ACL エントリを削除します。
ファイルまたはディレクトリから (アクセス権を指定せずに) 削除する ACL エントリのリストを指定します。特定のユーザーとグループの ACL エントリとデフォルトの ACL エントリ以外は削除できません。有効な ACL エントリについては、表 6-7 と表 6-8 を参照してください。
1 つまたは複数のファイルまたはディレクトリを空白で区切って指定します。
setfacl -s コマンドを使用してファイルのすべての ACL エントリを削除してから、指定した新しい ACL エントリで置き換えることもできます。
% getfacl filename
例 6-10 ファイルから ACL エントリを削除する
次の例では、ch4.sgm ファイルからユーザー anusha を削除します。
% setfacl -d user:anusha ch4.sgm
% getfacl [-a | -d] filename ...
指定したファイルまたはディレクトリのファイル名、所有者、グループ、ACL エントリを表示します。
指定したディレクトリのファイル名、所有者、グループ、デフォルトの ACL エントリ (存在する場合) を表示します。
1 つまたは複数のファイルまたはディレクトリを空白で区切って指定します。
複数のファイル名をコマンド行に指定した場合は、各 ACL エントリの間に空白行が表示されます。
例 6-11 ファイルの ACL エントリを表示する
次の例は、ch1.sgm ファイルのすべての ACL エントリを示します。ユーザーエントリとグループエントリの隣りの #effective: は、ACL マスクによって変更されたあとのアクセス権の設定を示します。
% getfacl ch1.sgm # file: ch1.sgm # owner: stacey # group: techpubs user::rw- user:anusha:r- #effective:r-- group::rw- #effective:rw- mask:rw- other:---
次の例は、book ディレクトリのデフォルトの ACL エントリを示します。
% getfacl -d book # file: book # owner: stacey # group: techpubs user::rwx user:anusha:r-x #effective:r-x group::rwx #effective:rwx mask:rwx other:--- default:user::rw- default:user:anusha:r-- default:group::rw- default:mask:rw- default:other:---