サイト アクセス権限の「継承」にご注意!

SharePoint Server 2007 による社内ポータルを運用する上での注意点です。

MOSS には「アクセス権の継承」という概念があります。

基本的に、特別に指定しない場合は、下位のサイトは上位のサイトのアクセス権を引き継ぎます。また、サイト内のコンテンツ(リストやライブラリ)はサイトのアクセス権を引き継ぎます。また、リストやライブラリ内のアイテム・ファイル・フォルダは、その器のアクセス権を引き継ぎます。

ここまではよろしいでしょうか?

さて、先日、このアクセス権の継承が関係してちょっとした事故が発生しました。担当者が誤ってトップレベルのサイト(つまりホーム)のアクセス権をすべて削除してしまったのです。

何故そんなことが起こったのか?

1.トップレベル配下に新規サイトを作ることにした
2.しかし、作りかけのサイトがユーザに見えるのは望ましくない
3.そこで、アクセス権をすべて外しておくことにした
4.権限の詳細ですべてを選択して削除!
5.─という操作を、誤ってトップレベルで行ってしまった。

意外にありがちなシチュエーションであることがご理解頂けると思います。

さて、このミスの結果、当然、MOSS がシステムアカウントでしかアクセスできない状態になりました。担当者はあわてて、NT AUTHORITY\authenticated users に閲覧権限を追加して現状復帰─出来なかったのです。

このミスによる障害は、当初の予想を大きく越える範囲に影響しました。まず、トップレベルサイト内のすべてのリスト/ライブラリのアクセス権が消し飛びました。このリスト/ライブラリにはアクセス権の継承を切っていた(独自の権限を付与していた)リスト/ライブラリも含まれます。

次に、トップレベルサイトからアクセス権を継承している下位サイトにある、リスト/ライブラリのアクセス権が消し飛びました。ここでも、継承が切られていたリスト/ライブラリも含まれました。

更に、リスト/ライブラリ内に独自のアクセス権(フォルダやアイテム単位など)が設定してあった場合、これも消し飛びました。

結果的に、非常に広範囲で「アクセス権の消失」現象が発生したことになります。

独自のアクセス権が設定してある(アクセス権を継承していない)にもかかわらず、トップサイトにおける変更が影響してしまうのは一見、不合理ですが、これがMOSSの仕様なんですね。

トラブル防止の観点から、ポータル管理者の方には、トップレベルとその下位サイトにおけるアクセス権の継承は、原則として切っておくことを強くお勧めします。


