今回はアクセス権の話です。主にファイルサーバーの運用時のお話になると思いますが、ファイル共有はいつでもどこでも(クライアントOSでも)簡単にできますので、すべてに関連するお話ですのでしっかり押さえておきましょう。
NTFSアクセス権
まずはNTFSアクセス権です。これはNTFSでフォーマットされたドライブであれば、すべてのフォルダ、ファイルが持っています。逆に言うと、FATでフォーマットされている場合にはファイルシステムとしてのアクセス権は設定できません。なので、この点だけをみてもNTFSアクセス権を採用すべきなわけです。
適当にファイルやフォルダのプロパティを開くと、「セキュリティ」タブがあります。
ここで、誰がどのような権限を持つかということを詳細に設定できます。エントリを追加するには[追加]を押して、エントリを追加し、アクセス権を設定することができます。
NTFSアクセス権の継承
新しいエントリは追加できますが、すでに登録されているエントリ(上記の例だとAdministratorsの権限)に関してはグレーアウトされていて編集できません。これはNTFSアクセス権が”継承”されているためです。継承の様子は[詳細設定]の中で確認できます。
つまり、上の階層で設定されたセキュリティの設定は基本的に子供は受け継ぐようにできているのです。自由に編集できるようにするためには明示的に継承をしないようにさせる必要があります。
この操作は[詳細設定]の中の[親からの継承可能なアクセス許可をこのオブジェクトと子オブジェクトすべてに伝達できるようにし、それらをここで明示的に定義されているものに含める]という長ったらしいチェックボックスを外すことで実現できます。
チェックボックスを外そうとすると上記のように説明がなされて、現在の設定をコピーするのか、一度すべて削除するのかを選択することができます。どちらを選んでも最終的に設定したいことに変化があるわけではないので、つど、効率の良い方を選べばよいです。
上記の画像は[コピー]を選んだ場合ですが、継承元がすべて[継承なし]になり今まで編集できなかったエントリも編集できるようになっていることがわかります。
自由にアクセス権をつけるためにはバンバン継承を切る必要があり、そうすればいくらでも自由に設定できるのですが、はたしてそれで管理上良いのか?という問題が残ります。場合にもよりますが、たいていの場合はあまり良いことではないでしょう。
このあたりの話はファイルサーバーの設計の話にもつながってくるので詳細は別のエントリで書きたいと思います。
所有者
[詳細設定]ボタンの中に[所有者]というタブがあります。
ここではフォルダ、ファイルの現在の所有者の確認と、所有者の変更が行えます。つまり、他の人が作ったフォルダ、ファイルを自分のものにしてしまえるわけです。
何のためにこのような機能があるのかというと、管理者がきちんと全てのフォルダ、ファイルを管理できるようにするためです。この機能がないと、誰かが誰も触れないようなセキュリティ設定をしてしまった後で、そのアカウントすら(退社などで)消してしまったような時に打つ手がなくなってしまうからです。
共有のアクセス権
共有のアクセス権はフォルダのプロパティの[共有]タブ内の[アクセス許可]から設定できます。
NTFSのアクセス権と比べるとはるかにシンプルです。権限も3種類しかありませんし、継承という概念もありません。
共有のアクセス権とNTFSのアクセス権の適用タイミング
それぞれの設定がどのように適用されるのか、というと、以下のようなルールになっています。
- ファイル共有を経由したアクセスの時にのみ共有のアクセス権が適用される
- 同じファイル、フォルダへのアクセスであっても、別のファイル共有を経由してアクセスした場合には、異なる共有アクセス権が適用される
- NTFSのアクセス権は常に適用される(「別経路」が存在しないから)
- 共有のアクセス件とNTFSのアクセス権で異なるアクセス権の場合には、両方で許可されていることのみが行える
一番気をつけなくてはいけないのは、「共有のアクセス権でアクセス制限しているのでNTFSのアクセス権は制限していない」場合に、「直接コンソールでログインされるとアクセスできてしまう」ということです。気をつけましょう。
また、それぞれの特徴として以下のようなものがあります。
- NTFSのアクセス権はファイル、フォルダ単位の設定であるため、半永久的に残る。場所を移動した場合でも残る。(※例外あり。詳細は「コピー&ペーストとカット&ペーストではNTFSアクセス権が異なる」参照。)
- 共有のアクセス権は共有を解除するときれいに無くなる。
共有のアクセス権に細かくエントリを追加していると、それを意図せず解除してしまった場合には、同じ設定を再度行うことが困難になりますので、気をつけましょう。
どのようにアクセス制御すべきか
「で、結局どうしたらいいの?」という問いに関しては色々な答えが考えられるでしょうが、私の方針は以下のようなものです。
- 共有のアクセス権は常にEveryoneフルコントロール
- NTFSのアクセス権でのみ制御する
共有のアクセス権とNTFSアクセス権の2重管理は嫌ですし、共有のアクセス権だけでコントロールしようとするのは抜け道があるので嫌です。そうすると必然的にこのような方針になると思います。
「いや、それだとこういった問題がある」「もっとこうしたほうがいい」などコメントありましたら、是非いただければと思います。
コメント
Masahiko Ebisudaさま
ご回答ありがとうございます。
当方の返信が遅くなり申し訳ございません。
ご説明頂いた内容で実機検証を行い、「別のファイル共有を経由してアクセスした場合」が理解できました。ありがとうございました。
moeさん。わざわざ返信ありがとうございます!理解できたということで良かったです。
他にも何かあれば質問して下さい。出来る範囲で答えます!
本記事の「共有のアクセス権」項に記載されている「別のファイル共有を経由してアクセスした場合」が、具体的にどのようなオペレーションを指すのかご教示頂きたいです。
例えば、
・192.168.1.1サーバに、kyoyu1とkyoyu2という共有フォルダを作成したとします。
・太郎さんは、普段、kyoyu1フォルダを使用するので、自分が使う端末で「\\192.168.1.1\kyoyu1」をネットワークドライブ(X:)」に割当てています。
・太郎さんは、作成されたネットワークドライブアイコンをダブルクリックし、kyoyu1にアクセスします。
このような状態で、「別のファイル共有を経由してkyoyu1にアクセスする」ためには、どのようなオペレーションをしたら良いでしょうか。
moeさん。
質問ありがとうございます!
意図をわかりやすくするために、kyoyu1に具体的なパスを割り当ててみます。また、共有のアクセス権も仮定してみます。
■kyoyu1
パス:c:\share\kyoyu1
共有アクセス権:Read/Write
太郎さんは「Xドライブ->\\192.168.1.1\kyoyu1」という対応付けの中で普段はアクセスしています。
ここで実はc:\shareにも読み取りの共有があったとします。
■share
パス:c:\share
共有アクセス権:Readのみ
ここで、
1. \\192.168.1.1\share\kyoyu1\hoge.txt
2. X:\hoge.txt
3. \\192.168.1.1\kyoyu1\hoge.txt
の3つは実際には同じファイルを指しますが、2,3は読み書きできるのに対して1では読むことはできても書くことはできません。
このように、同じファイルであってもアクセスする共有が異なることで、共有のアクセス権の違いにより出来る事が異なることを言おうとしています。
ちょっと例が良くないかもしれませんが…。
お忙しいのに本当にありがとうございます。
すいませんもしよろしければこの間教えていただいたサイトの日本語のサイトがあればお教えいただけませんでしょうか
^^;
すいません。日本語の情報は見当たらないですね…。
早々のレスありがとうございます^^
なるほど容量制限ゆるくせんとだめなんですね
早速みてみます^^
うううぜひお願いいたします 涙眼w
さしあたってはDfsrPrivateの中身の出し方あたりをお教えいただけるとありがたいです^^
テラステーション2台つかってdfsで相互同期とって運用したところファイルが消えたとの苦情が
殺到してます。。
Junさん
http://blogs.technet.com/b/askds/archive/2007/09/04/where-s-my-file-root-cause-analysis-of-frs-and-dfsr-data-deletion.aspx
とりあえず上記のページを読めば追いかけたり、削除されてしまったファイルを取り出したりできると思います。削除されたアイテムの保持は容量制限がありますので、トラブル中であれば早急に制限をゆるくしておくべきだと思います。
時間ができたらブログ記事にしようと思いますが、ここのところなかなかに忙しいので、いつになるかはお約束できないので・・・。
追加で何かあればコメントください。
junさん。コメントありがとうございます。嬉しいです。
DFSですね。どういった痛い目に合っているのか興味がありますが・・・、今度時間が取れる時にDFSについても書いてみますね!
非常にわかりやすかったというかやっと意味がわかりました
ありがとうございます
ps
いまdfsで痛い目にあっているのでよろしければおしえていただきたいです
[…] アクセス権の理解(NTFSアクセス権と共有アクセス権) […]
[…] アクセス権の理解(NTFSアクセス権と共有アクセス権) – WindowsServer管理者… […]
非常にわかりやすかったです。勉強になりました。
>kanekoさん、tomさん
コメントありがとうございます。少しでもお役に立てたようなら良かったです。
とてもわかりやすくてためになりました。
勉強になります。ありがとうございました。