Контейнеры и очереди Azure для API миграции в SharePointSharePoint-provided Azure containers and queues for SharePoint Migration API

ОбзорOverview

Одним из требований для использования API миграции SharePoint является использование контейнера Azure для временного хранения. Контейнер Azure теперь входит в состав SharePoint и предоставляется бесплатно. Его может получить любой клиент, оформивший подписку на SharePoint.One of the requirements for using the SharePoint Migration API is the use of an Azure container for temporary storage. The cost of an Azure container is now free; the free default Azure container is now part of the basic SharePoint offering. Every tenant who signs up for SharePoint will get this for free.

Ниже перечислены ключевые аспекты.Important key aspects include:

  • Контейнеры и очереди, предоставляемые по запросу, являются уникальными и не используются повторно. После выдачи клиенту контейнер будет невозможно использовать повторно или совместно.The containers and queues are unique per request and not reused. Once a container is given to a customer this container will not be reused or shared.

  • Контейнеры и очереди удаляются автоматически. Согласно стандартному соответствию SharePoint, корпорация Майкрософт автоматически уничтожит контейнер в течение 30–90 дней.The containers and queue are automatically deleted. As per the standard SharePoint compliance, Microsoft will automatically destroy the container within 30 to 90 days .

  • Контейнеры и очереди размещаются в центрах обработки данных клиента. Мы подготавливаем контейнеры в том же центре обработки данных, где располагается клиент SharePoint.The containers and queues are in the customer's datacenter location. We make sure to provision containers that are in the same physical location as their SharePoint tenant.

  • Контейнеры и очереди можно получить программно через SharePoint.The containers and queues can be obtained programmatically through SharePoint.

Процесс шифрованияEncryption process

Прежде чем API миграции сможет принять задание миграции из предоставленного SharePoint контейнера Azure, необходимо зашифровать неактивные данные, используя стандарт AES CBC 256.Before the Migration API can accept a migration job from a SharePoint-provided Azure container, the data must be encrypted at rest using the AES CBC 256 standard.

Примечание

Вы можете предоставить собственную учетную запись Azure, если предпочитаете не использовать шифрование.You can still provide your own Azure account if you prefer to not use encryption.

Прямого доступа к контейнерам и учетным записям хранения нет ни у кого. Доступ к учетным записям хранения есть у службы SharePoint. Ограниченное количество специалистов может запускать команды обслуживания, не имея при этом прямого доступа к этим учетным записям. Техники центра обработки данных не знают, как данные располагаются на диске, и не могут беспрепятственно получить доступ к оборудованию для подключения дисков. Все дисковые устройства, покидающие ЦОД, уничтожаются механическим способом. Во всех наших центрах обработки данных безопасность также обеспечивается и на физическом уровне.No one has direct access to the storage accounts or the containers. The SharePoint service has access to the storage accounts; and while a select number of engineers can run maintenance commands against them, they also don't have direct access to the accounts. Datacenter technicians are not prepped with knowledge of how data is laid out on disk, and do not have ready access to equipment to mount disks. All drives are physically destroyed before leaving the datacenter. Physical security is also in place across all of our datacenters.

Каждый контейнер предназначен только для того клиента, которому он был предоставлен, и не используется повторно. Данные хранятся в BLOB-объекте Azure в течение 30–90 дней, а затем удаляются.Each container is dedicated to the customer who it was provided to and not reused. The data is stored in the Azure blob anywhere from 30 to 90 days after which it is deleted.

При удалении данных файлы теряют привязку и позднее обратимо удаляются с диска. Файл, находящийся в учетной записи и на диске, можно использоваться несколькими серверами. Аналогичным образом можно использовать и копии, в том числе резервные (геореплицированные данные, если применимо).When the data is deleted, the files are de-linked and later soft deleted from disk. A file in an account and on-disk are may be shared across many servers. The same process is used for replicas, including backup copies (geo-replicated data if it applies).

Примечание

