次の方法で共有


SharePoint でアクセス許可スコープを管理する

SharePoint でアクセス許可を効果的に管理することは、セキュリティと適切なユーザー アクセスに不可欠です。 SharePoint サイト内のドキュメントの数が増えるにつれて、設計と実装が不十分な場合、アクセス許可範囲の制限が迅速に発生し、パフォーマンスに悪影響を与える可能性があります。 この記事では、アクセス許可スコープとアクセス制御メカニズムについて説明し、SharePoint 内でアクセス許可スコープを効率的に設計および管理するためのベスト プラクティスを提供します。 まず、アクセス許可スコープに関連するいくつかの主要なコンポーネントを確認します。

主要な概念とコンポーネント

  • Access Control リスト— Access Control リスト (ACL) は、Access Control エントリ (ACE) のセットで構成されます。
  • Access Control エントリ — SharePoint のAccess Control エントリ (ACE) は、プリンシパルと権限マスク (読み取り、読み取り、書き込み) の組み合わせです。
  • プリンシパル - プリンシパルには、個々のユーザーまたは グループを指定できます。 ACL 内の ACE にグループが存在する場合、そのグループのすべてのメンバーに ACE によって指定されたアクセス許可レベルが付与されます。
  • アクセス許可スコープ - アクセス許可スコープは、一意にセキュリティで保護されたオブジェクトです。 つまり、ACL は親とは異なる方法で設定できます。 ファイルとフォルダーは、すべて同じディレクトリ ツリーの一部である場合、同じアクセス許可を持つことができます。 ドキュメント ライブラリ内には最大 50,000 個の一意の ACL を含めることができますが、最高のパフォーマンスを得るには、5,000 以下にしておくことをお勧めします。
  • アクセス許可の継承 - 既定では、サイト コレクションには複数のサイトが含まれています。 各サイトには 1 つ以上のリストとドキュメント ライブラリを含めることができます。そのすべてがサイト コレクションからアクセス許可を継承します。 同様に、フォルダー、リスト、およびドキュメントは、それらを含む親オブジェクトからアクセス許可を継承します。 詳細については、「 SharePoint リストまたはライブラリのアクセス許可をカスタマイズする」を参照してください。
  • 一意のアクセス許可 - 既定では、ファイルまたはフォルダーは、それを含むライブラリまたはフォルダーのアクセス許可を継承します。 ファイルに "一意のアクセス許可" が割り当てられると、親からのアクセス許可の継承が停止され、アクセス許可を個別に設定できます。 これは、ファイルまたはフォルダーに独自のアクセス許可スコープがあることを意味します。

アクセス許可のスコープとアクセス許可の継承

SharePoint では、ACL を使用してオブジェクト (ファイルとフォルダー) のアクセス許可を管理します。 各 ACL は、プリンシパルのアクセス許可を指定する複数の ACE で構成されます。

ドキュメント ライブラリを作成すると、1 つのアクセス許可スコープがあります。つまり、ドキュメント ライブラリ内のすべてのファイルとフォルダーは、ドキュメント ライブラリのルートから ACL を継承 し、同じアクセス許可を共有します。 最初のスコープ数は 1 です。

継承の解除

ファイルまたはフォルダーの継承を解除すると、新しいアクセス許可スコープが作成され、スコープ数が 1 増加します。

継承は、次の 2 つの方法を使用して解除できます。

  • ライブラリの設定に移動すると 、継承を手動で解除 できます。
  • ファイルまたはフォルダーを共有する場合、このアクションはファイルまたはフォルダーのアクセス許可の継承を解除し、ACL (およびフォルダー内のコンテンツ) が親と異なることを許可します。

この記事では、2 番目の方法を使用して継承を中断することの影響について説明し、ライブラリに過剰なスコープ数を追加することを最小限に抑えるためのベスト プラクティスについて説明します。

たとえば、ドキュメント ライブラリを作成し、フォルダーを作成し、(継承を中断する) フォルダーを共有し、75,000 ファイルをフォルダーにアップロードすると、ドキュメント ライブラリのスコープ数は 2 になります。 これは、フォルダー内のすべての 75,000 ファイルがフォルダーのアクセス許可スコープと ACL を共有するためです。 ドキュメント ライブラリには、ルートにある ACL とフォルダーの ACL の 2 つの一意の ACL しかありません。 複数のファイルを作成し、各ファイルをユーザーと個別に共有する場合は、毎回スコープ数を追加します。 これを回避するには、すべてのファイルを同じフォルダーに配置し、代わりにフォルダーを共有します。

