証明書ベースの認証を使用した移行
証明書ベース認証 (CBA) は、v4.1.125.11 より新しい SPMT (SharePoint 移行ツール) ビルドでサポートされています。
SPMT を使用すると、お客様は証明書認証を使用したAzure アプリ登録を ID モデルとして使用して、オンプレミスのコンテンツを SharePoint と OneDrive に移行できます。
準備手順
1. アプリケーションを登録する
指示に従って、Microsoft Entra 管理センターにアプリケーションを登録します。 このアプリケーションに "MigApp" という名前を付けます。
2. アクセス許可を付与する
Entra 管理センターで、[アプリケーション > アプリの登録] に移動し、[すべてのアプリケーション] タブから [MigApp] を選択します。
次に、[API アクセス許可] ページで必要な API アクセス許可を付与します 。
特定の SharePoint サイトにコンテンツを移動するように 'MigApp' を制限するには、SharePoint と Microsoft Graph APIの下に 'Sites.Selected' アクセス許可を付与します。
SharePoint API:
- 'Sites.Selected': REST および CSOM (クライアント側オブジェクト モデル) の呼び出しに必要です。
Microsoft Graph API:
- 'Sites.Selected': サイト関連の操作に必要です。
'MigApp' がすべての SharePoint サイトにコンテンツを移動できるようにするには、SharePoint と Microsoft Graph APIの下に 'Sites.FullControl.All' アクセス許可を付与します。
SharePoint API:
- 'Sites.FullControl.All': すべてのサイト コレクションを完全に制御するために必要です。
Microsoft Graph API:
- 'Sites.FullControl.All': すべてのサイト コレクションを完全に制御するために必要です。
その他のアクセス許可を付与する
Microsoft Graph API:
'User.Read.All': ユーザー マッピングを解決するために必要です。
'Group.Read.All': ユーザー マッピングを解決するために必要です。
'Organization.Read.All': テレメトリを正しい Geo の場所に送信するために必要です。
SharePoint API:
- 'TermStore.ReadWrite.All': マネージド メタデータの読み取りと書き込みに必要です (SharePoint 用語ストアの移行に必要)。
動的 CRM API:
- 'user_impersonation': Organization ユーザーとして Common Data Service にアクセスするために必要です (SharePoint ワークフローを Power Automate に移行するために必要)。
3. 証明書をアップロードする
[証明書 & シークレット] ページに移動し、[証明書] タブを選択します。
エンタープライズ公開キー 基盤 (PKI) によって発行された X.509 証明書の公開キーをアップロードします。
後で使用するために、"拇印" の値をコピーします。
移行先サイトへのアクセス許可を付与する
'MigApp' の SharePoint Sites.Selected アクセス許可を設定した場合、移行を開始する前にすべての移行先サイトに対してアプリケーション FullControl アクセス許可を付与する必要があります。
Microsoft Graph APIまたは PowerShell PnP を使用して、次のアクセス許可を付与できます。
Microsoft Graph API: サイトの所有者アクセス許可ロールを付与します。 詳細な手順については、「 作成アクセス許可 - Microsoft Graph v1.0」を参照してください。
PowerShell PnP: FullControl アクセス許可を設定するには、"Grant-PnPAzureADAppSitePermission" コマンドを使用します。 詳細な手順については、 Grant-PnPAzureADAppSitePermission ページを参照してください。
SPMT での CBA の使用
次の内容を 含む CertificateConfig.json という名前の構成ファイルを準備します。
{
"Thumbprint":"thumbprint for the cert",
"TenantId":"Tenant ID",
"ClientId":"App registration Id"
}
%appdata%\Microsoft\MigrationToolStorage の下の CertificateConfig.json をコピーします。 フォルダーが存在しない場合は、手動で作成します。 次に、SPMT を起動します。
CertificateConfig.json ファイルに正しい属性が含まれている場合、SPMT は SharePoint 管理者の資格情報を求めずに開始します。
ファイルの形式が正しくないか、属性値が正しくない場合、SPMT は "サインインエラーのためアプリケーションが終了します" というメッセージの後に、エラーの理由を説明するエラー メッセージが表示されます。
ファイルが指定されていない場合、SPMT は SharePoint 管理者の資格情報を入力するように求められます。
さらに、'MigApp' に十分なアクセス許可がない場合、すべての移行が失敗し、次のいずれかのエラー メッセージが表示されます。
- "申し訳ございません。このサイトは作成できません。 ターゲット サイトが存在しない場合は、別の SharePoint Online サイト URL を入力するか、管理者に問い合わせてください。
- ターゲット サイトが既に存在する場合は、"無効なサイト URL" です。
ワークフロー移行のセットアップ
'MigApp' を有効にして SharePoint ワークフローを Power Automate に移行するには、追加の構成を行う必要があります。
'MigApp' を Power Platform のサービス プリンシパルにする
PowerShell を使用して、Microsoft Power Platform に 'MigApp' を登録します (詳細については、こちらをご覧ください)。
Install-Module -Name Microsoft.PowerApps.Administration.PowerShell
Import-Module -Name Microsoft.PowerApps.Administration.PowerShell
Add-PowerAppsAccount [-Endpoint
New-PowerAppManagementApp -ApplicationId $appId]
Add-PowerAppsAccount
の詳細については、リンクを参照してください。
Power Platform Environment に 'MigApp' アクセス権を付与する
指示に従ってアプリケーション ユーザーを作成します。 手順 6 で [ + アプリの追加 ] を選択した後、必ず [MigApp] を選択してください。 新しいアプリケーション ユーザーに "システム管理者" ロールを割り当てます。