これまでのコメント

  1. sou より:

    AGENT: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727; .NET CLR 3.0.04506; InfoPath.2; .NET CLR 3.5.21022; WWTClient2)
    いつも拝見させていただいております。

    1点、質問があるのですが、
    トップレベルサイトとその下位サイトにおけるアクセス権の継承を切っておけば、その下位サイトにあるにある、リスト/ライブラリのアクセス権は消えないのでしょうか?

  2. saruhiko より:

    AGENT: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0) Sleipnir/2.7.2
    どうも〜
    厳密な検証を経ていないので確実なことは言えないのですが…。
    少なくともこの事件の際、「サイトごとアクセス権の継承を切っていたサイト」のコンテンツは無事でした。
    反対に「サイトは継承してるけど、中のコンテンツは独自アクセス権」というパターンは壊滅し復旧に難儀しました。

  3. sou より:

    AGENT: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727; .NET CLR 3.0.04506; InfoPath.2; .NET CLR 3.5.21022; WWTClient2)
    お返事ありがとうございました。

    私のほうでも検証してみようと思いますが、
    また何かわかりましたら、こちらのサイトにて教えていただけたらと思います。

  4. MUE より:

    AGENT: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30)
    いつも拝見させていただいています。

    同じ事で嵌った事がありましたので知っている事を記載します。ややこしいですがご容赦お願いします。

    サイトのアクセス権変更で独立したアクセス権を設定していたリストやアイテムのアクセス権が消えてしまう件ですが、『アクセス許可レベル「制限付きアクセス」の削除』が原因ではないでしょうか。

    「制限付きアクセス」はリストやアイテムに独立した権限を設定した時に、その受け皿となるサイトのアクセス権(親継承している場合は親のアクセス権)に発生する不思議なアレです。
    「制限付きアクセス」をサイトのアクセス権から削除したときに、その原因となるリストやアイテムの個別アクセス権設定が消えてしまうことはもうご存知だと思います。

    例)
    「サイトA」の中の「リストB」は「グループC」のメンバーのみが参照できるようにアクセス権設定を行なった。
    すると「サイトA」のアクセス権設定において「グループC」が「制限付きアクセス」で追加された。
    よく分からないので「サイトA」のアクセス権設定で「グループC」の「制限付きアクセス」を削除した。
    すると「リストB」から「グループC」のアクセス権が失われた。

    変な仕様です。
    ここで「制限付きアクセス」に対しもう一つ変な仕様が有ります。
    それは、アクセス権表\示画面におけるグループやユーザに対するアクセス許可レベルの表\示エリアにおいて「制限付きアクセス」以外のアクセス許可レベルが設定されている場合、「制限付きアクセス」が表\示されない事です。
    ユーザ/グループ名をクリックしアクセス許可レベル設定画面に移ると、「制限付きアクセス」が実際についているかどうか確認できます。

    ので、サイトのアクセス権設定の際に、認識していなくても「制限付きアクセス」を削除してしまう時が有ります。

    例)
    「サイトA」のアクセス権は「グループC」の「閲覧」で設定。
    「サイトA」の「リストB」アクセス権は「グループC」の「フルコントロール」で設定。
    「サイトA」のアクセス権設定画面では「グループC」の許可レベルは「閲覧」のみで表\示されているが、実際には「グループC」は「制限付きアクセス」の許可レベルも保持しており、サイトのアクセス権設定から「グループC」を削除すると「リストB」のアクセス権設定から「グループC」が消える事になる。

    基本的に「制限付きアクセス」は継承によりアクセス権を共有しているサイト内にしか蔓延りません。
    のでサイトとサブサイトのアクセス権を断ち切っておくと、サブサイトの中のリストやアイテム由来の「制限付きアクセス」はサブサイトの親サイトには発生しない為結果として親サイトのアクセス権設定ミスがあってもサブサイトのリストやアイテムには影響を受けないことになります。
    『「サイトごとアクセス権の継承を切っていたサイト」のコンテンツは無事』の理由がそれです。

    結果的には、「たとえ同じアクセス権でも、大きな区切りごとに継承を切っておく」のがお勧めということでしょうか。

    以上です

  5. saruhiko より:

    AGENT: *Internet Explorer
    詳細なご報告、ありがとうございます!

    > ここで「制限付きアクセス」に対しもう一つ変な仕様が有ります。
    > それは、アクセス権表\示画面におけるグループやユーザに対する
    > アクセス許可レベルの表\示エリアにおいて「制限付きアクセス」
    > 以外のアクセス許可レベルが設定されている場合、「制限付きア
    > クセス」が表\示されない事です。

    これは知りませんでした。
    確かに謎な仕様ですね…

    やはり、ポータルを安定的に稼動させるためには「ある程度の区切りで意図的に継承を切っておく」ことが重要なようです

login

Author

中村 和彦(シンプレッソ・コンサルティング株式会社 代表)が「ユーザ視点の SharePoint 情報」を発信します。元大手製造業 SharePoint 運用担当。現SharePoint コンサルタント。お仕事のお問い合わせはこちらまでお願いします。当ブログにおける発信内容は個人に帰属し所属組織の公式発信/見解ではありません。
FB : 中村 和彦
blog: Be・Better!
MS MVP SharePoint 2009/10-2011/9
MS MVP Office 365 2012/10-2014/9