Использование шифрования с Microsoft Graph Data Connect

При использовании Microsoft Graph Data Connect (Data Connect) доступны следующие два типа шифрования:

  • Шифрование неактивных данных. Клиенты могут использовать функцию шифрования неактивных данных Azure и управляемые клиентом ключи при настройке учетной записи хранения Azure, чтобы обеспечить правильную блокировку и безопасность доставки данных.

  • Шифрование для передаваемых данных. Data Connect предлагает шифрование передаваемых данных с помощью настраиваемого шифрования с помощью ключей, принадлежащих клиенту. Это также гарантирует, что все запросы данных между ресурсами Microsoft 365 и Azure клиента защищены с помощью стандартов обслуживания, утвержденных SOC.

Мы рекомендуем использовать azure Key Vault (AKV) для создания и хранения открытых или закрытых ключей и их обновления при необходимости. В этой статье описывается пользовательская функция шифрования, которая может применяться к запрошенным наборам данных в приложении для безопасной доставки данных.

Включение пользовательского шифрования с помощью ключей, принадлежащих клиенту, для передачи данных

Клиенты (разработчики) могут использовать пользовательское шифрование в приложении Data Connect для еще более безопасной доставки набора данных. Чтобы включить эту функцию, создайте и настройте AKV для создания ключей RSA или убедитесь, что существующее AKV правильно настроено с помощью ключей RSA. Затем включите шифрование при настройке нового приложения Data Connect или измените существующее, чтобы включить шифрование и связать текущее приложение AKV. Data Connect шифрует наборы данных с помощью авторизованных открытых ключей из AKV и предоставляет их в зашифрованном виде вместе с ключом расшифровки. Ключ расшифровки будет зашифрован с помощью Data Connect и может быть расшифрован с помощью закрытого ключа клиента.

Примечание.

Пользовательское шифрование недоступно для клиентов, которые по-прежнему используют процесс предоставления согласия PAM или управляемые потоки данных (MDF).

Включение настраиваемого шифрования для приложения Data Connect

Если у вас есть существующее приложение Data Connect, выполните следующие действия, чтобы включить пользовательское шифрование:

  1. Войдите на портал Azure.

    1. Выберите Microsoft Graph Data Connect и выберите текущее приложение.
    2. Выберите свойства>Один клиент и переключите шифрование.
    3. Если у вас нет AKV, откройте новую вкладку и следуйте инструкциям в разделе Настройка Key Vault Azure.
    4. Выполните действия, описанные в разделах Использование Key Vault Azure и Создание ключей RSA с помощью Key Vault Azure, чтобы убедиться, что akv имеет правильные разрешения роли и заполняется ключами RSA.
    5. В раскрывающемся меню приложения Data Connect выберите URI Key Vault Azure (имя AKV).
    6. Выберите Обновить свойства , чтобы сохранить. Шифрование будет применено, когда администратор утвердит изменения свойств приложения.

    Примечание.

    Шифрование будет применяться только к соответствующим наборам данных. AkV необходимо правильно настроить для шифрования наборов данных.

    Снимок экрана: портал Azure с выделенным элементом Microsoft Graph Data Connect

    Снимок экрана: существующее приложение с выделенными свойствами

Если у вас нет существующего приложения Data Connect, выполните следующие действия, чтобы создать его.

  1. Следуйте инструкциям в руководстве по началу работы , чтобы создать приложение Data Connect.

  2. На шаге Регистрация приложения Microsoft Entra с помощью Microsoft Graph Data Connect выполните следующие действия.

    1. Заполните сведения о приложении на странице Сведения о регистрации .
    2. Выберите Включить шифрование для наборов данных.
    3. Для Key Vault в раскрывающемся меню выберите URI AKV (имя AKV).
    4. Если akv не существует, откройте новую вкладку и выполните действия, описанные в разделе Настройка Key Vault Azure.
    5. Назад на вкладку приложения Data Connect и найдите akv в раскрывающемся списке, чтобы выбрать его. Может потребоваться обновить страницу, чтобы AKV заполнил в раскрывающемся списке.

    Примечание.

    Шифрование будет применяться ко всем подходящим наборам данных, запрошенным в приложении. Выберите подсказку рядом с параметром шифрование, чтобы узнать, какие наборы данных допустимы.

    Снимок экрана: портал Azure с azure Key Vault и шифрованием в коробке

  3. Заполните остальные необходимые сведения о приложении и отправьте приложение для просмотра администратором Microsoft 365.

    Примечание.

    Запишите существующий субъект-службу; вам это понадобится позже.

  4. Теперь, когда вы отправили приложение, выполните действия, описанные в разделах Использование Key Vault Azure и Создание ключей RSA с помощью Key Vault Azure, чтобы убедиться, что AKV имеет правильные разрешения роли и заполнен ключами RSA.

  5. Шифрование будет применено ко всем подходящим наборам данных в приложении, как только администратор утвердит приложение. Если вы запускаете конвейер без настройки правильных разрешений роли и создания ключей RSA в AKV, запрошенные данные не будут зашифрованы.

