Использование управляемых удостоверений для 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 и выполните следующие команды:
- Модуль Azure Az PowerShell:
Install-Module -Name Az
- Модуль PowerShell Azure Az.Resources:
Install-Module -Name Az.Resources
- Power Platform Модуль PowerShell администратора:
Install-Module -Name Microsoft.PowerApps.Administration.PowerShell
- Модуль Azure Az PowerShell:
- Перейдите к этому сжатому файлу папки на GitHub. Затем выберите Загрузить , чтобы загрузить его. Извлеките сжатый файл папки на компьютер в место, где вы можете запускать команды PowerShell. Все файлы и папки, извлеченные из сжатой папки, должны быть сохранены в исходном месте.
- Мы рекомендуем создать новый контейнер хранилища в той же группе ресурсов Azure, чтобы внедрить эту функцию.
Включите корпоративную политику для выбранной подписки Azure
Важно
Для выполнения этой задачи вам необходима роль владельца подписки Azure . Получите свой идентификатор подписки Azure на странице обзора группы ресурсов Azure.
- Откройте Azure CLI с помощью Администратор и войдите в свою подписку Azure с помощью команды:
az login
Дополнительная информация: войдите с помощью Azure CLI - (Необязательно) если у вас несколько подписок 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 Resource Graph Explorer.
- Выполните этот запрос:
resources | where type == 'microsoft.powerplatform/enterprisepolicies'
- Прокрутите страницу результатов вправо и выберите ссылку Подробнее .
- На странице Подробности скопируйте идентификатор.
- Откройте Azure CLI и выполните следующую команду, заменив
<objId>
на ObjectID пользователя , а<EP Resource Id>
на идентификатор корпоративной политики.New-AzRoleAssignment -ObjectId <objId> -RoleDefinitionName Reader -Scope <EP Resource Id>
Подключить корпоративную политику к среде Dataverse
Важно
Для выполнения этой задачи у вас должна быть роль Power Platform Администратор или 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 находятся в одной группе ресурсов.