SharePoint Migration API リファレンス ガイド
このガイドでは、マニフェスト ファイルに基づいて SharePoint にコンテンツをインポートする SharePoint Migration API の使用方法について説明します。
CSOM と REST
移行 API では、SharePoint クライアント側オブジェクト モデル (CSOM) と REST の両方がサポートされています。
CSOM で NuGet パッケージを使用する
ソリューションで SharePoint クライアント側オブジェクト モデル (CSOM) を参照するには、NuGet パッケージを使用します。
依存関係を簡単に管理し、ソリューションが NuGet パッケージで最新バージョンの CSOM ライブラリを使用していることを確認します。
SHAREPoint クライアント側オブジェクト モデル ライブラリの CSOM パッケージの最新バージョンを ID Microsoft.SharePointOnline.CSOM
で取得します。
REST API の手順については、「 SharePoint REST サービスを知 る」を参照してください。
CreateMigrationJob メソッド
パラメーターにインポート パッケージを指定して、新しい移行インポート ジョブを azureContainerSourceUri
作成します。
CreateMigrationJob 構文
public Guid CreateMigrationJobEncrypted(
Guid gWebId,
string azureContainerSourceUri,
string azureContainerManifestUri,
string azureQueueReportUri,
EncryptionOption AES256CBCKey
)
POST https://{site_url}/_api/site/CreateMigrationJobEncrypted
{
"options": {
"AES256CBCKey": "000000000000000000000000000000000000000000000000000000="
},
"gWebId": "00000000-0000-0000-0000-000000000000",
"azureContainerSourceUri": "https://tenant.blob.core.windows.net:443/00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000=rw",
"azureContainerManifestUri": "https://tenant.blob.core.windows.net:443/00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000=rw"
}
CreateMigrationJob パラメーター
gWebID
必須。
パッケージインポートの対象となる宛先 Web の一意識別子を含む文字列型 ( String) の値。 インポート パッケージ自体は、インポートの追加情報と識別子を指定します。 CSOM 呼び出しを使用してターゲット Web にクエリを実行することで、プログラムによってこの識別子を見つけることができます。
azureContainerSourceUri
必須です。
ブロック型のバイナリ ファイルを含む Azure Blob Storage Container にアクセスするための、SAS トークンを含む有効な URI を含む String 値。
移行で Azure Blob Storage コンテナーを使用する手順については、「SharePoint Migration API でAzure Blob Storage コンテナーと Azure キューを使用する」を参照してください。
このメソッドによって提供されていないコンテンツ コンテナーを使用する場合、Migration API には、、および List
アクセス許可のみが必要Read
です。 SAS トークンの開始時刻がジョブ送信の前後に設定されていることを確認します。 また、有効期限を設定する場合は、インポート プロセスが完了するまでの妥当な期間を許可します。
移行 API では、メソッドを使用してProvisionMigrationContainers
プロビジョニングされたコンテナーからのアクセス許可は必要List
ありません。
azureContainerManifestUri
必須です。
マニフェストのブロック BLOB と XML ファイルを記述する他のパッケージを含む、Azure Blob Storage コンテナーにアクセスするための有効な URI (SAS トークンを含む) を含む文字列型 (String) の値。 移行 API は、このコンテナーにログを書き込みます。 このコンテナーは、 に使用 azureContainerSourceUri
されたものと同じにすることはできません。
移行で Azure Blob Storage コンテナーを使用する手順については、「SharePoint Migration API でAzure Blob Storage コンテナーと Azure キューを使用する」を参照してください。
このメソッドで提供されていないコンテンツ コンテナーを使用する場合、Migration API には、、List
、および Write
のアクセス許可のみが必要Read
です。 SAS トークンの開始時刻がジョブ送信の前後に設定されていることを確認します。 また、有効期限を設定する場合は、インポート プロセスが完了するまでの妥当な期間を許可します。
azureQueueReportUri
省略可能。
移行ジョブの進行状況のためにユーザーが指定した Azure Queue にアクセスするための有効な URL (SAS トークンを含む) を含む 文字列型 (String) の値。 インポート状態の更新プログラムを受信する必要がない場合に使用 null
します。
この値が ではない null
場合、SAS トークンに正しいアクセス許可が含まれている場合、移行 API は、指定された URL でインポート状態の更新をキューに書き込みます。
通知キューを複数の移行ジョブ間で共有します。 移行 API は、通知キュー内の一意のジョブ ID 値を持つ各ジョブを識別します。
移行での Azure キューの使用手順については、「Azure」を参照してください。 イベントの種類については、Azure Queue の移行イベントを確認してください。
Read
、、および Update
のアクセス許可のみが必要Add
です。 SAS トークンに他のアクセス許可がある場合、移行ジョブはキューにイベントを追加できません。
CreateMigrationJob の戻り値
ジョブ ID
移行ジョブの一意識別子であるジョブ ID を含む Guid 値。 メソッドは、ジョブの作成に null
失敗した場合に値を返します。 ジョブ ID を使用して、移行ジョブの状態をメソッドで GetMigrationJobStatus
照会します。
例
Guid MigrationJobId = TargetSite.CreateMigrationJob(
TargetWebId,
azureContainerSourceUri,
azureContainerManifestUri,
azureQueueReportUri);
CreateMigrationJobEncrypted メソッド
暗号化された PRIME パッケージを使用して、新しい移行インポート ジョブを作成します。
使用されているコンテナーと Azure キューの暗号化Azure Blob Storage Azure の暗号化手順を確認します。
CreateMigrationJobEncrypted 構文
public Guid CreateMigrationJobEncrypted(
Guid gWebId,
string azureContainerSourceUri,
string azureContainerManifestUri,
string azureQueueReportUri,
EncryptionOption AES256CBCKey
)
POST https://{site_url}/_api/site/CreateMigrationJobEncrypted
{
"options": {
"AES256CBCKey": "000000000000000000000000000000000000000000000000000000="
},
"gWebId": "00000000-0000-0000-0000-000000000000",
"azureContainerSourceUri": "https://tenant.blob.core.windows.net:443/00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000=rw",
"azureContainerManifestUri": "https://tenant.blob.core.windows.net:443/00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000=rw"
}
CreateMigrationJobEncrypted パラメーター
gWebID
、 azureContainerSourceUri
、 azureContainerManifestUri
および パラメーターには、メソッドと azureQueueReportUri
同じ要件 CreateMigrationJob
があります。
以下の指示に従ってパラメーターを指定 EncryptionOption
します。
EncryptionOption
必須です。
出力の EncryptionOption
暗号化を解除するために使用される AES256CBCKey を含む オブジェクト。
移行 API は、AES256CBCKey キーを指定して出力を暗号化します。
詳細については、 [EncryptionOption](https://learn.microsoft.com/en-us/dotnet/api/microsoft.sharepoint.client.encryptionoption)
クラスに関するページを参照してください。
CreateMigrationJobEncrypted 戻り値
メソッドの戻り値に関するページを CreateMigrationJob
参照してください。
GetMigrationJobStatus メソッド
指定された移行ジョブの処理状態を取得します。
移行 API は、完了した移行ジョブをタイマー ジョブ キューから削除します。 通知キューまたはログ出力でインポート結果を確認します。
GetMigrationJobStatus 構文
[ClientNS.ClientCallableMethod]
public SPMigrationJobState GetMigrationJobStatus(Guid MigrationJobId)
GetMigrationJobStatus パラメーター
ID
必須です。
移行ジョブ ID を含む Guid 値が から CreateMigrationJob
返されます。
GetMigrationJobStatus 戻り値
SPMigrationJobState
移行ジョブの状態を格納する オブジェクト。
GetMigrationJobStatus の例
SPMigrationJobState CurrentJobState = TargetSite.GetMigrationJobStatus(MigrationJobId);
SPMigrationJobState 列挙型
インポート キュー内の移行ジョブの状態を表すメンバーが含まれます。
SPMigrationJobState メンバー
なし
値: 0
キューには、ジョブ ID を持つ移行ジョブが含まれません。 考えられる理由は次のとおりです。
- 移行 API によってジョブが完了し、キューから削除されました。
- ジョブ ID が無効です。
キューに登録済み
値: 2
キューには移行ジョブが含まれています。 移行 API はジョブを処理していません。
Processing
値: 4
キューには移行ジョブが含まれています。 移行 API がジョブを処理しています。