Расшифровка набора данных после доставки данных

После доставки зашифрованных данных клиент отвечает за расшифровку данных. Data Connect не расшифровывает данные после доставки. В этом разделе описывается расшифровка данных после доставки.

Предварительные условия

Убедитесь, что Key Vault Azure настроен правильно. Дополнительные сведения см. в статье Использование Key Vault Azure для настраиваемого шифрования.

Метаданные и шифрование

Открытая часть пары ключей RSA используется для шифрования ключа расшифровки. Вы можете использовать соответствующую частную часть для расшифровки ключа расшифровки после доставки данных. Корпорация Майкрософт сохраняет ключ расшифровки; Только приложение может расшифровать ключ расшифровки с помощью закрытого ключа. Доступ к закрытому ключу есть только у вас. Ключ расшифровки — это 256-разрядный симметричный ключ AES, используемый для шифрования файла.

Чтобы получить доступ к исходным данным, приложению необходимо обратить вспять процесс шифрования и сжатия. Чтобы получить доступ к данным клиента из удаления данных, выполните следующие действия:

  1. Получите ключ расшифровки файла из метаданных извлечения.

  2. Расшифруйте ключ шифрования с помощью закрытого ключа клиента (предоставляется в Key Vault Azure). Дополнительные сведения см. в статье Api расшифровки azure Key Vault.

  3. Расшифровка файла с помощью ключа шифрования файла. Пример C# см. в разделе Шифрование данных.

Файл метаданных

После извлечения вы получите удаление данных. Каждое удаление данных включает encryptionKeyDetails.json файл с путем metadata/MoreMetadata/EncryptedDatasets в корневом каталоге. Этот JSON-файл содержит сведения о действии копирования. В следующей таблице описана схема.

Поле Описание
DecryptionKeyDetails Сведения о ключе расшифровки.
PublicKeyVersion Версия открытого ключа. Это необходимо для того, чтобы партнер определил, какую версию соответствующего закрытого ключа следует использовать для расшифровки.
DecryptionKeyValue Представление Base64 значения ключа расшифровки.
DecryptionKeyIV Представление Base64 вектора инициализации, используемого для создания ключа расшифровки.

Ключи расшифровки

Ключ расшифровки шифруется как строка Base64 с открытым ключом клиента для каждого клиента, предоставленным в Key Vault Azure. Ключи расшифровки состоят из следующих компонентов:

  • value — представление Base64 значения ключа расшифровки. Пример: oF8xFGjrhxC2LsrsrUA3eTCWDl2fYlBkUe886jRLnKFwdbH/9SRA+55ekL42JCcL+iXsQNZdMWmy3LnLgk2nSfZ96ecU/++sOM7QB/6kWrS2Wmg+5XCW5FErodnyBZKCbOo1RETgrxTH8YlcoLX5319VCmBleSMxgitn0Jl+VCM+NjfE87oPWyLo+vifaBtFnIgSOkzKh20dZm/Ue1AxXQlYQ/WptHBRa4Lmza/oXgbTpqk9Y+Mw+4IhVtHbCdcEt0DqQ0FRb/qjlwMPaYqOlZ5GxFTiQFsAtYVTpnvcffkDBp1gzlOL2iLhudc66PP4h6v4cBxHx6RTz8bO4KiaQg==
  • iv — представление Base64 вектора инициализации, используемого для создания ключа расшифровки. Пример: vLvaqqAN8GaYI9gGuX1bsQ==

