「アクセス制御」の版間の差分

削除された内容 追加された内容
Nallimbot (会話 | 投稿記録)
m ロボットによる 追加: sq:Kontrolli i hyrjes
5行目:
 
== コンピュータセキュリティのアクセス制御 ==
[[コンピュータセキュリティ]]においては、ける'''アクセス制御'''とは、あるサブジェクト(行動体、人間や[[プロセス]])がどのオブジェクト(受動体、システムやファイル)に対して、どのアクセス(読む、み/く、き/実行するできるかを許可したり拒否したりする機能を指す。
 
コンピュータセキュリティによるアクセス制御には、認証 (authentication)、認可 (authorization)、監査 (audit) が含まれる。それらは、物理的機器による手段として[[バイオメトリクス]]、金属錠、<!-- hidden paths って隠し通路? コンピュータとの関係がわからない;もしや隠しディレクトリ? -->[[デジタル署名]]、[[暗号化]]、社会的障壁、人間や自動化システムによる監視などを含むものである。認可は[[ロールベースアクセス制御]]、[[アクセス制御リスト]]、[[XACML]]のようなポリシー言語などで実装されるだろう
 
アクセス制御システムは、基本サービスとして、識別と認証 (Identificationidentification & Authenticationauthentication、I&A)、認可 (Authorizationauthorization)、説明可能性 (Accountabilityaccountability)の基本サービス を提供する。識別と認証はシステムに[[ログ]]できる者を決定し、認可は認証された者ができることを決定し、説明可能性はその[[ユーザー]]が何をしたかを特定する。
 
=== 識別と認証 (I&A) ===
識別と認証は、システムにログンできる者を決定する2段階の処理である。識別は、ユーザー自身が誰であるかをシステムに伝える方法を意味する(例えばユーザー名などを使う)。アクセス制御システムの識別機構はユーザー名やユーザーIDに基づいた比較的簡単な機構である。システムやプロセスの場合、識別は一般に以下のような情報に基づく。
 
* コンピュータ名
* [[MACアドレス]](Media Access Control)
* [[IPアドレス]]
* [[プロセス識別子|プロセスID]] (PID)
 
識別は以下のような方針に基づいて行われる。
 
* ユーザーを完全に個人として特定する。
* ユーザーの地位や組織における重要性などで区別すべきでない(社長やCEOを特別扱いしない)。
* 共有アカウントを使うのを避ける(root、admin、sysadminなど)。
* そのような共有アカウントは説明可能性を否定することにつながり、クラッカーからも狙われやすい。
 
認証はユーザーが主張する識別情報を照合する(例えば、入力された[[パスワード]]とシステムに記憶されているパスワードを比較する)。
 
認証は以下の3つのいずれかに基づいて行われる。
*知識:パスワードや個人識別番号 (PIN) など。そのパスワードやPINを所有者以外は知らないことが前提となる。
*所有物:[[スマートカード]]や[[セキュリティトークン|トークン]]など。アカウントの所有者だけが必要なスマートカードやトークンを持っていることが前提となる。
*生体:指紋、声、網膜、虹彩の特徴など。
 
=== 認可 ===
認可(または確立; Establishment)establishment)は、システム上のユーザーの権利と許可されていること(パーミッション)を定義する。ユーザー(利用者やプロセス)が認証されると、認可機構によってそのユーザーがシステム上でできることが決定される。
 
最近の[[オペレーティングシステム]]は、以下の3種類の基本型を拡張したパーミッションを定義している。
 
* 読込み (R): ユーザーは
** ファイルの内容を読むことができる
** ディレクトリ内容をリスト表示できる
* 書込み (W): ユーザーは以下のような処理をファイルやディレクトリに次のような処理を加えて変更することができる:
** 追記/追加
** 生成/作成
48行目:
* 実行 (X): ファイルがプログラムなら、ユーザーはそれを実行させることができる。ディレクトリならそこに入ることができる([[ディレクトリ|カレントディレクトリ]])。
 
これらの権利と許可の実装は、「[[任意アクセス制御]]」(DAC) を使うシステムと「[[強制アクセス制御]]」(MAC) を使うシステムとでは異なる。
 
