Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье описываются роли и разрешения, необходимые для совместного использования и получения данных с помощью службы Azure Data Share.
Роли и требования
С помощью службы Azure Data Share вы можете совместно использовать данные без обмена учетными данными между поставщиком данных и потребителем. Для совместного использования на основе моментальных снимков служба Azure Data Share использует управляемые удостоверения (которые ранее назывались MSI) для проверки подлинности в хранилище данных Azure.
Чтобы создать доли в Azure Data Share, пользователю требуются следующие разрешения:
- Разрешения для учетной записи общего доступа к данным: Участник
- Группа ресурсов хранилища: Reader (Разрешения на чтение группы ресурсов, в которой находятся ваши учетные записи хранения или базы данных, позволяют находить их в портале.)
- Разрешения источника в зависимости от источника:
Общий доступ к хранилищу и озерам данных
| Тип хранилища данных | Действие | Роль в хранилище исходных данных | Роль в целевом хранилище данных | Примечание. |
|---|---|---|---|---|
| Хранилище BLOB в Azure | Поделиться данными | Соавтор учетной записи хранения** | **Вместо этого можно создать пользовательскую роль с необходимыми действиями хранилища | |
| Получение данных | Соавтор учетной записи хранения** | **Вместо этого можно создать пользовательскую роль с необходимыми действиями хранилища | ||
| Автоматическое назначение разрешений MI для общего доступа | Роль с помощью Microsoft.Authorization/назначения ролей и записи* | Необязательно. Вместо этого можно назначить разрешения MI вручную. | ||
| Автоматическое назначение разрешений MI для получения | Роль с помощью Microsoft.Authorization/назначения ролей и записи* | Необязательно. Вместо этого можно назначить разрешения MI вручную. | ||
| Azure Data Lake 1-го поколения | Поделиться данными | Доступ и запись разрешений на файлы, к которым вы хотите предоставить общий доступ. | ||
| Получение данных | Не поддерживается | |||
| Автоматическое назначение разрешений MI для общего доступа | Роль с помощью Microsoft.Authorization/назначения ролей и записи* | Необязательно. Вместо этого можно назначить разрешения MI вручную. | ||
| Автоматическое назначение разрешений MI для получения | Не поддерживается. | |||
| Azure Data Lake 2-го поколения | Поделиться данными | Соавтор учетной записи хранения** | **Вместо этого можно создать пользовательскую роль с необходимыми действиями хранилища | |
| Получение данных | Соавтор учетной записи хранения** | **Вместо этого можно создать пользовательскую роль с необходимыми действиями хранилища | ||
| Автоматическое назначение разрешений MI для общего доступа | Роль с помощью Microsoft.Authorization/назначения ролей и записи* | Необязательно. Вместо этого можно назначить разрешения MI вручную. | ||
| Автоматическое назначение разрешений MI для получения | Роль с помощью Microsoft.Authorization/назначения ролей и записи* | Необязательно. Вместо этого можно назначить разрешения MI вручную. |
* Это разрешение существует в роли владельца .
Дополнительные сведения о совместном использовании данных с хранилищем Azure и из него см. в статье о совместном использовании и получении данных из хранилища BLOB-объектов Azure и Azure Data Lake Storage.
Общий доступ к базе данных SQL
Чтобы предоставить общий доступ к данным из SQL, можно использовать следующее:
Чтобы получить данные в SQL, необходимо назначить разрешения для получения данных.
Аутентификация Microsoft Entra для предоставления общего доступа
Эти предварительные требования охватывают необходимую проверку подлинности, чтобы Azure Data Share могли подключиться к базе данных SQL Azure:
- Вам нужно разрешение на запись в базы данных на SQL Server: Microsoft.Sql/servers/database/write. Это разрешение имеется в роли Contributor.
- Разрешения Microsoft Entra Admin в SQL Server.
- Доступ к брандмауэру SQL Server:
- В портале Azure перейдите к своему серверу SQL. Выберите Брандмауэры и виртуальные сети в левой области навигации.
- Выберите значение Да для параметра Разрешить доступ к серверу службам и ресурсам Azure.
- Выберите + Добавить IP-адрес клиента. IP-адрес клиента может измениться, поэтому может потребоваться снова добавить IP-адрес клиента при следующем совместном использовании данных на портале.
- Выберите Сохранить.
Аутентификация SQL для совместного использования
Вы можете следовать инструкциям в пошаговом демонстрационном видео, чтобы настроить аутентификацию, или выполнить все следующие предварительные условия:
Разрешение на запись в базы данных на SQL Server: Microsoft.Sql/servers/database/write. Это разрешение имеется в роли Contributor.
Разрешение для управляемого удостоверения ресурса Azure Data Share на доступ к базе данных:
В портале Azure перейдите к серверу SQL и назначьте себя администратором Microsoft Entra.
Подключитесь к Базе данных SQL Azure или хранилищу данных с помощью Редактора запросов или SQL Server Management Studio с проверкой подлинности через Microsoft Entra.
Выполните следующий скрипт, чтобы добавить управляемую идентификацию ресурса Data Share в роль db_datareader. Подключайтесь с помощью Active Directory, а не аутентификации SQL Server.
create user "<share_acct_name>" from external provider; exec sp_addrolemember db_datareader, "<share_acct_name>";Примечание.
<share_acc_name> — это имя вашего ресурса Data Share.
Пользователь Базы данных SQL Azure с доступом 'db_datareader', чтобы переходить по таблицам или представлениям и выбирать те из них, которыми вы хотите поделиться.
Доступ к брандмауэру SQL Server:
- На портале Azure перейдите в раздел SQL Server. Выберите Брандмауэры и виртуальные сети в левой области навигации.
- Выберите значение Да для параметра Разрешить доступ к серверу службам и ресурсам Azure.
- Выберите + Добавить IP-адрес клиента. IP-адрес клиента может измениться, поэтому может потребоваться снова добавить IP-адрес клиента при следующем совместном использовании данных на портале.
- Выберите Сохранить.
Аутентификация для получения данных в SQL
Для сервера SQL, где вы являетесь администратором Microsoft Entra для сервера SQL, выполните следующие предварительные требования перед принятием общего ресурса данных:
- База данных SQL Azure или Azure Synapse Analytics (ранее — хранилище данных SQL Azure).
- Разрешение на запись в базы данных на SQL Server: Microsoft.Sql/servers/database/write. Это разрешение имеется в роли Contributor.
- Доступ к брандмауэру SQL Server:
- В портале Azure перейдите к своему серверу SQL. Выберите Брандмауэры и виртуальные сети в левой области навигации.
- Выберите значение Да для параметра Разрешить доступ к серверу службам и ресурсам Azure.
- Выберите + Добавить IP-адрес клиента. IP-адрес клиента может измениться, поэтому может потребоваться снова добавить IP-адрес клиента при следующем совместном использовании данных на портале.
- Выберите Сохранить.
Если для сервера SQL вы не являетесь администратором Microsoft Entra, выполните следующие предварительные требования, прежде чем принимать обмен данными:
Вы можете воспользоваться пошаговым демонстрационным видео или выполнить описанные ниже действия, чтобы настроить необходимые компоненты.
База данных SQL Azure или Azure Synapse Analytics (ранее — хранилище данных SQL Azure).
Разрешение на запись в базы данных на сервере SQL Server: Microsoft.Sql/servers/database/write. Это разрешение имеется в роли Contributor.
Разрешение для управляемой идентификации ресурса Data Share на доступ к базе данных Azure SQL или Azure Synapse Analytics:
В портале Azure перейдите к серверу SQL и назначьте себя администратором Microsoft Entra.
Подключитесь к Базе данных SQL Azure или хранилищу данных с помощью Редактора запросов или SQL Server Management Studio с проверкой подлинности через Microsoft Entra.
Выполните следующий скрипт, чтобы добавить управляемую идентификацию Data Share в роли 'db_datareader, db_datawriter, db_ddladmin'.
create user "<share_acc_name>" from external provider; exec sp_addrolemember db_datareader, "<share_acc_name>"; exec sp_addrolemember db_datawriter, "<share_acc_name>"; exec sp_addrolemember db_ddladmin, "<share_acc_name>";Примечание.
<share_acc_name> — это имя вашего ресурса Data Share.
Доступ к брандмауэру SQL Server:
- В портал Azure перейдите к СЕРВЕРУ SQL Server и выберите брандмауэры и виртуальные сети.
- Выберите значение Да для параметра Разрешить доступ к серверу службам и ресурсам Azure.
- Выберите + Добавить IP-адрес клиента. IP-адрес клиента может измениться, поэтому может потребоваться снова добавить IP-адрес клиента при следующем совместном использовании данных на портале.
- Выберите Сохранить.
Дополнительные сведения о совместном доступе к Azure SQL и из Azure SQL см. в статье о совместном использовании и получении данных из База данных SQL Azure.
Совместное использование Azure Synapse Analytics
Поделиться
Разрешение на запись в пул SQL в рабочей области Synapse: Microsoft.Synapse/workspaces/sqlPools/write. Это разрешение имеется в роли Contributor.
Разрешение для управляемой идентификации ресурса Data Share на доступ к пулу SQL рабочей области Synapse:
В портале Azure перейдите в рабочую область Synapse. Выберите SQL Active Directory admin в левой панели навигации и назначьте себя администратором Microsoft Entra.
Откройте Synapse Studio, выберите "Управление " в области навигации слева. Выберите Управление доступом в разделе "Безопасность". Назначьте себе роль администратора SQL или администратора рабочей области.
Выберите " Разработка " в области навигации слева в Synapse Studio. Выполните следующий скрипт в пуле SQL, чтобы добавить управляемое ресурсом удостоверение data Share в качестве db_datareader.
create user "<share_acct_name>" from external provider; exec sp_addrolemember db_datareader, "<share_acct_name>";Примечание.
<share_acc_name> — это имя вашего ресурса Data Share.
Доступ к брандмауэру рабочей области Synapse:
- В портале Azure перейдите в рабочую область Synapse. В области навигации слева выберите Брандмауэры.
- Выберите значение Вкл. для параметра Разрешить службам и ресурсам Azure доступ к этой рабочей области.
- Выберите + Добавить IP-адрес клиента. IP-адрес клиента может измениться, поэтому может потребоваться снова добавить IP-адрес клиента при следующем совместном использовании данных на портале.
- Выберите Сохранить.
Получить
Выделенный пул SQL в Azure Synapse Analytics (рабочая область). Получение данных в бессерверный пул SQL в настоящее время не поддерживается.
Разрешение на запись в пул SQL в рабочей области Synapse: Microsoft.Synapse/workspaces/sqlPools/write. Это разрешение имеется в роли Contributor.
Разрешение для управляемой идентификации ресурса Data Share на доступ к пулу SQL рабочей области Synapse:
В портале Azure перейдите в рабочую область Synapse.
Выберите администратора SQL Active Directory в левой области навигации и задайте себя администратором Microsoft Entra.
Откройте Synapse Studio, затем выберите Управление в области навигации слева. Выберите Управление доступом в разделе "Безопасность". Назначьте себе роль администратора SQL или администратора рабочей области.
В Synapse Studio в области навигации слева выберите Разработка. Выполните следующий скрипт в SQL-пуле, чтобы добавить управляемое удостоверение ресурса Data Share в качестве 'db_datareader, db_datawriter, db_ddladmin'.
create user "<share_acc_name>" from external provider; exec sp_addrolemember db_datareader, "<share_acc_name>"; exec sp_addrolemember db_datawriter, "<share_acc_name>"; exec sp_addrolemember db_ddladmin, "<share_acc_name>";Примечание.
<share_acc_name> — это имя вашего ресурса Data Share.
Доступ к брандмауэру рабочей области Synapse:
- В портале Azure перейдите в рабочую область Synapse. В области навигации слева выберите Брандмауэры.
- Выберите значение Вкл. для параметра Разрешить службам и ресурсам Azure доступ к этой рабочей области.
- Выберите + Добавить IP-адрес клиента. IP-адрес клиента можно изменить. Этот процесс может потребоваться повторить при следующем обмене данными SQL из портал Azure.
- Выберите Сохранить.
Дополнительные сведения о предоставлении и получении данных в Azure Synapse Analytics см. в статье о предоставлении и получении данных в Azure Synapse Analytics.
Назначение разрешений MI вручную
Если у пользователя есть разрешение Microsoft.Authorization/role assignments/write для исходного или целевого хранилища данных, Azure Data Share автоматически назначит своей управляемой идентичности разрешения, необходимые для аутентификации в этом хранилище данных. Вы также можете вручную назначить разрешения для управляемой идентификации.
Если вы решили назначить разрешения вручную, назначьте эти разрешения управляемой идентичности ресурса Azure Data Share в зависимости от источника и действия:
| Тип хранилища данных | Исходное хранилище данных поставщика данных | Целевое хранилище данных для потребителя данных |
|---|---|---|
| Хранилище BLOB в Azure | Читатель данных BLOB-объектов хранилища | Участник данных хранилища BLOB-объектов |
| Azure Data Lake 1-го поколения | Владелец | Не поддерживается |
| Azure Data Lake 2-го поколения | Читатель данных BLOB-объектов хранилища | Участник данных хранилища BLOB-объектов |
| База данных SQL Azure | db_datareader | db_datareader, db_datawriter, db_ddladmin |
| Azure Synapse Analytics | db_datareader | db_datareader, db_datawriter, db_ddladmin |
Пример поставщика данных
При предоставлении общего доступа к данным из учётной записи хранения управляемой идентичности ресурса общего доступа к данным назначается роль Storage Blob Data Reader.
Это выполняется автоматически службой Azure Data Share при добавлении набора данных через портал Azure, а пользователь является владельцем хранилища данных Azure или является членом настраиваемой роли с назначенным разрешением Microsoft.Authorization/roles/write.
В качестве альтернативы пользователь может попросить владельца хранилища данных Azure вручную добавить управляемое удостоверение ресурса общего доступа к данным в хранилище данных Azure. Это действие необходимо выполнить только один раз для каждого общего ресурса данных.
Чтобы вручную создать назначение роли для управляемой идентичности ресурса общего доступа к данным, выполните следующие действия:
Перейдите в хранилище данных Azure.
Выберите Управление доступом (IAM).
Выберите Добавить > Добавить назначение роли.
На вкладке "Роль" выберите одну из ролей, перечисленных в таблице назначения ролей в предыдущем разделе.
На вкладке Члены выберите Управляемое удостоверение, а затем выберите Выбрать членов.
Выберите свою подписку Azure.
Выберите управляемое удостоверение, назначаемое системой, найдите ресурс Azure Data Share и выберите его.
Чтобы назначить роль, на вкладке Проверка и назначение выберите Проверка и назначение.
Чтобы узнать больше о назначениях ролей, см. статью Назначение ролей Azure с помощью портала Azure. Если вы предоставляете общий доступ к данным с помощью REST API, можно создать назначение ролей с помощью API, ссылаясь на назначение ролей Azure с помощью REST API.
Для совместного доступа на основе моментальных снимков SQL в базе данных SQL необходимо создать пользователя SQL от внешнего поставщика с тем же именем, что и у ресурса Azure Data Share, при подключении к базе данных SQL с использованием аутентификации Microsoft Entra. Этому пользователю необходимо предоставить разрешение db_datareader. Пример скрипта, а также другие необходимые компоненты для совместного использования на основе SQL см. в учебнике Совместное использование из Базы данных SQL Azure или Azure Synapse Analytics.
Пример потребителя данных
Чтобы данные могли поступать в учетную запись хранения, управляемой идентичности ресурса общего доступа к данным получателя необходимо предоставить доступ к целевой учетной записи хранения. Управляемой идентичности ресурса общего доступа к данным необходимо назначить роль Участник данных BLOB-объектов хранилища. Это выполняется автоматически службой Azure Data Share, если пользователь имеет соответствующее разрешение и указывает целевую учетную запись хранения с помощью портала Azure. Например, пользователь является владельцем учетной записи хранения или членом настраиваемой роли, которой назначено разрешение Microsoft.Authorization/role assignments/write.
В качестве альтернативы пользователь может попросить владельца учетной записи хранения вручную добавить управляемое удостоверение ресурса Data Share в учетную запись хранения. Это действие необходимо выполнить только один раз для каждого общего ресурса данных. Чтобы вручную создать назначение роли доступа для управляемой идентичности ресурса общего доступа к данным, выполните следующие действия.
Перейдите в хранилище данных Azure.
Выберите Управление доступом (IAM).
Выберите Добавить > Добавить назначение роли.
На вкладке "Роль" выберите одну из ролей, перечисленных в таблице назначения ролей в предыдущем разделе. Например, для учетной записи хранения выберите средство чтения данных BLOB-объектов хранилища.
На вкладке Члены выберите Управляемое удостоверение, а затем выберите Выбрать членов.
Выберите свою подписку Azure.
Выберите управляемое удостоверение, назначаемое системой, найдите ресурс Azure Data Share и выберите его.
Чтобы назначить роль, на вкладке Проверка и назначение выберите Проверка и назначение.
Чтобы узнать больше о назначениях ролей, см. статью Назначение ролей Azure с помощью портала Azure. Если вы получаете данные с помощью REST API, можно создать назначение ролей с помощью API, ссылаясь на назначение ролей Azure с помощью REST API.
Для целевого объекта на основе SQL необходимо создать пользователя SQL из внешнего поставщика в База данных SQL с тем же именем, что и ресурс Azure Data Share при подключении к базе данных SQL с помощью проверки подлинности Microsoft Entra. Этому пользователю необходимо предоставить разрешения db_datareader, db_datawriter, db_ddladmin. Пример скрипта, а также другие необходимые компоненты для совместного использования на основе SQL см. в учебнике Совместное использование из Базы данных SQL Azure или Azure Synapse Analytics.
Регистрация поставщика ресурсов
Возможно, потребуется вручную зарегистрировать поставщика ресурсов Microsoft.DataShare в подписке Azure в следующих сценариях:
- Просмотр приглашения Azure Data Share впервые в вашем клиенте Azure
- Предоставить общий доступ к данным из хранилища данных Azure в другой подписке Azure с помощью ресурса Azure Data Share
- Получение данных в хранилище данных Azure в другой подписке Azure из ресурса Azure Data Share
Выполните следующие действия, чтобы зарегистрировать поставщик ресурсов Microsoft.DataShare в подписке Azure. Для регистрации поставщика ресурсов необходимо иметь доступ участника к подписке Azure.
- На портале Azure перейдите к подпискам.
- Выберите подписку, которую вы использовали для Azure Data Share.
- Выберите Поставщики ресурсов.
- Найдите Microsoft.DataShare.
- Выберите Зарегистрировать.
Дополнительные сведения о поставщике ресурсов см. в описании поставщиков и типов ресурсов Azure.
Пользовательские роли для общего доступа к данным
В этом разделе описываются пользовательские роли и разрешения, необходимые в рамках этих ролей для совместного использования и получения данных для учетной записи хранения. Существуют также предварительные требования, которые не зависят от пользовательской роли или роли Azure Data Share.
Предварительные требования для общего доступа к данным, помимо настраиваемой роли
- Для общего доступа на основе моментальных снимков к хранилищу и озеру данных при добавлении набора данных в Azure Data Share необходимо предоставить управляемой идентичности ресурса общего доступа к данным поставщика доступ к исходному хранилищу данных Azure. Например, при использовании учетной записи хранения управляемой идентификации ресурса общего доступа к данным назначается роль «Читатель данных BLOB-объектов хранилища».
- Чтобы получать данные в учетную запись хранения, необходимо предоставить управляемому удостоверению ресурса получателя общего доступа к данным доступ к целевой учетной записи хранения. Управляемому удостоверению общего ресурса данных необходимо предоставить роль участника данных BLOB-объекта хранилища.
- Вам также может потребоваться вручную зарегистрировать поставщика ресурсов Microsoft.DataShare в подписке Azure для некоторых сценариев. Подробные сведения см. в разделе Регистрация поставщика ресурсов этой статьи.
Создание настраиваемых ролей и необходимых разрешений
Пользовательские роли можно создавать в подписке или группе ресурсов для совместного использования и получения данных. Затем пользователям и группам можно назначить настраиваемую роль.
- Для создания пользовательской роли требуются действия для Storage, Data Share, группы ресурсов и авторизации. Ознакомьтесь с документом об операциях поставщика ресурсов Azure для общего доступа к данным, чтобы понять различные уровни разрешений и выбрать соответствующие для вашей пользовательской роли.
- Кроме того, можно использовать портал Azure для перехода к IAM, настраиваемой роли, добавлению разрешений, поиску, поиску разрешений Microsoft.DataShare, чтобы просмотреть список доступных действий.
- Дополнительные сведения о назначении настраиваемых ролей см. в статье о пользовательских ролях Azure. После получения пользовательской роли проверьте ее, чтобы убедиться, что она работает должным образом.
В следующем примере показано, как необходимые действия будут перечислены в представлении JSON для пользовательской роли для совместного использования и получения данных.
{
"Actions": [
"Microsoft.Storage/storageAccounts/read",
"Microsoft.Storage/storageAccounts/write",
"Microsoft.Storage/storageAccounts/blobServices/containers/read",
"Microsoft.Storage/storageAccounts/blobServices/generateUserDelegationKey/action",
"Microsoft.Storage/storageAccounts/listkeys/action",
"Microsoft.DataShare/accounts/read",
"Microsoft.DataShare/accounts/providers/Microsoft.Insights/metricDefinitions/read",
"Microsoft.DataShare/accounts/shares/listSynchronizations/action",
"Microsoft.DataShare/accounts/shares/synchronizationSettings/read",
"Microsoft.DataShare/accounts/shares/synchronizationSettings/write",
"Microsoft.DataShare/accounts/shares/synchronizationSettings/delete",
"Microsoft.DataShare/accounts/shareSubscriptions/*",
"Microsoft.DataShare/listInvitations/read",
"Microsoft.DataShare/locations/rejectInvitation/action",
"Microsoft.DataShare/locations/consumerInvitations/read",
"Microsoft.DataShare/locations/operationResults/read",
"Microsoft.Resources/subscriptions/resourceGroups/read",
"Microsoft.Resources/subscriptions/resourcegroups/resources/read",
"Microsoft.Authorization/roleAssignments/read",
]
}
Связанный контент
Дополнительные сведения о ролях в Azure см. в разделе Общие сведения об определениях ролей Azure.