アイテム数が多いフォルダーの共有

フォルダーは、100,000 個以下の項目がある場合にのみ継承を解除できます。 フォルダーがこの制限を超え、一意に共有されていない場合、後で一意に共有することはできません。 そのため、100,000 個のアイテムをヒットする前に、大きなフォルダーを共有します。 一意の共有が必要なことがわかっている場合は、0 個のアイテムが含まれているときにフォルダーを共有するのが理想的です。

継承されたアクセス許可を持つファイルの共有 ACL

両方が親フォルダーから継承するため、2 つのファイルに同等の ACL がある場合は、ACL を共有します。 親フォルダーのみがカウントされます。 ただし、2 つのファイルが同じプリンシパルと個別に共有されているために同じ ACL を持つ場合、同じアクセス許可を持つ 2 つのアクセス許可スコープがあります。

スコープ数に対する継承の中断の影響

フォルダーに 2 つのファイルがあり、両方をユーザーと共有する場合、3 つのスコープ (親フォルダー用と個別に共有されたファイルごとに 1 つ) のコストがかかります。 両方のファイルをユーザーと共有し、ファイルの ACL が同一である必要はありません。 ファイルまたはフォルダーの継承を親から解除したら、一意のスコープを作成します。

スコープの制限を超えないように効率的な共有

ユーザーと共有するファイルが 10,000 個あり、各ファイルを個別に共有する場合、10,000 個のスコープが必要になり、推奨される 5,000 個の制限を超えた場合のパフォーマンスが低下します。 ただし、フォルダーを作成し、フォルダーをユーザーと共有した後、10,000 個のファイルをすべてそのフォルダーに移動すると、追加のスコープ (フォルダー) が 1 つだけ発生します。 これらの 10,000 個のファイルをそれぞれ 1 つずつ個別に共有し、同じ ACL を持つ共通フォルダーに移動した場合でも、制限を超えている可能性があります (アクセス許可の継承を復元することで、これらのアクセス許可がユーザーに代わって "クリーン" されることはありません)。

スコープの制限について

ACL に 対して推奨される 5,000 個の制限 は、最大 5,000 個の一意の ACL を持つことができます。 つまり、ACL を含むファイルまたはフォルダーは 5,000 個しか持つことができません。 2 つのファイルが親フォルダーから同じ ACL を継承する場合、その ACL を共有します。 この場合、親フォルダーの ACL のみが制限にカウントされます。 ただし、2 つのファイルに同じ ACL があるが、親フォルダーからの継承ではなく、明示的に設定されている場合、各ファイルの ACL と親フォルダーの ACL は制限にカウントされます。 実際のパフォーマンスは、ACL のサイズなどの要因によって異なる場合があります。 ACL が小さい (ACL あたり 10 個未満の ACE) 場合、問題が発生することなくスコープが 5,000 を超える可能性があります。 ただし、ACL が大きい場合 (最大 5,000 ACE) では、制限に達する前にパフォーマンスの問題が発生する可能性があります。

シナリオ例

シナリオ: ファイルの共有

フォルダー内の 2 つのファイルを 1 人のユーザーと共有すると、3 つのスコープが使用されます。1 つは親フォルダー用、2 つのファイルごとに 1 つ使用されます。 両方のファイルが同じユーザーと共有され、同じ ACL を持っている場合でも、親フォルダーからの継承を解除すると、一意のスコープが作成されます。 そのため、10,000 個のファイルをユーザーと共有し、それぞれを個別に共有する場合は、10,000 個の追加スコープが必要です。 ただし、すべてのファイルを 1 つのフォルダーに配置し、そのフォルダーをユーザーと共有し、そのファイルをフォルダーに移動する場合、フォルダーに追加のスコープが 1 つだけ必要になります。 考慮すべき重要な点の 1 つは、共同編集です。 ユーザーが Microsoft Wordのファイルで作業していて、他のユーザーと共同編集したい場合は、ファイルが SharePoint にある場合でも招待できます。 これにより、使用可能な残りの ACL のいずれかを使用します。 これは考慮すべき追加の要因です。

シナリオ: ファイルの移動

