Поделиться через


Использование управляемых удостоверений для Azure с Azure Data Lake Storage

Azure Data Lake Storage обеспечивает многоуровневую модель безопасности. Эта модель позволяет вам защищать и контролировать уровень доступа к вашим учетным записям хранения, который требуется вашим приложениям и корпоративным средам, в зависимости от типа и подмножества используемых сетей или ресурсов. Если сетевые правила настроены, только приложения, запрашивающие данные через указанный набор сетей или через указанный набор ресурсов Azure, могут получить доступ к учетной записи хранения. Вы можете ограничить доступ к своей учетной записи хранения запросами, исходящими с указанных IP-адресов, диапазонов IP-адресов, подсетей в виртуальной сети Azure (VNet) или экземпляров ресурсов некоторых служб Azure.

Управляемые удостоверения для Azure, ранее известные как Managed Service Identity (MSI), помогают управлять секретами. Клиенты Microsoft Dataverse, использующие возможности Azure, создают управляемое удостоверение (часть создания корпоративной политики), которое можно использовать для одной или нескольких сред Dataverse. Это управляемое удостоверение, которое будет подготовлено в вашем клиенте, затем используется Dataverse для доступа к озеру данных Azure.

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

Перед началом работы

  • Azure CLI требуется на вашем локальном компьютере. Загрузка и установка
  • Вам понадобятся эти два модуля PowerShell. Если у вас их нет, откройте PowerShell и выполните следующие команды:
    • Модуль PowerShell Azure Az: Install-Module -Name Az
    • Модуль Azure Az.Resources PowerShell: Install-Module -Name Az.Resources
    • Модуль администратора PowerShell Power Platform: Install-Module -Name Microsoft.PowerApps.Administration.PowerShell
  • Перейдите к этому сжатому файлу папки на GitHub. Затем выберите Загрузить, чтобы скачать его. Извлеките сжатый файл папки на компьютер в место, где вы можете запускать команды PowerShell. Все файлы и папки, извлеченные из сжатой папки, должны быть сохранены в исходном местоположении.
  • Мы рекомендуем создать новый контейнер хранилища в той же группе ресурсов Azure, чтобы внедрить эту функцию.

Включите корпоративную политику для выбранной подписки Azure

Внимание!

Вы должны иметь роль Владелец подписки Azure для выполнения этой задачи. Получите ИД подписки Azure на странице обзора для группы ресурсов Azure.

  1. Откройте Azure CLI с помощью команды «Выполнить от имени администратора» и войдите в свою подписку Azure с помощью команды: az login Больше информации: Вход с помощью Azure CLI
  2. (Необязательно) Если у вас несколько подписок Azure, обязательно запустите Update-AzConfig -DefaultSubscriptionForLogin { Azure subscription id }, чтобы обновить подписку по умолчанию.
  3. Разверните сжатую папку, которую вы загрузили в разделе Перед началом работы для этой функции в место, где вы можете запустить PowerShell.
  4. Чтобы включить корпоративную политику для выбранной подписки Azure, запустите сценарий PowerShell ./SetupSubscriptionForPowerPlatform.ps1.
    • Укажите ИД подписки Azure.

Создайте корпоративную политику

Внимание!

Вы должны иметь роль Владелец группы ресурсов Azure для выполнения этой задачи. Получите Идентификатор подписки Azure, Расположение и имя Группы ресурсов на странице обзора группы ресурсов Azure.

  1. Создайте корпоративную политику. Запустите скрипт PowerShell ./CreateIdentityEnterprisePolicy.ps1

    • Укажите ИД подписки Azure.
    • Укажите имя-группы ресурсов Azure.
    • Укажите предпочтительное имя корпоративной политики.
    • Укажите расположение группы ресурсов Azure.
  2. Сохраните копию ResourceId после создания политики.

Заметка

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

Места, доступные для корпоративной политики

Соединенные Штаты (EUAP)

США

Южная Африка

Соединенное Королевство

Австралия

Республика Корея

Япония

Индия

Франция

Европа

Азия

Норвегия

Германия

Швейцария

Канада

Бразилия

UAE

Сингапур

Предоставьте доступ читателя для корпоративной политики через Azure

