カスタム アプリ プロファイル権限

アプリ プロファイルでカスタム アプリの使用を選択した場合、移行用の Microsoft 365 ユーザー に任意のユーザーを指定することができますが、アプリにこれらの権限が付与されていることを確認してください。

API

権限名

説明

タイプ

必要となる理由

Microsoft Graph

Domain.Read.All

Read domains

アプリケーション

SharePoint 管理センターに接続する移行先テナントの初期ドメインを定義します。

User.Read.All

Read all users' full profiles

アプリケーション

SharePoint ユーザーを Microsoft 365 グループに追加するために、移行ポリシーで SharePoint の所有者・メンバー・閲覧者グループを移行先 Microsoft 365 グループにマッピングする を選択し、OneDrive ユーザー名で移行先 OneDrive サイトの URL を取得する場合に必要です。

Sites.ReadWrite.All

Read and write items in all site collections

アプリケーション

SharePoint データを移行先に移行します。

Group.ReadWrite.All

Read and write all groups

アプリケーション

SharePoint Online 移行を実行する際に、以下の場合にこの権限が必要です。

Microsoft 365 グループに関連する移行元チーム サイトを移行する際に、Microsoft 365 グループを作成してグループ メンバーを追加します。

Microsoft 365 グループなしのチーム サイトを Microsoft 365 グループに関連するチーム サイトに移行する際に、移行元 SharePoint グループ (所有者 / メンバー / 閲覧者) を移行先 Microsoft 365 グループにマッピングして、ユーザーをグループの所有者またはメンバーとして追加します。

Microsoft 365 グループ移行を実行してチーム サイトが属する Microsoft 365 グループを移行する場合、この権限を削除することができます。

SharePoint

Sites.FullControl.All

Have full control of all site collections

アプリケーション

SharePoint データを移行先に移行します。

User.Read.All

Read user profiles

アプリケーション

OneDrive ユーザー名で移行先 OneDrive サイトの URL を取得する場合にのみ必要です。

TermStore.ReadWrite.All

Read and write managed metadata

アプリケーション

Managed Metadata Service および 管理されたメタデータ 列を移行先に移行します。

*注意: 用語グループ / 用語セット / 用語が同じ名前を持っており、かつ移行元のレベル (グローバルまたはローカル レベル) と同じである用語グループ / 用語セット / 用語が移行先に存在する場合、この権限を TermStore.Read.All に変更することができます。

Azure Rights Management Services

Content.DelegatedWriter

Create protected content on behalf of a user

アプリケーション

ファイル / ライブラリ / サイトの秘密度ラベルを管理する場合にのみ必要です。

Content.Writer

Create protected content

アプリケーション

Microsoft Information Protection Sync Service

UnifiedPolicy.Tenant.Read

Read all unified policies of the tenant

アプリケーション

ファイル / ライブラリ / サイトの秘密度ラベルを管理する場合にのみ必要です。

 

*注意: 以下のコマンドを使用して、マニフェスト を介して必要な API 権限を追加することができます。

"requiredResourceAccess": [

        {

            "resourceAppId": "870c4f2e-85b6-4d43-bdda-6ed9a579b725",

            "resourceAccess": [

                {

                    "id": "8b2071cd-015a-4025-8052-1c0dba2d3f64",

                    "type": "Role"

                }

            ]

        },

        {

            "resourceAppId": "00000012-0000-0000-c000-000000000000",

            "resourceAccess": [

                {

                    "id": "006e763d-a822-41fc-8df5-8d3d7fe20022",

                    "type": "Role"

                },

                {

                    "id": "d13f921c-7f21-4c08-bade-db9d048bd0da",

                    "type": "Role"

                }

            ]

        },

        {

            "resourceAppId": "00000003-0000-0ff1-ce00-000000000000",

            "resourceAccess": [

                {

                    "id": "678536fe-1083-478a-9c59-b99265e6b0d3",

                    "type": "Role"

                },

                {

                    "id": "c8e3537c-ec53-43b9-bed3-b2bd3617ae97",

                    "type": "Role"

                },

                {

                    "id": "df021288-bdef-4463-88db-98f22de89214",

                    "type": "Role"

                }

            ]

        },

        {

            "resourceAppId": "00000003-0000-0000-c000-000000000000",

            "resourceAccess": [

                {

                    "id": "dbb9058a-0e50-45d7-ae91-66909b5d4664",

                    "type": "Role"

                },

                {

                    "id": "62a82d76-70ea-41e2-9197-370581804d09",

                    "type": "Role"

                },

                {

                    "id": "9492366f-7969-46a4-8d15-ed1a20078fff",

                    "type": "Role"

                },

                {

                    "id": "df021288-bdef-4463-88db-98f22de89214",

                    "type": "Role"

                }

            ]

        }

    ],