10,000 個のファイルが 1 つずつ個別に共有されている状況を想像してください。 これらのファイルが後で 1 つのフォルダーに移動された場合、システムは、フォルダーのアクセス許可のみを適用するようにアクセス許可エントリを自動的に統合しません。 代わりに、ユーザーが手動で修正しない限り、アクセス許可は散らかったままです。 これは、セキュリティ上の問題により、アクセス許可階層の自動復元が実装されていないためです。 このシナリオでは、ファイルが移動される前に、受信者は個別に共有されている 10,000 個のファイルをそれぞれ表示できます。 ファイルをフォルダーに移動した後も、受信者は 10,000 個のファイルを含むフォルダーと共に表示され、アクセス構造が変更されます。 つまり、手動クリーンアップがないと、OneDrive からの広範な共有によって、50,000 項目の制限に達すると、パフォーマンスの問題や運用エラーが発生する可能性があります。 ただし、ACL が一致するフォルダーにファイルを整理する慎重な管理は、これらの問題を軽減するのに役立ちます。 また、特にメタデータを使用して従来のフォルダーではなくすべてを表す場合は、実際のフォルダー階層をユーザーに公開することが望ましくない可能性があることにも注意してください。

シナリオ: 最小限のスコープでドキュメント ライブラリを作成する

1 つのアクセス許可スコープを持つドキュメント ライブラリを作成します。つまり、その中のすべての項目が最初に同じアクセス制御設定を共有します。 次に、このドキュメント ライブラリにフォルダーを追加します。 このフォルダーを特定の個人またはグループと共有するには、ドキュメント ライブラリからのアクセス許可の継承を解除します。 このアクションにより、フォルダーの新しい一意のアクセス許可スコープが作成され、ドキュメント ライブラリに適用されるアクセス制御とは異なるアクセス制御を設定できます。 フォルダーのアクセス許可が設定された状態で、このフォルダーに 75,000 個のファイルをアップロードします。 これらの各ファイルは、フォルダーの ACL を継承し、すべてフォルダー自体と同じアクセス許可を持っていることを確認します。 その結果、ドキュメント ライブラリには、ドキュメント ライブラリのルート用とフォルダー用の 2 つの一意のアクセス許可スコープが含まれるようになりました。 この設定により、フォルダー内のファイルにアクセスできるユーザーをより詳細に制御しながら、ドキュメント ライブラリの残りの部分のアクセス許可構造を簡単に維持できます。

シナリオ: 複数のフォルダーのアクセス許可を管理する

カテゴリをフォルダーに効率的にマップするには、各ドキュメント ライブラリ内に 20 個のフォルダーを作成します。 これらの各フォルダーは、コントラクトや請求書などの特定の種類のドキュメントに対して指定されるため、organizationが向上し、アクセスが容易になります。 各フォルダーに固有のアクセス許可があることを確認するには、それぞれに個別の ACL 設定を設定します。 これにより、ドキュメント ライブラリ内の 21 個の一意のアクセス許可スコープが作成されます。1 つはドキュメント ライブラリのルート用、20 個のフォルダーごとに 1 つになります。 これにより、ファイルの各カテゴリにアクセスできるユーザーを制御し、より安全で整理された構造を提供できます。 パフォーマンスの問題を回避し、システムの制限内に留めるには、一意のアクセス許可を持つ個々のファイルの数を最小限に抑えます。 つまり、ファイルの大部分は、それぞれのフォルダーのアクセス許可を継承し、一意のアクセス許可エントリの合計数が 5,000 の制限内に十分に保持されます。

アクセス許可スコープを管理するためのヒント

SharePoint でアクセス許可スコープを効果的に管理するには、次の推奨事項に従います。

  • 継承を利用して、一意のアクセス許可スコープの数を最小限に抑えます。
  • 個々のファイルの代わりにフォルダーを共有して、一意のスコープの数を減らします。
  • 一意のアクセス許可が必要なフォルダーが 100,000 項目を超える前に共有されていることを確認します。
  • 開発者は、一意のアクセス許可スコープを定期的に確認して最小限に抑え、グループを使用し、パフォーマンスを監視して最適な SharePoint パフォーマンスを維持します。
  • エンド ユーザーの場合は、既定のアクセス許可グループを使用し、アクセス要求を確認し、定期的な監査を実施して、SharePoint のアクセス許可をクリーンかつ効率的に保ちます。
  • SharePoint グループMicrosoft Entraを使用して、ユーザー参照とアクセス許可を効率的に管理します。

リソース