Администраторы Dynamics 365 и администраторы Power Platform могут получить доступ к центру администрирования Power Platform для назначения сред для корпоративной политики. Чтобы получить доступ к корпоративным политикам, требуется членство администратора Azure Key Vault, чтобы предоставить роль читателя администратору Dynamics 365 или Power Platform. После предоставления роли читателя администраторы Dynamics 365 или Power Platform будут видеть корпоративные политики в центре администрирования Power Platform.

Только администраторы Dynamics 365 and Power Platform, которым предоставлена роль «Читатель» в корпоративной политике, могут добавлять среду в политику. Другие администраторы Dynamics 365 и PowerPlatform могут просматривать корпоративную политику, но они получат сообщение об ошибке при попытке добавить среду.

Внимание!

Вы должны иметь разрешения Microsoft.Authorization/roleAssignments/write, такие как у администратора доступа пользователей или владельца для выполнения этой задачи.

  1. Войдите на портал Azure.
  2. Получите ObjectID администратора Dynamics 365 или Power Platform.
    1. Перейдите в область Пользователи.
    2. Откройте центр администрирования Dynamics 365 или Power Platform.
    3. На странице обзора для пользователя скопируйте ObjectID.
  3. Получите идентификатор корпоративной политики:
    1. Перейдите в раздел Обозреватель Resource Graph в Azure.
    2. Выполните следующий запрос: resources | where type == 'microsoft.powerplatform/enterprisepolicies'Выполнение запроса из обозревателя Azure Resource Graph
    3. Прокрутите вправо страницу результатов и выберите ссылку Подробнее.
    4. На странице Подробнее скопируйте ИД.
  4. Откройте Azure CLI и выполните следующую команду, заменив <objId> на пользовательский ObjectID и <EP Resource Id> на идентификатор корпоративной политики.
    • New-AzRoleAssignment -ObjectId <objId> -RoleDefinitionName Reader -Scope <EP Resource Id>

Подключить корпоративную политику к среде Dataverse

Внимание!

Вы должны иметь роль Администратор Power Platform или Администратор Dynamics 365 для выполнения этой задачи. Для выполнения этой задачи у вас должна быть роль Читатель для корпоративной политики.

  1. Получите идентификатор среды Dataverse.
    1. Войдите в центр администрирования Power Platform.
    2. Выберите Управление>Среды, затем откройте среду.
    3. В разделе Сведения скопируйте ИД среды.
    4. Чтобы установить связь со средой Dataverse, выполните этот скрипт PowerShell: ./NewIdentity.ps1
    5. Укажите идентификатор среды Dataverse.
    6. Укажите ResourceId.
      StatusCode = 202 указывает, что связь была успешно создана.
  2. Войдите в центр администрирования Power Platform.
  3. Выберите Управление>Среды, затем откройте среду, указанную ранее.
  4. В области Недавние операции выберите Полный журнал для подтверждения подключения нового удостоверения.

Настройте сетевой доступ к Azure Data Lake Storage 2-го поколения

Внимание!

Для выполнения этой задачи у вас должна быть роль владельца Azure Data Lake Storage Gen2.

  1. Переход на портал Azure.

  2. Откройте учетную запись хранения, связанную с вашим профилем Azure Synapse Link для Dataverse.

  3. В левой области навигации выберите Сеть. Затем на вкладке Брандмауэры и виртуальные сети выберите следующие параметры:

    1. Включено из выбранных виртуальных сетей и IP-адресов.
    2. В разделе Экземпляры ресурсов выберите Разрешить службам Azure из списка доверенных служб доступ к этой учетной записи хранения
  4. Выберите Сохранить.

Настройте сетевой доступ к Azure Synapse Workspace

Внимание!

Для выполнения этой задачи у вас должна быть роль системного администратора Azure.

  1. Переход на портал Azure.
  2. Откройте рабочую область Azure Synapse workspace, связанную с вашим профилем Azure Synapse Link для Dataverse.
  3. В левой области навигации выберите Сеть.
  4. Выберите Разрешить службам и ресурсам Azure доступ к этой рабочей области.
  5. Если для всех диапазонов IP-адресов созданы правила брандмауэра для IP-адресов, удалите их, чтобы ограничить доступ к общедоступной сети. Сетевые параметры рабочей области Azure Synapse workspace
  6. Добавьте новое правило брандмауэра для IP-адресов на основе IP-адреса клиента.
  7. После завершения нажмите Сохранить. Дополнительная информация: Правила брандмауэра для IP-адресов Azure Synapse Analytics