Из-за обработки данных весь файл или его части, скорее всего, будут перезаписаны уже после выполнения обратимого удаления.Due to data churn, it is likely that all or parts of the file will be overwritten at some point following soft delete.

Ключ к контейнеруKey to the container

Ключ по умолчанию создается программно и действует только в течение 3 дней. Получить доступ к контейнеру можно лишь с помощью этого ключа. Он создается случайным образом и не используется повторно. Время жизни самого контейнера длиннее, чем время жизни ключа, поскольку контейнер очищается с помощью стандартных методов SharePoint через 30–90 дней с момента создания. SharePoint никогда не хранит ключ, хотя теоретически найти контейнер можно. Контейнер размещается в общем хранилище Майкрософт, т. е. за пределами клиента (но в пределах региона), и защищается с помощью ключа API.The default key is generated programmatically, and is only valid for 3 days. This key is the only way to gain access to the container. It is generated randomly and not reused. The container itself lives longer than the key, as the container is purged using SharePoint standard methods between 30-90 days from creation. SharePoint never stores the key, though potentially they could find the container. The container is housed in a shared Microsoft storage, technically outside the tenant (but within the region), and is protected using the API key.

Доступ имеют только те, у кого есть ключ. Другие пользователи подписки или клиента доступа не имеют.Only those who have the key have access. Other users in the subscription or the tenant do not have access.

В случае потери ключа или его получения посторонними людьми два механизма защиты предохранят ваши данные. Во-первых, в контейнере доступны только операции чтения и записи. В контейнере нет списка хранимых объектов, поэтому для того, чтобы прочитать или записать их, нужно обладать информацией о его содержимом. Во-вторых, хранимые файлы зашифрованы алгоритмом AES 256 в режиме сцепления шифрованных блоков.If your key is lost or obtained by someone else, there are two defenses in place that protect you. First, the container has only read/write operations. The container has no list, which means you would need to know the details of the files stored in the container in order to read or write to them. Secondly, the files are encrypted at rest with AES 256 in CBC mode.

Использование контейнераHow to use the container

Работа с контейнерамиGetting containers

public SPProvisionedMigrationContainersInfo ProvisionMigrationContainers()public SPProvisionedMigrationContainersInfo ProvisionMigrationContainers()

Примечание

Этот вызов может быть сделан в C# с помощью клиентской объектной модели SharePoint. Дополнительную информацию см. в статье Выполнение основных операций с помощью кода клиентской библиотеки SharePoint.This call can be made in C# using the SharePoint client side object model. See, Complete basic operations using SharePoint client library code.

Вызов этого метода возвращает объект, содержащий две строки с двумя маркерами SAS для доступа к двум требуемым контейнерам и массив байтов для AES256CBC-шифрования. Этот ключ необходимо использовать при шифровании данных. После выдачи ключа Майкрософт его забывает. Вам необходимо сохранить ключ и при необходимости передать его еще раз для вызова SubmitMigrationJob.The call will return an object that contains two strings containing two SAS token for accessing the two required containers and a byte array for the AES256CBC encryption. This key must be used when encrypting the data. Once we give you the key it is forgotten by Microsoft. You need to keep it and pass it again for the SubmitMigrationJob call.

  • Uri DataContainerUriUri DataContainerUri

  • Uri MetadataContainerUriUri MetadataContainerUri

  • byte[] EncryptionKeybyte[] EncryptionKey

Работа с очередьюGetting a queue

public SPProvisionedMigrationQueueInfo ProvisionMigrationQueue()public SPProvisionedMigrationQueueInfo ProvisionMigrationQueue()

Этот метод возвращает строку, содержащую маркер SAS для доступа к очереди Azure. Очередь может использоваться повторно в нескольких заданиях миграции, поэтому этот вызов не рекомендуется использовать так же часто, как вызов SPProvisionedMigrationContainersInfo().This method will return a string containing the SAS token for accessing the Azure queue. The Queue can be reused across multiple migration jobs so this call should not be used as frequently as the SPProvisionedMigrationContainersInfo() call.

  • Uri JobQueueUri.Uri JobQueueUri