Encoding

В процессе расшифровки необходимо учитывать несколько сведений о кодировке. Следующие данные содержат такие типы кодирования:

  • Ключ расшифровки: UTF-8
  • Ключ расшифровки IV: UTF-8
  • Заполнение для AES — CBC/ PKCS5 PKCS7 в C# совпадает с PKCS5 в Java

Кроме того, выходные данные REST API расшифровки Azure Key Vault закодированы в кодировке Base64. Необходимо декодировать значение из URL-адреса Base64 в байты, а затем закодировать результат в Base64.

Обязательно учитывайте эти различия в кодировке при расшифровке данных. Если закодированные данные расшифровываются неправильно, может возникнуть ошибка, подобная следующему: Invalid AES key length: 88 bytes.

Элигиблность набора данных для шифрования

Следующие наборы данных могут быть зашифрованы для Data Connect:

  • Все наборы данных для Azure Active Directory
  • Все наборы данных для Outlook и Exchange Online
  • Все наборы данных для Microsoft Teams
  • Все наборы данных для групп Майкрософт
  • Все наборы данных для OneDrive и SharePoint

Следующие наборы данных пока не могут быть зашифрованы:

  • Все наборы данных для Viva Insights

Примечание.

Если в приложении включено шифрование и содержится сочетание допустимых и несоответствующих наборов данных, шифруются только соответствующие наборы данных.

утверждение приложения Администратор

Администраторы используют следующий процесс для утверждения приложений Data Connect:

  1. Войдите на портал авторизации администрирования Microsoft 365 с учетными данными администратора.

  2. Выберите вкладку Безопасность & конфиденциальность в параметрах организации, а затем выберите Приложения Microsoft Graph Data Connect, как показано на следующем рисунке. Снимок экрана с параметрами организации, вкладкой

  3. Выберите приложение, готовое к проверке. В разделе Обзор сведений о приложении убедитесь, что шифрование включено. Снимок экрана: приложение Data Connect с выделенным элементом

  4. В разделе Проверка сведений о приложении убедитесь, что выбрано шифрование, и проверьте наборы данных.

    Примечание.

    Если шифрование включено во время регистрации приложения, оно будет применяться ко всем соответствующим наборам данных в приложении.

    Снимок экрана: приложение Data Connect с выделенной проверкой и шифрованием данных

  5. После проверки приложения выберите Утвердить, Отклонить или Отменить. Необходимо выполнить действие, и Data Connect будет применять шифрование только после утверждения приложения. Дополнительные сведения см. в разделе Авторизация приложения.

Использование Key Vault Azure для настраиваемого шифрования

Если у вас нет AKV, выполните действия, описанные на вкладке Настройка Azure Key Vault, прежде чем переходить к следующей вкладке.

После получения существующего akv перейдите на вкладку Использование Key Vault Azure, чтобы включить необходимые разрешения роли. Затем перейдите на вкладку Создание ключей RSA с помощью azure Key Vault, чтобы создать необходимые ключи RSA в AKV для настраиваемого шифрования.

Для включения настраиваемого шифрования от администратора Microsoft 365 не требуется никаких действий.

1. Войдите в портал Azure с учетными данными разработчика и щелкните значок Azure Key Vault. Снимок экрана: портал Azure с выделенным Key Vault Azure

  1. Если у вас нет akv, нажмите кнопку Создать. Дополнительные сведения см. в статье Создание хранилища ключей с помощью портал Azure. Снимок экрана: страница

  2. Выберите Управление доступом на основе ролей Azure (рекомендуется) в разделе Модель разрешений. Снимок экрана: раздел модели разрешений регистрации AKV

  3. На вкладке Сеть выберите Включить общедоступный доступ , чтобы разрешить Data Connect доступ ко всем открытым ключам, которые были созданы и сохранены. Data Connect авторизован только для доступа к избранным открытым ключам. Снимок экрана: вкладка

  4. Следуйте инструкциям и по завершении выберите Проверить и создать .