Внимание!

Dataverse. У вас должна быть роль безопасности Системный администратор в Dataverse. Кроме того, для таблиц, которые вы хотите экспортировать через Azure Synapse Link, должно быть включено свойство Отслеживать изменения. Больше информации: Дополнительные параметры

Azure Data Lake Storage Gen2: у вас должна быть учетная запись Azure Data Lake Storage Gen2 и доступ с ролью Владелец и Участник данных хранилища BLOB-объектов. В вашей учетной записи хранения должно быть включено Иерархическое пространство имен как для первоначальной настройки, так и для дельта-синхронизации. Разрешить доступ к ключу учетной записи хранения требуется только для первоначальной настройки.

Рабочее пространство Synapse: у вас должно быть рабочее пространство Synapse и роль Администратор Synapse в Synapse Studio. Рабочая область Synapse должна находиться в том же регионе, что и ваша учетная запись Azure Data Lake Storage Gen2. Учетная запись хранения должна быть добавлена в качестве связанной службы в Synapse Studio. Чтобы создать рабочую область Synapse, перейдите в Создание рабочей области Synapse.

Когда вы создаете ссылку, Azure Synapse Link для Dataverse получает сведения о текущей связанной корпоративной политике в среде Dataverse, затем кэширует URL-адрес секрета клиента удостоверения для подключения к Azure.

  1. Войдите в Power Apps и выберите свою среду.
  2. В левой области навигации выберите Azure Synapse Link, затем выберите + Создать ссылку. Если этого пункта нет на боковой панели, выберите …Еще, а затем выберите нужный пункт.
  3. Заполните соответствующие поля в соответствии с предполагаемой настройкой. Выберите Подписка, Группа ресурсов и Учетная запись хранения. Чтобы подключить Dataverse к рабочей области Synapse, выберите параметр Подключиться к Azure Synapse workspace. Для преобразования данных Delta Lake выберите пул Spark.
  4. Выберите Выбрать корпоративную политику с управляемым удостоверением службы, а затем Далее.
  5. Добавьте таблицы, которые хотите экспортировать, а затем выберите Сохранить.

Заметка

Чтобы сделать команду Использовать управляемое удостоверение доступной в Power Apps, вам необходимо закончить описанную выше настройку, чтобы подключить корпоративную политику к вашей среде Dataverse. Дополнительные сведения: Подключение корпоративной политики к среде Dataverse

  1. Перейдите в существующий профиль Synapse Link с Power Apps (make.powerapps.com).
  2. Выберите Использовать управляемое удостоверение и подтвердите. Команда «Использовать управляемое удостоверение» в Power Apps

Устранение неполадок

Если при создании связи вы получаете ошибку 403:

  • Управляемым удостоверениям требуется дополнительное время для предоставления временного разрешения во время начальной синхронизации. Подождите некоторое время и повторите операцию позже.
  • Убедитесь, что в связанном хранилище нет существующего контейнера Dataverse (dataverse-environmentName-organizationUniqueName) из той же среды.
  • Вы можете определить связанную корпоративную политику и policyArmId, запустив сценарий PowerShell ./GetIdentityEnterprisePolicyforEnvironment.ps1 с ИД подписки и Именем группы ресурсов Azure.
  • Вы можете отменить связь корпоративной политики, запустив сценарий PowerShell ./RevertIdentity.ps1 с идентификатором среды Dataverse и policyArmId.
  • Вы можете удалить корпоративную политику, запустив сценарий PowerShell .\RemoveIdentityEnterprisePolicy.ps1 с policyArmId.

Известные ограничения

Только одна политика предприятия может одновременно подключаться к среде Dataverse. Если вам нужно создать несколько ссылок Azure Synapse Link с включенным управляемым удостоверением, убедитесь, что все связанные ресурсы Azure относятся к одной группе ресурсов.

См. также

Что такое Azure Synapse Link для Dataverse?