通常、私たちがwindowsを使う(ログオンする)時は、ユーザー名を選んで(入力して)パスワードを入力します。この行為をwindows側から見ると「何処かの誰かが特定のユーザー アカウント(ユーザー名)を使ってwindowsへのログオン許可を求めている」ことになります。
ユーザー アカウントがユーザー リスト(windowsが維持管理している)に登録済みであり、かつパスワードも正しいことが確認されると、windowsはログオンを許可します。
この章ではユーザーがwindowsのリソースへアクセスした時に、windows内部ではどのような処理が行われているのか、また他のユーザーとの共有はどのように行われるのかを探って行きます。
windowsリソースへのアクセスを無制限に許可すると、システムが不安定になったり破壊される恐れがあります。
システム保護と情報管理のためには、リソースへのアクセスを適切に制御(規制)することが重要です。
こうした観点からwindowsを利用しようとする各個人は、適切に用意(作成)されたユーザー アカウントを使ってログオンすることが求められます。
そしてwindowsのアクセス制御は、ユーザー アカウント毎に割り当てられたアクセス権限に基づいて行われます。
ユーザー アカウントは管理者用と一般用を分けることが望ましく、当然管理者用の方が大きな権限を持っています。
複数のユーザー アカウントを、まとめて1つのグループとすれば管理し易くなります。windowsには予め設定されているグループがいくつかあり、下記はその一例です。
グループ名 | 説明 |
Administrators | 管理者。システムに完全なアクセス権を持ちます。 |
Users | システムに関わるファイルへのアクセスは制限されますが、ほとんどのアプリケーションを実行可能です。 |
Power Users | 制限付きで管理者の権限を持ちます。 |
Guests | 制限付きでUsersと同じ権限を持ちます。 このアカウントは不特定者が一時的に使用するためにあります。 |
- Administratorも一般ユーザーが使用するアカウントも、通常どれかのグループに属しています。
- グループは任意に作成可能です。
- グループには他のグループを含む事が出来ます。
windowsはユーザー アカウントやグループをSID(Security IDentifier : セキュリティ識別子)と呼ぶ特殊な番号で管理しています。SIDはユーザーやグループなどのアカウントを作成した時に、一意の番号として割り振られます。
ログオン後のユーザーが何らかの操作(アクセス)をしたとき、windows内部ではSIDに設定されたアクセス権に基づいてアクセス制御が行われます。
リソース(ファイルやプログラム)に対して行われるアクセス(操作)には、読み取り、書き込み、変更、実行等の種類があり、アクセスの許可(拒否)はこうしたアクセス種類ごとに細かに設定することができます。
さらにアクセスが何処(ローカル or ネットワーク経由)から行われているかの違いによっても、アクセスの許可・拒否の設定を行うことができます。
具体的なアクセス権の設定は、ローカルな設定(セキュリティ)とネットワーク経由に対する設定(共有のアクセス許可)の2種類があり、windowsはこれらのアクセス権設定を参照してアクセス制御を行います。
T.4.1.ローカルとリモート
アクセス権を考える場合、アクセスしているユーザーの位置を意識することは重要です。
windows(及びそれに属するファイル)側からユーザーの種類やアクセスの形態を見た場合、それらを次のように呼びます。
区分 | ユーザーの位置 |
当該 windows にログオン | ネットワーク経由 |
ユーザー種類 | ローカル ユーザー | リモート ユーザー or ネットワーク ユーザー |
アクセス形態 | ローカル アクセス | リモート アクセス or ネットワーク アクセス |
T.4.2.セキュリティ (ローカルのアクセス権)
フォルダやファイルには、ユーザー名やグループ名(実態はSID)に対してアクセスの許可/拒否(アクセス権)を設定する機能があり、windowsはこの設定に基づいてアクセスを制御しています。
ローカルのアクセス権はフォルダ(ファイル)のプロパティにある[セキュリティ](右図)で設定します。
すべてのユーザー(次項のネットワーク経由も含む)のアクセス要求は、[セキュリティ]で設定したアクセス権の制約を受けます。
T.4.3.共有 (ネットワーク経由のアクセス権)
フォルダのプロパティには[セキュリティ]の外に[共有]タブもあって、ここでも[セキュリティ]と同じようにユーザーやグループ(実態はSID)のアクセス権を設定できます。
[共有]のアクセス許可は次の手順で設定します。
- [共有]タブの[このフォルダを共有する]を選択する。
[アクセス許可]のグレーアウトが解除される。(左下図)
- [アクセス許可]をクリックする。
表示される[共有アクセス許可](右下図)に、ユーザーやグループ(実態はSID)のアクセス権を設定する。
ここで設定した[アクセス許可]は、ネットワークを介してアクセスしてくるユーザーに対して適用されます。
ネットワーク越しにアクセスするには、[共有のアクセス許可]および[セキュリティ]の両方でアクセスの許可が設定されていなければなりません。
T.4.4.セキュリティ ディスクリプタ
[セキュリティ]や[共有]に設定したアクセス許可/拒否のデータ(アクセス権)は、どこに記録されるのでしょう。
フォルダやファイルは[セキュリティ ディスクリプタ]と呼ばれるエリアを備えていて、アクセス許可/拒否の設定は、この[セキュリティ ディスクリプタ]に記録されます。
[セキュリティ ディスクリプタ]はユーザーには見えない不可視領域になっていて、フォルダ(ファイル)のプロパティから開くことができます。
T.4.5.複数グループ所属
1つのユーザーは、アクセス権設定の異なる複数のグループに所属することが可能です。
そうした場合のアクセス権は次のように解釈されます。
- 何れかのグループで許可されている項目(変更・読み取り・書き込み等)について、アクセスが可能となります。
- 何れかで拒否が明示的に設定されている場合は、他の所属グループで許可されていても拒否が優先して適用されます。
しています(Home Editionはアクセス権の設定を簡略化しているため)。
windows XP以降のバージョンもほぼ同じと考えて差し支えないでしょう。
vistaの共有については[vista覚書]の[共有]も参照して下さい。