| ファイルへのアクセス権 | ファイルに対して許可される操作 |
|---|---|
| READ | ファイルの読み込み ファイルの内容を読むことができる。この操作が許可されていないと,ファイルの内容を表示したり,印刷したりすることができない。 |
| WRITE | ファイルへの書き込み ファイルにデータを書き込むことができる。この操作が許可されていないと,データを追加することができない。 |
| EXECUTE | ファイルの実行/作成 ファイルがイメージ・ファイルであれば実行できる。 |
| DELETE | ファイルの削除 ファイルを削除することができる。この操作が許可されていないと,ファイルを削除することができない。 |
また,これらの操作ができるかどうかは,ユーザごとに設定できます。ユーザは,次の 4 つの種類に分類されます。
| ユーザのタイプ | 説明 |
|---|---|
| SYSTEM (システム) | 特別な権利をもつユーザ。通常は,システム管理者。 |
| OWNER (所有者) | ファイルやディレクトリの所有者。つまり,ファイルやディレクトリを作成したユーザ。 |
| GROUP (グループ) | 所有者と同じグループに登録されているユーザ。システム管理者が登録する。 |
| WORLD (ワールド) | すべてのユーザ。 |
次に保護コードの指定例を示します。ユーザのタイプやアクセス権は英単語の頭一文字を使用して設定することができます。
この例では,次のように設定されています。
| ユーザの タイプ |
許可される操作 |
|---|---|
| SYSTEM | 読み込み (READ),書き込み (WRITE),実行 (EXECUTE),削除 (DELETE) |
| OWNER | 読み込み (READ),書き込み (WRITE),実行 (EXECUTE),削除 (DELETE) |
| GROUP | 読み込み (READ),実行 (EXECUTE) |
| WORLD | なし |
ファイルの保護コードを表示する -- DIRECTORY/PROTECTION
ファイルの保護コードを表示するには,次のようにします。
$ DIRECTORY/PROTECTION ファイル指定
|
ファイルの保護コードを変更する -- SET PROTECTION
ファイルの保護コードを変更するには,次のようにします。
$ SET SECURITY/PROTECTION=(保護コード) ファイル指定
|
日本語 OpenVMS はシステム全体に共通なデフォルトの保護コードを持っています。このデフォルトの保護コードはプロセス単位で変更することができ,変更後に作成するファイルには,変更した保護コードが与えられます。
たとえば,新しくファイルを作成すると,そのファイルにはデフォルトの保護コードが与えられます。また,すでに存在しているファイルの新しいバージョンを作成する場合(エディタを使ってファイルを編集しなおす場合など)は,もとのファイルの保護コードが与えられます。
デフォルトの保護コードを表示する -- SHOW PROTECTION
デフォルトの保護コードを表示するには次のようにします。
$ SHOW PROTECTION
|
デフォルトの保護コードを変更する -- SET PROTECTION
デフォルトの保護コードを変更するには,次のようにします。
$ SET PROTECTION=(保護コード)/DEFAULT
|
$ SET PROTECTION=(S:RWED,O:RWED,G:R,W:R)/DEFAULT
$ SHOW PROTECTION
SYSTEM=RWED,OWNER=RWED,GROUP=R,WORLD=R
|
ディレクトリも 1 つのファイルであり,保護コードが与えられます。ディレクトリの保護はファイルの保護に優先します。つまり,個別ファイルの保護コードである操作が認められていても,ディレクトリの保護コードでその操作が禁止されていればそのファイルの操作はできません。
ディレクトリの保護コードは,1 階層上のディレクトリの保護コードから D(DELETE) を除いたものになっています。ディレクトリの保護コードはディレクトリの作成時に指定することもできます。
$ CREATE/DIRECTORY/PROTECTION=(保護コード) [ディレクトリ指定]
|
また,ディレクトリの保護コードの参照や変更は一般のファイルと同様に行います。
| ディレクトリへのアクセス権 | ディレクトリに対して許可される操作 |
|---|---|
| READ | ディレクトリ・ファイルの内容を見る ファイルの一覧を見ることができる |
| WRITE | ディレクトリ・ファイルの内容の変更 新しいファイルを登録したり,削除できる |
| EXECUTE | ディレクトリの下のファイルを特定してアクセス READ アクセス権がない時だけ意味を持ち,ディレクトリの下のファイルの名前を,ワイルド・カードを使わずにきちんと指定した場合だけ,実行や READ アクセスができる |
| DELETE | ディレクトリ・ファイル自身を削除 ディレクトリ・ファイル自身を削除したり RENAME できる |
ファイルの保護 - UIC - |
ファイルは,保護コードが与えられて保護されるだけでなく, UIC (User Identification Code) が与えられることによっても保護されます。
UIC はユーザを識別する番号であり,システム管理者によってユーザ単位に与えられます。たとえば,[JVMS,YAMADA] のようになります。ユーザは,システムにログインして利用している間,システム管理者に与えられた UIC を持ちます。
ファイルが作成されると,作成を行ったユーザの持っている UIC がそのファイルに付けられます。これをファイルのオーナ UIC を呼びます。
次のようにすると,UIC を見ることができます。
$ DIRECTORY /SECURITY ファイル指定
|
UIC は,次のような形式になっています。
| [g,m] | g : グループ番号 0 〜 37776 の 8 進数 m : メンバ番号 0 〜 177776 の 8 進数 |
| [member] | member : メンバ名 1 〜 31 文字の文字列 |
| [group,member] | group : グループ名 1 〜 31 文字の文字列 |
数字形式の UIC [g,m] と文字形式の UIC [member] は 1 対 1 に対応します。グループ名 (group) は,システム管理者がグループ番号に対応づけて付与します。
ファイルの作成者の UIC と,そのファイルにアクセスするユーザの UIC との比較により,ユーザは次の 4 つのタイプに分類できます。
| ユーザのタイプ | 条件 |
|---|---|
| SYSTEM | 1 〜 10(8 進数)のグループをもつユーザ(メンバ番号は無視) |
| OWNER | ファイルの UIC と同じ UIC をもつユーザ(グループ番号,メンバ番号ともに一致) |
| GROUP | ファイルの UIC のグループ番号と同じグループ番号の UIC をもつユーザ(メンバ番号は無視) |
| WORLD | すべてのユーザ |
ユーザは,必要に応じてファイルに ACL(Access Control List)という保護情報を付加することができます。ACL を利用すると, UIC ベースの保護より,さらに細かい保護設定ができます。
UIC や ACL についての説明は『OpenVMS システム管理者マニュアル』,『OpenVMS ユーザーズ・マニュアル』等を参照してください。