*注意: 上位に一覧表示している権限は、テナント内のすべてのサイト コレクションを移行するために必要です。特定のサイト コレクションのみを移行する場合、異なる権限設定が構成されている別のカスタム アプリの使用に変更してください。詳細については、以下の説明を参照してください。

1.   アプリに使用する以下の権限を追加します。

API

権限名

説明

タイプ

必要となる理由

Microsoft Graph

Domain.Read.All

Read domains

アプリケーション

SharePoint 管理センターに接続する移行先テナントの初期ドメインを定義します。

User.Read.All

Read all users' full profiles

アプリケーション

SharePoint ユーザーを Microsoft 365 グループに追加するために、移行ポリシーで SharePoint の所有者・メンバー・閲覧者グループを移行先 Microsoft 365 グループにマッピングする を選択し、OneDrive ユーザー名で移行先 OneDrive サイトの URL を取得する場合に必要です。

Sites.Selected

Access selected site collections

アプリケーション

指定したサイト コレクションのデータを取得して移行します。

Group.ReadWrite.All

Read and write all groups

アプリケーション

SharePoint Online 移行を実行する際に、以下の場合にこの権限が必要です。

    Microsoft 365 グループに関連する移行元チーム サイトを移行する際に、Microsoft 365 グループを作成してグループ メンバーを追加します。

    Microsoft 365 グループなしのチーム サイトを Microsoft 365 グループに関連するチーム サイトに移行する際に、移行元 SharePoint グループ (所有者 / メンバー / 閲覧者) を移行先 Microsoft 365 グループにマッピングして、ユーザーをグループの所有者またはメンバーとして追加します。

Microsoft 365 グループ移行を実行してチーム サイトが属する Microsoft 365 グループを移行する場合、この権限を削除することができます。

SharePoint

Sites.Selected

Access selected site collections

アプリケーション

指定したサイト コレクションのデータを取得して移行します。

User.Read.All

Read user profiles

アプリケーション

OneDrive ユーザー名で移行先 OneDrive サイトの URL を取得する場合にのみ必要です。

TermStore.ReadWrite.All

Read and write managed metadata

アプリケーション

Managed Metadata Service および 管理されたメタデータ 列を移行先に移行します。

*注意: 用語グループ / 用語セット / 用語が同じ名前を持っており、かつ移行元のレベル (グローバルまたはローカル レベル) と同じである用語グループ / 用語セット / 用語が移行先に存在する場合、この権限を TermStore.Read.All に変更することができます。

Azure Rights Management Services

Content.DelegatedWriter

Create protected content on behalf of a user

アプリケーション

ファイル / ライブラリ / サイトの秘密度ラベルを管理する場合にのみ必要です。

Content.Writer

Create protected content

アプリケーション

Microsoft Information Protection Sync Service

UnifiedPolicy.Tenant.Read

Read all unified policies of the tenant

アプリケーション

ファイル / ライブラリ / サイトの秘密度ラベルを管理する場合にのみ必要です。

 

*注意: 以下のコマンドを使用して、マニフェスト を介して必要な API 権限を追加することができます。

"requiredResourceAccess": [

        {

            "resourceAppId": "870c4f2e-85b6-4d43-bdda-6ed9a579b725",

            "resourceAccess": [

                {

                    "id": "8b2071cd-015a-4025-8052-1c0dba2d3f64",

                    "type": "Role"

                }

            ]

        },

        {

            "resourceAppId": "00000012-0000-0000-c000-000000000000",

            "resourceAccess": [

                {

                    "id": "006e763d-a822-41fc-8df5-8d3d7fe20022",

                    "type": "Role"

                },

                {

                    "id": "d13f921c-7f21-4c08-bade-db9d048bd0da",

                    "type": "Role"

                }

            ]

        },

        {

            "resourceAppId": "00000003-0000-0ff1-ce00-000000000000",

            "resourceAccess": [

                {

                    "id": "c8e3537c-ec53-43b9-bed3-b2bd3617ae97",

                    "type": "Role"

                },

                {

                    "id": "df021288-bdef-4463-88db-98f22de89214",

                    "type": "Role"

                },

                {

                    "id": "20d37865-089c-4dee-8c41-6967602d4ac8",

                    "type": "Role"

                }

            ]

        },

        {

            "resourceAppId": "00000003-0000-0000-c000-000000000000",

            "resourceAccess": [

                {

                    "id": "dbb9058a-0e50-45d7-ae91-66909b5d4664",

                    "type": "Role"

                },

                {

                    "id": "62a82d76-70ea-41e2-9197-370581804d09",

                    "type": "Role"

                },

                {

                    "id": "883ea226-0bf2-4a8f-9f9d-92c9162a727d",

                    "type": "Role"

                },

                {

                    "id": "df021288-bdef-4463-88db-98f22de89214",

                    "type": "Role"

                }

            ]

        }

    ],

