共有フォルダへのアクセス権は共有アクセス許可と NTFS アクセス許可の両方の影響を受ける

共有フォルダにアクセスできない?

Windows サーバで共有フォルダの設定をしているときに、共有設定のほうでアクセス許可をしているにもかかわらず、共有フォルダにアクセスできませんでした。

共有フォルダのアクセス権設定画面はこんな感じ(画面は Windows 10 のものです)。

共有アクセス権の設定画面

ここにユーザーを追加して、変更のアクセス許可を与えたのですが、そもそも共有フォルダにアクセスできませんでした。

調べてみると、共有アクセス権に加えて、NTFS アクセス権を付与する必要があるそうです。NTFS アクセス権の設定画面はこちら。

NTFS アクセス権の設定画面

つまり、共有フォルダにアクセスする際には、①共有アクセス権の有無をチェックされ、さらに、②NTFS アクセス権の有無をチェックされるわけです。そして、両方のアクセス権がなければアクセスが拒否されます。

特定のユーザーのみがアクセスできる共有フォルダを作成するベストプラクティス

共有アクセス権と NTFS アクセス権の両方にユーザーごとの設定をする

共有アクセス権と NTFS アクセス権の両方にユーザーごとに設定をするのが最も手堅いのでしょうが、アクセス権の設定がずれてしまう(例えば共有アクセス権は変更可なのに、NTFS アクセス権を与えていない、という冒頭のケース)と、共有フォルダにアクセスできないときに問題の切り分けが難しくなります。

共有アクセス権のみユーザーごとの設定をする

共有アクセス権をユーザーごとに設定する方法は、ファイル共有の設定をする際についでに設定できるのでわかりやすいですし、共有するフォルダには通常、変更の NTFS アクセス権が継承されているので、アクセスできないという問題に遭遇しにくいというメリットがあります。

この方法の弱点は、例えば、D:\share に対して「共有1」を設定し、ユーザー A にのみアクセス権を付与し、D:\share\test に対して「共有2」を設定し、ユーザー B にのみアクセス権を付与した場合、ユーザー A は「共有1」の設定を利用して D:\share\test にアクセスできるため、「ユーザー A は、D:\share 以下のうち、D:\share\test のみアクセス不可(ユーザー B のみアクセス可)」というアクセス権を設定することができません。

また、共有ではなく、リモートアクセスなどでサーバに直接ログインしたときには、共有のアクセス権は適用されないので、フォルダの中身を見ることができてしまいます。

NTFS アクセス権のみユーザーごとの設定をする

結論としては、NTFS アクセス権のみユーザーごとの設定を行い、共有アクセス権は Everyone にフルコントロール(または共有を利用するユーザーに対して与える最大の権限)を付与する方法がベストではないかと思います。共有アクセス権では設定できなかった「ユーザー A は、D:\share 以下のうち、D:\share\test のみアクセス不可(ユーザー B のみアクセス可)」も NTFS アクセス権であれば設定可能です。

ただ、NTFS アクセス権は、アクセス権の種類や継承など仕組みを理解するのに多少の学習コストがかかります。NAS としての利用のみで、シンプルに運用したいという場合には、共有アクセス権でコントロールすることを検討してもよいかもしれません。

この記事を書いた人
グッドネイバー

“ Webに悩むお客さまの「よき隣人」でありたい ” をモットーに、Web システム開発(主に Laravel)、Web マーケティング支援の仕事をしています。お仕事のご依頼・ご相談はこちらからお気軽にどうぞ。