アクセス制御リスト

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動: 案内, 検索

アクセス制御リスト(アクセスせいぎょリスト、Access Control ListACL)とは、オブジェクト(受動体)に付属する許可属性のリスト。コンピュータセキュリティにおけるアクセス制御を実現するために、誰にどのリソース(受動体)に対するどの操作を許可するかを列挙したもの。例えば、ファイル X についてのアクセス制御リストに要素 (Alice, delete) があれば、Alice はファイル X を削除することができる。

目次

[編集] アクセス制御リストに基づくセキュリティモデル

アクセス制御リストに基づくセキュリティモデルでは、行動体(subject, 人間やプロセス)が受動体(object, システムやファイル)への操作を要求したとき、システムはまず許可属性のリストを検査して、その操作を実行してよいかどうかを決定する。アクセス制御リスト (ACL) に基づくセキュリティモデルの定義の鍵となるのは、ACLがどう修整されるかである。つまり、各受動体のACLに対して誰がどんな修整をすることが許されているかである。

ACLを用いる制御には2種類ある。任意アクセス制御強制アクセス制御である。任意アクセス制御とは、受動体の作成者か所有者がその受動体へのアクセスを完全に制御できるものをいう(その受動体を他人がアクセスできるようにACLを変更することを含む)。強制アクセス制御とは、ACLに記載されている許可属性を書き換えるときにシステム全体からの制限を受けるものをいう。

伝統的なACLシステムでは各利用者に許可を与えてしまい、その結果、多数の利用者をもつシステムにおいてはやっかいなことになる。現代的なロールベースアクセス制御と呼ばれる方法では、許可はいったんロール(役割)に対して割り当てられ、それが利用者に割り当てられる。

[編集] ファイルシステムのアクセス制御リスト

ファイルシステムにおいては、プロセスの利用者識別子 (POSIX では実効UID) が制御の主な手段となる。 アクセス制御リスト (ACL) はデータ構造(通常は配列)をもち、特定のシステムオブジェクト(プログラム、プロセス、ファイル)への個々のユーザーやグループの権利を示す要素から構成される。これらの要素は、オペレーティングシステム Microsoft WindowsOpenVMSではアクセス制御エントリ (ACE) と呼ばれている。アクセス可能なオブジェクトはACLへの識別子をもっている。特権またはパーミッションは、あるユーザーがそのオブジェクトについて何ができるか(読み、書き、実行)を決定する。実装によっては、ACEは所有者かどうか、または所有者のグループかどうかにかかわらずオブジェクトのACLを制御できる。

アクセス制御リストは概念であり、その実装はオペレーティングシステムによって異なるが、POSIXの「標準」がある(POSIX security drafts の .1e と .2c は対象範囲を広げすぎたため標準策定が完了しないとして破棄された。しかし、ACLについてよく書かれた部分は広く実装され「POSIX ACL」として知られるようになった)。

ACLの実装は非常に複雑になる可能性がある。ACLは様々なオブジェクト、ディレクトリや他のコンテナ、コンテナ内のコンテナなどに適用できる。ACLは要求されるすべてのセキュリティ対策を実現できるわけではなく、きめ細かいケイパビリティに基づくアクセス制御システムのほうが良いこともある(その場合、アクセスしようとするオブジェクトに対してアクセス対象のオブジェクトから権限が譲渡され、もっと細かい制御が可能となる)。

[編集] ネットワークにおけるアクセス制御リスト

ネットワークでは、Access Control List (ACL) はTCP/IPのポート番号とそのホスト上で使えるデーモンのリストを意味する。つまり、ホストがネットワークに対して提供しているサービスのリストである。個々のサーバだけでなくルーターもネットワークACLをもっている。この場合のアクセス制御リストは双方向のトラフィックを制御するもので、例えばファイアーウォールと深い関係がある。

この記述は GNU Free Documentation License のもとに公開されているコンピュータ用語辞典『 Free On-line Dictionary of Computing (FOLDOC) 』に基づいています。

[編集] 関連項目

[編集] 外部リンク

以下、英文

個人用ツール
名前空間

変種
操作
案内
ヘルプ
ツールボックス
他の言語