2.   環境で PnP PowerShell のインストール を実行します。

3.   ストレージ場所 アクセスし、RegisterAzureADAppForGrantFullControl.ps1GrantFullControlForSiteCollection.ps1SiteCollectionUrls.csv ファイルをネットワークが接続されているマシンのカスタム フォルダーにダウンロードします。

4.   カスタム フォルダーで、メモ帳で RegisterAzureADAppForGrantFullControl.ps1 を開いて、必要に応じてパラメーターの値を構成するには、以下の説明を参照してください。その後、ファイルを保存します。

    Tenant テナントの名前です。例: mytenant.onmicrosoft.com

    AzureEnvironment 認証用の Azure 環境です。

対応する値: ProductionPPEChinaGermanyCustom

    ApplicationName 作成する Azure AD アプリの名前です (必須ではありません)。既定では、名前は PnP PowerShell For Grant Full Control になります。

5.   Windows PowerShell を開き、Windows PowerShell ウィンドウで以下のコマンドを入力します。

."file path"

解凍されたフォルダー内の RegisterAzureADAppForGrantFullControl.ps1 ファイルの完全パスで file path を置き換え、キーボードの Enter キーを押します。

The full path of the RegisterAzureADAppForGrantFullControl.ps1 file.

*注意: PnP PowerShell がお使いの環境にインストールされていることを確認してください。

6.   構成に基づいて以下のパラメーターの値を入力して、キーボードの Enter キーを押します。

    Tenant  テナントの名前です。例: mytenant.onmicrosoft.com

    AzureEnvironment 認証用の Azure 環境です。

その後、Microsoft ログイン ウィンドウが表示されます。実行を続行するには、SharePoint 管理者ロールを持つユーザーを使用してログインする必要があります。

*注意: Azure AD アプリを登録すると、要求されているアクセス許可 ページが表示されます。[同意] をクリックしてアプリを登録します。

以下のテーブルには、アプリの必要な権限が一覧表示されます。

API

アクセス許可

タイプ

Microsoft Graph

Sites.FullControl.All

(Have full control of all site collections)

委任済み

User.Read.All

(Read all users full profiles)

委任済み

SharePoint/Office 365 SharePoint Online

AllSites.FullControl

(Have full control of all site collections)

委任済み

User.Read.All

(Read user profiles)

委任済み

実行後、Azure AD アプリのクライアント ID Windows PowerShell ウィンドウに表示されます。クライアント ID GrantFullControlForSiteCollection.ps1 スクリプトを実行する際に使用されることに注意してください。

The client ID of the Azure AD app.

スクリプトと同じディレクトリに Register Azure AD App_(TimeStamp).log ファイルが生成されます。このファイルで実行する詳細を表示することができます。

7.   カスタム フォルダーで、SiteCollectionUrls.csv ファイルを開き、対象移行先サイト コレクションの URL を以下のように入力します。

The SiteCollectionUrls.csv file.

8.   アプリにサイト コレクションのフル コントロール権限を付与するには、グローバル管理者ロールを持つ同意ユーザーを用意し、そのユーザーをサイト コレクションの サイト コレクションの管理者 に追加します。

9.   カスタム フォルダーで、GrantFullControlForSiteCollection.ps1 ファイルをメモ帳で開きます。

10. 必要な情報を使用して、以下のパラメータを構成します。

    $appId = 'Custom App client ID' カスタム アプリのクライアント ID を入力します。

    $appName = 'Custom App Display name' カスタム アプリの表示名を入力します。

    $connection = Connect-PnPOnline -Url 'SharePoint Admin Center URL' テナントの SharePoint 管理センター URL を入力します。

*注意: カスタム アプリが SharePoint 管理センター URL へのアクセス権を持っていない可能性があります。Fly Server 接続の追加時にテナント ドメインの検証を回避するには、\FLY\Manager\Control\bin\ TimerService.exe.config ファイルで <add key="CheckInitialDomainError" value="false"/> ノードを追加して、Fly Timer Service を再開してください。この変更は移行ジョブに影響を与えません。

11. Windows PowerShell を開き、Windows PowerShell ウィンドウで以下のコマンドを入力します。

."file path"

解凍されたフォルダー内の GrantFullControlForSiteCollection.ps1 ファイルの完全パスで file path を置き換え、キーボードの Enter キーを押します。

The full path of the GrantFullControlForSiteCollection.ps1 file.

12. カスタム アプリの証明書キーを入力し、キーボードの Enter を押します。

13. 資格情報の要求 ウィンドウで、ステップ 8 で準備した同意ユーザーとそのパスワードを入力し、[OK] をクリックします。

14. プロセスの完了後、必要に応じて、サイト コレクションの サイト コレクションの管理者 から同意ユーザーを削除することができます。