Guía de referencia de la API de migración de SharePoint
En esta guía se describe el uso de la API de migración de SharePoint, que importa contenido a SharePoint, en función de los archivos de manifiesto.
CSOM y REST
La API de migración admite el modelo de objetos del lado cliente de SharePoint (CSOM) y REST.
Uso de paquetes NuGet con CSOM
Para hacer referencia al modelo de objetos del lado cliente de SharePoint (CSOM) en la solución, use paquetes NuGet.
Administre las dependencias fácilmente y asegúrese de que la solución usa la versión más reciente de la biblioteca CSOM con paquetes NuGet.
Obtenga la versión más reciente del paquete CSOM en las bibliotecas del modelo de objetos del lado cliente de SharePoint con el identificador Microsoft.SharePointOnline.CSOM
.
Consulte Introducción al servicio REST de SharePoint para obtener instrucciones sobre la API REST.
Método CreateMigrationJob
Crea un nuevo trabajo de importación de migración con el paquete de importación especificado en azureContainerSourceUri
el parámetro .
Sintaxis de 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"
}
Parámetros CreateMigrationJob
gWebID
Obligatorio.
Valor de tipo String que contiene el identificador único de la web de destino destinada a la importación de paquetes. El propio paquete de importación especifica información adicional e identificadores para la importación. Puede buscar este identificador mediante programación consultando la web de destino mediante llamadas CSOM.
azureContainerSourceUri
Obligatorio.
Valor string que contiene el URI válido, incluido el token de SAS, para acceder al contenedor de Azure Blob Storage que contiene los archivos binarios del bloque de tipos.
Consulte Uso de contenedores de Azure Blob Storage y colas de Azure con La API de migración de SharePoint para obtener instrucciones sobre el uso de contenedores de Azure Blob Storage en la migración.
Cuando se usan contenedores de contenido no proporcionados por este método, Migration API requiere Read
List
y solo permisos. Asegúrese de que la hora de inicio del token de SAS está establecida en o antes del envío del trabajo. Además, al establecer el tiempo de expiración, permita una duración razonable para que se complete el proceso de importación.
La API de migración no requiere List
permiso de los contenedores aprovisionados con ProvisionMigrationContainers
el método .
azureContainerManifestUri
Obligatorio.
Valor string que contiene el URI válido, incluido el token de SAS, para acceder al contenedor de Azure Blob Storage, que contiene los blobs en bloques del manifiesto y otros paquetes que describen archivos XML. Migration API escribe el registro en este contenedor. Este contenedor no puede ser el mismo que el que se usa para azureContainerSourceUri
.
Consulte Uso de contenedores de Azure Blob Storage y colas de Azure con La API de migración de SharePoint para obtener instrucciones sobre el uso de contenedores de Azure Blob Storage en la migración.
Cuando se usan contenedores de contenido no proporcionados por este método, Migration API solo requiere Read
permisos , List
y Write
. Asegúrese de que la hora de inicio del token de SAS está establecida en o antes del envío del trabajo. Además, al establecer el tiempo de expiración, permita una duración razonable para que se complete el proceso de importación.
azureQueueReportUri
Opcional.
Valor string que contiene la dirección URL válida, incluido el token de SAS, para acceder a la cola de Azure proporcionada por el usuario para el progreso del trabajo de migración. Use null
si no es necesario recibir actualizaciones de estado de importación.
Si este valor no null
es y el token de SAS contiene los permisos correctos, Migration API escribe actualizaciones de estado de importación en la cola en la dirección URL proporcionada.
Comparta la cola de notificaciones entre varios trabajos de migración. Migration API identifica cada trabajo con valores de identificador de trabajo únicos en la cola de notificaciones.
Consulte Azure para obtener instrucciones sobre el uso de Azure Queue en la migración. Compruebe los eventos de migración en la cola de Azure para ver los tipos de eventos.
Solo requiere Add
permisos , Read
y Update
. Si el token de SAS tiene otros permisos, el trabajo de migración no podrá agregar eventos a la cola.
Valor devuelto de CreateMigrationJob
Id. de trabajo
Valor Guid , que contiene el identificador de trabajo, el identificador único del trabajo de migración. El método devuelve un null
valor si no puede crear el trabajo. Use id. de trabajo para consultar el estado de los trabajos de migración con GetMigrationJobStatus
el método .
Ejemplo
Guid MigrationJobId = TargetSite.CreateMigrationJob(
TargetWebId,
azureContainerSourceUri,
azureContainerManifestUri,
azureQueueReportUri);
CreateMigrationJobEncrypted (método)
Crea un nuevo trabajo de importación de migración con un paquete PRIME cifrado.
Consulte las instrucciones de cifrado de Azure para obtener Azure Blob Storage contenedor y el cifrado de cola de Azure que se usan.
Sintaxis 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"
}
Parámetros CreateMigrationJobEncrypted
gWebID
Los parámetros , azureContainerSourceUri
azureContainerManifestUri
, y azureQueueReportUri
tienen los mismos requisitos que en CreateMigrationJob
el método .
Proporcione el EncryptionOption
parámetro como se indica a continuación.
EncryptionOption
Obligatorio.
Objeto EncryptionOption
que contiene el AES256CBCKey usado para descifrar la salida.
Migration API cifra la salida con la clave AES256CBCKey proporcionada.
Consulte la [EncryptionOption](https://zcusa.951200.xyz/en-us/dotnet/api/microsoft.sharepoint.client.encryptionoption)
clase para obtener más información.
Valor devuelto CreateMigrationJobEncrypted
Vea Valor devuelto en el CreateMigrationJob
método .
Método GetMigrationJobStatus
Recupera el estado de procesamiento de un trabajo de migración designado.
Migration API quita los trabajos de migración completados de la cola de trabajos del temporizador. Compruebe la cola de notificaciones o las salidas de registro para ver los resultados de importación.
Sintaxis de GetMigrationJobStatus
[ClientNS.ClientCallableMethod]
public SPMigrationJobState GetMigrationJobStatus(Guid MigrationJobId)
Parámetros GetMigrationJobStatus
Id.
Obligatorio.
Un valor Guid , que contiene el identificador de trabajo de migración, se devuelve desde CreateMigrationJob
.
Valor devuelto GetMigrationJobStatus
Objeto SPMigrationJobState
que contiene el estado del trabajo de migración.
Ejemplo de GetMigrationJobStatus
SPMigrationJobState CurrentJobState = TargetSite.GetMigrationJobStatus(MigrationJobId);
SPMigrationJobState (enumeración)
Contiene miembros que representan el estado de los trabajos de migración en la cola de importación.
Miembros de SPMigrationJobState
Ninguno
Valor: 0
La cola no contiene el trabajo de migración con el identificador de trabajo. Las razones posibles son:
- Migration API ha completado el trabajo y lo ha quitado de la cola.
- El identificador de trabajo no es válido.
En cola
Valor: 2
La cola contiene el trabajo de migración. Migration API no está procesando el trabajo.
Procesamiento
Valor: 4
La cola contiene el trabajo de migración. Migration API está procesando el trabajo.