Использование управляемых удостоверений для Azure с Azure Data Lake Storage
Azure Data Lake Storage обеспечивает многоуровневую модель безопасности. Эта модель позволяет вам защищать и контролировать уровень доступа к вашим учетным записям хранения, который требуется вашим приложениям и корпоративным средам, в зависимости от типа и подмножества используемых сетей или ресурсов. Если сетевые правила настроены, только приложения, запрашивающие данные через указанный набор сетей или через указанный набор ресурсов Azure, могут получить доступ к учетной записи хранения. Вы можете ограничить доступ к своей учетной записи хранения запросами, исходящими с указанных IP-адресов, диапазонов IP-адресов, подсетей в виртуальной сети Azure (VNet) или экземпляров ресурсов некоторых служб Azure.
Управляемые удостоверения для Azure, ранее известные как управляемые удостоверения служб (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
- Модуль PowerShell Azure Az:
- Перейдите к этому сжатому файлу папки на GitHub. Затем выберите Загрузить , чтобы загрузить его. Извлеките сжатый файл папки на компьютер в место, где вы можете запускать команды PowerShell. Все файлы и папки, извлеченные из сжатой папки, должны быть сохранены в исходном месте.
- Мы рекомендуем создать новый контейнер хранилища в той же группе ресурсов Azure, чтобы внедрить эту функцию.
Включите корпоративную политику для выбранной подписки Azure
Внимание!
Для выполнения этой задачи у вас должна быть роль владельца подписки Azure . Получите свой Azure Идентификатор подписки на странице обзора группы ресурсов Azure.
- Откройте CLI Azure с помощью Администратор и войдите в свою подписку Azure с помощью команды:
az login
Дополнительная информация: войдите с помощью CLI Azure - (Необязательно) если у вас несколько подписок Azure, обязательно запустите
Update-AzConfig -DefaultSubscriptionForLogin { Azure subscription id }
, чтобы обновить подписку по умолчанию. - Разверните сжатую папку, которую вы скачали как часть Перед началом работы с этой функцией, в место, где вы сможете запустить PowerShell.
- Чтобы включить корпоративную политику для выбранной подписки Azure, запустите скрипт PowerShell ./SetupSubscriptionForPowerPlatform.ps1.
- Укажите ИД подписки Azure.
Создайте корпоративную политику
Внимание!
Для выполнения этой задачи у вас должна быть роль владельца группы ресурсов Azure . Получите свой Azure Идентификатор подписки, Расположение и Имя группы ресурсов на странице обзора группы ресурсов Azure.
Создайте корпоративную политику. Запустить скрипт PowerShell
./CreateIdentityEnterprisePolicy.ps1
- Укажите ИД подписки Azure.
- Укажите имя-группы ресурсов Azure.
- Укажите предпочтительное имя корпоративной политики.
- Укажите расположение группы ресурсов Azure.
Сохраните копию ResourceId после создания политики.
Заметка
Ниже приведены допустимые входные данные местоположения, поддерживаемые для создания политики. Выберите наиболее подходящее для вас место.
Места, доступные для корпоративной политики
Соединенные Штаты (EUAP)
США
Южная Африка
Соединенное Королевство
Австралия
Республика Корея
Япония
Индия
Франция
Европа
Азия
Норвегия
Германия
Швейцария
Канада
Бразилия
UAE
Сингапур
Предоставьте доступ читателя для корпоративной политики через Azure
Администраторы Dynamics 365 и Power Platform администраторы могут получить доступ к Power Platform центру администрирования для назначения сред корпоративной политике. Для доступа к корпоративным политикам требуется членство администратора хранилища ключей Azure, чтобы предоставить роль Читатель администратору Dynamics 365 или Power Platform . После предоставления роли Читатель администраторы Dynamics 365 или Power Platform увидят корпоративные политики в центре Power Platform администрирования.
Только администраторы Dynamics 365 and Power Platform, которым предоставлена роль «Читатель» в корпоративной политике, могут добавлять среду в политику. Другие администраторы Dynamics 365 и PowerPlatform могут просматривать корпоративную политику, но они получат сообщение об ошибке при попытке добавить среду.
Внимание!
Для выполнения этой задачи у вас должны быть Microsoft.Authorization/roleAssignments/write
разрешения, такие как Доступ пользователя Администратор или Владелец .
- Войдите на портал Azure.
- Получите идентификатор объекта Power Platform пользователя-администратора Dynamics 365 .
- Перейдите в раздел Пользователи .
- Откройте центр администрирования Dynamics 365 или Power Platform.
- На странице обзора пользователя скопируйте ObjectID.
- Получите идентификатор политики предприятия:
- Перейдите в Azure Обозреватель графиков ресурсов.
- Выполните этот запрос:
resources | where type == 'microsoft.powerplatform/enterprisepolicies'
- Прокрутите страницу результатов вправо и выберите ссылку Подробнее .
- На странице Подробности скопируйте идентификатор.
- Откройте интерфейс командной строки Azure и выполните следующую команду, заменив
<objId>
на идентификатор объекта пользователя , а<EP Resource Id>
на идентификатор политики предприятия.New-AzRoleAssignment -ObjectId <objId> -RoleDefinitionName Reader -Scope <EP Resource Id>
Подключить корпоративную политику к среде Dataverse
Внимание!
Для выполнения этой задачи у вас должна быть роль Power Platform Администратор or Dynamics 365 Администратор . Для выполнения этой задачи у вас должна быть роль Читатель для корпоративной политики.
- Получите идентификатор среды Dataverse.
- войдите в Power Platform центр администрирования.
- Выберите Среды, а затем откройте свою среду.
- В разделе Подробности скопируйте Идентификатор среды.
- Чтобы подключиться к Dataverse среде, запустите этот скрипт PowerShell:
./NewIdentity.ps1
- Укажите идентификатор среды Dataverse.
- Укажите ResourceId.
StatusCode = 202 указывает, что ссылка была успешно создана.
- войдите в Power Platform центр администрирования.
- Выберите Среды, а затем откройте среду, которую вы указали ранее.
- В области Недавние операции выберите Полная история , чтобы проверить подключение нового удостоверения.
Настройте сетевой доступ к Azure Data Lake Storage 2-го поколения
Внимание!
Для выполнения этой задачи у вас должна быть роль Azure Data Lake Storage владельца Gen2 .
Переход на портал Azure.
Откройте учетную запись хранения, связанную с вашим профилем Azure Synapse Link for Dataverse.
На левой навигационной панели выберите Сеть. Затем на вкладке Брандмауэры и виртуальные сети выберите следующие настройки:
- Включено из выбранных виртуальных сетей и IP-адресов.
- В разделе Экземпляры ресурсов выберите Разрешить службам Azure из списка доверенных служб доступ к этой учетной записи хранения.
Выберите Сохранить.
Настройте сетевой доступ к Azure Synapse Workspace
Внимание!
Для выполнения этой задачи у вас должна быть роль Azure Synapse Администратор .
- Переход на портал Azure.
- Откройте рабочую область Azure Synapse Workspace, связанную с вашим профилем Azure Synapse Link for Dataverse.
- На левой навигационной панели выберите Сеть.
- Выберите Разрешить службам и ресурсам Azure доступ к этой рабочей области.
- Если для всего диапазона IP-адресов созданы правила брандмауэра IP, удалите их, чтобы ограничить доступ к публичной сети.
- Добавьте новое правило брандмауэра IP на основе IP-адреса клиента.
- По завершении выберите Сохранить . Дополнительная информация: Azure Synapse Analytics Правила межсетевого экрана IP
Создание нового Azure Synapse Link for Dataverse с управляемым удостоверением
Внимание!
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 for Dataverse получает сведения о текущей связанной корпоративной политике в среде Dataverse, а затем кэширует секретный URL-адрес клиента удостоверения для подключения к Azure.
- войдите в систему Power Apps и выберите свою среду.
- На левой навигационной панели выберите Azure Synapse Link, а затем выберите + Новая ссылка. Если этого пункта нет на боковой панели, выберите …Еще, а затем выберите нужный пункт.
- Заполните соответствующие поля в соответствии с предполагаемой настройкой. Выберите Подписка, Группа ресурсов и Учетная запись хранения. Чтобы подключиться Dataverse к рабочей области Synapse, выберите опцию Подключиться к своей Azure Synapse рабочей области . Для преобразования данных Delta Lake выберите пул Spark.
- Выберите Выбрать корпоративную политику с управляемым удостоверением службы, а затем выберите Далее.
- Добавьте таблицы, которые хотите экспортировать, а затем выберите Сохранить.
Включение управляемого удостоверения для существующего профиля Azure Synapse Link
Заметка
Чтобы команда Использовать управляемую идентификацию стала доступной в Power Apps, вам необходимо завершить описанную выше настройку, чтобы подключить корпоративную политику к вашей Dataverse среде. Дополнительная информация: Подключение корпоративной политики к Dataverse среде
- Перейдите в существующий профиль Synapse Link с Power Apps (make.powerapps.com).
- Выберите Использовать управляемую идентификацию, а затем подтвердите.
Устранение неполадок
Если при создании связи вы получаете ошибку 403:
- Управляемым удостоверениям требуется дополнительное время для предоставления временного разрешения во время начальной синхронизации. Подождите некоторое время и повторите операцию позже.
- Убедитесь, что связанное хранилище не имеет существующего Dataverse контейнера(dataverse-environmentName-organizationUniqueName) из той же среды.
- Вы можете определить связанную корпоративную политику,
policyArmId
запустив скрипт PowerShell./GetIdentityEnterprisePolicyforEnvironment.ps1
с идентификатором подписки Azure именем группы ресурсов . - Вы можете отменить привязку к корпоративной политике, запустив скрипт PowerShell
./RevertIdentity.ps1
с Dataverse идентификатором среды иpolicyArmId
. - Вы можете удалить корпоративную политику, запустив скрипт PowerShell .\RemoveIdentityEnterprisePolicy.ps1 с policyArmId.
Известные ограничения
Только одна политика предприятия может одновременно подключаться к среде Dataverse. Если вам нужно создать несколько ссылок Azure Synapse Link с включенным управляемым удостоверением, убедитесь, что все связанные ресурсы Azure находятся в одной группе ресурсов.