=== 説明可能性(Accountability)(accountability) ===
=== アクセス制御技法 ===
アクセス制御技法は任意と強制に分類される。任意アクセス制御と強制アクセス制御の違いを理解し、様々なアクセス制御手法がどちらに分類されるかを理解することが重要である。<!-- Security+ exam って試験の参考書のつもりだろうか? -->
 
==== 任意アクセス制御 ====
[[任意アクセス制御]] (DAC) はファイル(あるいは他の[[リソース]])の所有者がアクセス方針を決定する。所有者がアクセスを許可する人を決め、その人への認可(与えられる権利)も決定する。
 
DACにおける重要なコンセプトは以下、次の2つである。
* ファイルとデータの所有権:システム内の全オブジェクトに所有者が設定される。このアクセス方針はリソース(ファイル、ディレクトリ、データ、システム資源、デバイスなど)の所有者が決定する。理論的には所有者のいないオブジェクトは保護されない。通常、リソースの所有者はそのリソースの作成者である(ファイルやディレクトリの場合)。
* アクセス権とパーミッション:これらは、所有者が特定のリソースについて個々のユーザーまたはグループに割り当てることができる制御情報である。
 
任意アクセス制御は以下のような技術によって適用される。
* [[アクセス制御リスト]] (ACL) は、与えられたオブジェクトについてサブジェクトごとに権利とパーミッションを割り当てる。ACLは任意アクセス制御を実現する柔軟な手法である。
* [[ロールベースアクセス制御]]は、組織的・機能的なロール(役割)に基づいてサブジェクトのグループ化を行う。これはアクセス権とパーミッションの管理を大幅に単純化するものである。
 
オブジェクトのアクセス権とパーミッションは任意のグループや個人に割り当てられる。個人は複数のグループに属することができる。個人が属する複数のグループごとのパーミッションの累積(いずれかのグループでパーミッションが与えられていれば、そのパーミッションが有効)を許す場合もあるし、その逆(属する全グループでパーミッションが与えられていないと、そのパーミッションは無効)の場合もある。
 
==== 強制アクセス制御 ====
[[強制アクセス制御]] (MAC) は所有者ではなくシステムが決定するアクセス方針である。MACが使われるのは政府や軍の情報のような機密データを扱う多重レベルシステムである。多重レベルシステムとは、サブジェクトやオブジェクトを複数のレベルにクラス分けするコンピュータシステムを意味する。
 
* 機密ラベル (Sensitivitysensitivity Labellabel):MACベースのシステムでは、全サブジェクトと全オブジェクトにラベルが割り当てられる。サブジェクトの機密ラベルはその信頼度を表す。オブジェクトの機密ラベルはアクセスに要求される機密ラベルを示している。あるオブジェクトにアクセスするには、サブジェクトはオブジェクトが要求する機密ラベルかそれ以上のラベルをっていなくてはければならない。
* データのインポートとエクスポート:他のシステムからの情報のインポートと他のシステムへの情報のエクスポート(プリンタを含む)はMACベースシステムの最も危険な部分である。そのような外界とのやり取りにおいても機密ラベルが正しく働くよう日常からメンテナンスを欠かさないようにし、常に機密情報を保護しなければならない。
 
強制アクセス制御は以下のような技術によって適用される。
* ルールベースアクセス制御:このタイプの制御では特定の条件下でのオブジェクトへのアクセスについて規定する。すべてのMACベースシステムは何らかの形でルールベースアクセス制御を実装し、以下のマッチングによってアクセスを許可するか否認するどうかを決定する。
** オブジェクトの機密ラベル
** サブジェクトの機密ラベル(クリアランス)
* ラティス()ベースアクセス制御:複数のオブジェクトや複数のサブジェクトが関わる複雑なアクセス制御に使用される。ラティスモデルとは数学的構造であり、オブジェクトとサブジェクトの組合せの集合から最大の下限値と最小の上限値を定義するものである。
 
==== ロールベースアクセス制御 ====
コンピュータセキュリティにおいて[[ロールベースアクセス制御]] (RBAC) は、認可されたユーザーだけにシステムアクセスを限定する手法で、強制アクセス制御 (MAC) や任意アクセス制御 (DAC) の代替となる新たな手法である。
 
==通信==