Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Примечание.
Каталог данных #REF! (классическая) и Аналитика работоспособности данных (классическая) больше не берут на себя новых клиентов, и эти службы, ранее #REF! Purview, теперь находятся в режиме поддержки клиентов.
В августе 2021 г. управление доступом в #REF! переместилось из #REF! identity & Access Management (IAM) (уровень управления) в коллекции #REF! (плоскость данных). Это изменение предоставляет кураторам и администраторам корпоративных данных более точный и детализированный контроль доступа к источникам данных, сканируемым с помощью #REF!. Это изменение также позволяет организациям проводить аудит правильного доступа и правильного использования своих данных.
В этом руководстве описано пошаговое использование API-интерфейсов политики метаданных #REF!, которые помогут вам добавлять пользователей, группы или субъекты-службы в коллекцию, а также управлять их ролями или удалять их в этой коллекции. REST API — это альтернативный метод использования портал #REF! или портала управления #REF! для обеспечения того же детального управления доступом на основе ролей.
Дополнительные сведения о встроенных ролях в #REF! см. в руководстве по разрешениям #REF!. В этом руководстве роли сопоставляются с уровнем разрешений на доступ, предоставляемых пользователям.
Справочник по API политики метаданных
В следующей таблице приведен обзор справочника по API политики метаданных #REF!.
Примечание.
Замените {pv-acc-name} именем учетной записи #REF! перед запуском этих API. Например, если имя учетной записи #REF! — FabrikamPurviewAccount, конечные точки API станут FabrikamPurviewAccount.purview.azure.com. Параметр api-version может быть изменен. Последняя версия api и подпись API см. в документации по rest API политики метаданных #REF! .
| Функция API | Метод REST | Конечная точка API | Описание |
|---|---|---|---|
| Чтение всех ролей метаданных | GET | https://{pv-acc-name}.purview.azure.com /policystore/metadataroles?&api-version=2021-07-01 | Считывает все роли метаданных из учетной записи #REF!. |
| Чтение политики метаданных по имени коллекции | GET | https://{pv-acc-name}.purview.azure.com /policystore/collections/{collectionName}/metadataPolicy?&api-version=2021-07-01 | Считывает политику метаданных, используя указанное имя коллекции (случайное имя из шести символов, созданное #REF! при создании политики). |
| Чтение политики метаданных по идентификатору политики | GET | https://{pv-acc-name}.purview.azure.com /policystore/metadataPolicies/{policyId}?&api-version=2021-07-01 | Считывает политику метаданных с помощью указанного идентификатора политики. Идентификатор политики имеет формат GUID. |
| Чтение всех политик метаданных | GET | https://{pv-acc-name}.purview.azure.com /policystore/metadataPolicies?&api-version=2021-07-01 | Считывает все политики метаданных из учетной записи #REF!. Вы можете выбрать определенную политику для работы из списка выходных данных JSON, созданного этим API. |
| Политика метаданных update/PUT | PUT | https://{pv-acc-name}.purview.azure.com /policystore/metadataPolicies/{policyId}?&api-version=2021-07-01 | Обновления политику метаданных с помощью указанного идентификатора политики. Идентификатор политики имеет формат GUID. |
Справочник по API коллекций каталогов #REF!
В следующей таблице приведен обзор API коллекций #REF!. Для получения полной документации по каждому API выберите операцию API в левом столбце.
| Операция | Описание |
|---|---|
| Создание или обновление коллекции | Создает или обновляет сущность коллекции. |
| Удаление коллекции | Удаляет сущность коллекции. |
| Получение коллекции | Возвращает коллекцию. |
| Получение пути к коллекции | Возвращает родительское имя и цепочки отображаемых имен, представляющие путь к коллекции. |
| Вывод списка имен дочерних коллекций | Перечисляет имена дочерних коллекций в коллекции. |
| Перечисление коллекций | Выводит список коллекций в учетной записи. |
Если вы используете API, субъекту-службе, пользователю или группе, которая выполняет API, должна быть назначена роль Администратор коллекции в #REF! для успешного выполнения этого API.
Для всех API #REF!, которым требуется {collectionName}, необходимо использовать "name" (а не "friendlyName"). Замените {collectionName} фактическим шестизначным буквенно-цифровым именем коллекции.
Примечание.
Это имя отличается от понятного отображаемого имени, указанного при создании коллекции. Если у вас нет {collectionName} под рукой, используйте API списков коллекций , чтобы выбрать имя коллекции из шести символов из выходных данных JSON.
Ниже приведен пример JSON-файла:
{
"name": "74dhe7",
"friendlyName": "Friendly Name",
"parentCollection": {
"type": "CollectionReference",
"referenceName": "{your_purview_account_name}"
},
"systemData": {
"createdBy": "{guid}",
"createdByType": "Application",
"createdAt": "2021-08-26T21:21:51.2646627Z",
"lastModifiedBy": "7f8d47e2-330c-42f0-8744-fcfb1ecb3ea0",
"lastModifiedByType": "Application",
"lastModifiedAt": "2021-08-26T21:21:51.2646628Z"
},
"collectionProvisioningState": "Succeeded"
}
Описание json политики
Ниже приведены некоторые важные идентификаторы в выходных данных JSON, полученных из API коллекции:
Имя: имя политики.
Идентификатор: уникальный идентификатор политики.
Версия: номер последней версии политики.
Важно!
Номер версии увеличивается при каждом вызове API Update-Metadata-Policy. Не забудьте получить последнюю копию политики, вызвав API Get-Policy-by-Policy-ID. Выполняйте это обновление каждый раз перед вызовом API политики обновления (PUT), чтобы всегда иметь последнюю версию JSON-файла.
DecisionRules: перечисление правил и последствий этой политики. Для политик метаданных результат всегда имеет значение "Разрешить".
Добавление или удаление пользователей из коллекции или роли
Используйте ИНТЕРФЕЙСы REST API #REF!, чтобы добавить или удалить пользователя, группу или субъект-службу из коллекции или роли. Подробное использование API предоставляется вместе с примерами выходных данных JSON. Настоятельно рекомендуется последовательно следовать инструкциям в следующих разделах, чтобы лучше понять API политики метаданных #REF!.
Получение всех ролей метаданных
Чтобы получить список всех доступных ролей разрешений на доступ к метаданным, выполните одну из следующих команд в зависимости от используемого портала:
Классический портал управления #REF!:
GET https://{your_purview_account_name}.purview.azure.com/policystore/metadataroles?api-version=2021-07-01
Новый портал #REF!:
GET https://api.purview-service.microsoft.com/policystore/metadataroles?api-version=2021-07-01
Выходные данные JSON описывают роли и связанные с ними разрешения в этом формате.
Роли метаданных по умолчанию перечислены в следующей таблице:
| Идентификатор роли | Разрешения | Описание роли |
|---|---|---|
| purviewmetadatarole_builtin_data-source-administrator | Microsoft.Purview/accounts/scan/read Microsoft.Purview/accounts/scan/write Microsoft.Purview/accounts/collection/read | Предоставляет другим пользователям доступ для чтения, записи сбора, регистрации источников данных и активации проверок. |
| администратор purviewmetadatarole_builtin_collection | Microsoft.Purview/accounts/collection/read Microsoft.Purview/accounts/collection/write | Полный доступ на уровне администратора ко всей коллекции, включая добавление или удаление пользователей и имен субъектов-служб (SPN) из коллекции, права управления, а также предоставление или отзыв доступа. В некоторых случаях администратор коллекции может отличаться от создателя коллекции. |
| purviewmetadatarole_builtin_purview-читатель | Microsoft.Purview/accounts/data/read Microsoft.Purview/accounts/collection/read | Предоставляет доступ только на чтение к обработке данных и всем метаданным, включая классификации, метки конфиденциальности, аналитические сведения и ресурсы чтения в коллекции, за исключением привязок сканирования. |
| purviewmetadatarole_builtin_data-куратор | Microsoft.Purview/accounts/data/read Microsoft.Purview/accounts/data/write Microsoft.Purview/accounts/collection/read | Предоставляет полный доступ к обработке данных и всем метаданным, включая классификации, метки конфиденциальности, аналитические сведения и ресурсы чтения в коллекции, за исключением привязок сканирования. |
| purviewmetadatarole_builtin_data-share-участник | Microsoft.Purview/accounts/share/read Microsoft.Purview/accounts/share/write | Предоставляет доступ к общим ресурсам данных в качестве участник. |
{
"values": [
{
"id": "purviewmetadatarole_builtin_data-curator",
"name": "data-curator",
"type": "Microsoft.Purview/role",
"properties": {
"provisioningState": "Provisioned",
"roleType": "BuiltIn",
"friendlyName": "Data Curator",
"cnfCondition": [
[
{
"attributeName": "request.azure.dataAction",
"attributeValueIncludedIn": [
"Microsoft.Purview/accounts/data/read",
"Microsoft.Purview/accounts/data/write",
"Microsoft.Purview/accounts/collection/read"
]
}
]
],
"version": 1
}
},
{
"id": "purviewmetadatarole_builtin_data-source-administrator",
"name": "data-source-administrator",
"type": "Microsoft.Purview/role",
"properties": {
"provisioningState": "Provisioned",
"roleType": "BuiltIn",
"friendlyName": "Data Source Administrator",
"cnfCondition": [
[
{
"attributeName": "request.azure.dataAction",
"attributeValueIncludedIn": [
"Microsoft.Purview/accounts/scan/read",
"Microsoft.Purview/accounts/scan/write",
"Microsoft.Purview/accounts/collection/read"
]
}
]
],
"version": 1
}
},
{
"id": "purviewmetadatarole_builtin_collection-administrator",
"name": "collection-administrator",
"type": "Microsoft.Purview/role",
"properties": {
"provisioningState": "Provisioned",
"roleType": "BuiltIn",
"friendlyName": "Collection Administrator",
"cnfCondition": [
[
{
"attributeName": "request.azure.dataAction",
"attributeValueIncludedIn": [
"Microsoft.Purview/accounts/collection/read",
"Microsoft.Purview/accounts/collection/write"
]
}
]
],
"version": 1
}
},
{
"id": "purviewmetadatarole_builtin_purview-reader",
"name": "purview-reader",
"type": "Microsoft.Purview/role",
"properties": {
"provisioningState": "Provisioned",
"roleType": "BuiltIn",
"friendlyName": "Microsoft Purview Reader",
"cnfCondition": [
[
{
"attributeName": "request.azure.dataAction",
"attributeValueIncludedIn": [
"Microsoft.Purview/accounts/data/read",
"Microsoft.Purview/accounts/collection/read"
]
}
]
],
"version": 1
}
},
{
"id": "purviewmetadatarole_builtin_data-share-contributor",
"name": "data-share-contributor",
"type": "Microsoft.Purview/role",
"properties": {
"provisioningState": "Provisioned",
"roleType": "BuiltIn",
"friendlyName": "Data share contributor",
"cnfCondition": [
[
{
"attributeName": "request.azure.dataAction",
"attributeValueIncludedIn": [
"Microsoft.Purview/accounts/share/read",
"Microsoft.Purview/accounts/share/write"
]
}
]
],
"version": 1
}
}
]
}
Получение всех политик метаданных
Классический портал управления #REF!:
GET https://{your_purview_account_name}.purview.azure.com/policystore/metadataPolicies?api-version=2021-07-01
Новый портал #REF!:
GET https://api.purview-service.microsoft.com/policystore/metadataPolicies?api-version=2021-07-01
Предыдущая команда перечисляет все доступные политики метаданных во всей иерархии коллекций в формате дерева, от корневой коллекции в верхней части до всех ее дочерних политик. Каждая дочерняя коллекция содержит каждый из дочерних элементов следующего уровня.
Пример:
{
"values": [
{
"name": "policy_FabrikamPurview",
"id": "9b2f1cb9-584c-4a16-811e-9232884b5cac",
"version": 30,
"properties": {
"description": "",
"decisionRules": [
{
"kind": "decisionrule",
"effect": "Permit",
"dnfCondition": [
[
{
"attributeName": "resource.purview.collection",
"attributeValueIncludes": "fabrikampurview"
},
{
"fromRule": "permission:fabrikampurview",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "permission:fabrikampurview"
}
]
]
}
],
"attributeRules": [
{
"kind": "attributerule",
"id": "purviewmetadatarole_builtin_collection-administrator:fabrikampurview",
"name": "purviewmetadatarole_builtin_collection-administrator:fabrikampurview",
"dnfCondition": [
[
{
"attributeName": "principal.microsoft.id",
"attributeValueIncludedIn": [
"2f656762-e440-4b62-9eb6-a991d17d64b0",
"04314867-60a4-4e5a-ae16-8e5856f415d9",
"8988fe5c-5736-4179-9435-0a64c273b90b",
"6d563253-1d5b-48f2-baaa-5489f22ddce9",
"26f98046-5b02-4fa9-b709-e0519c658891",
"73fc02dc-becd-468b-a2a3-82238e722dae"
]
},
{
"fromRule": "purviewmetadatarole_builtin_collection-administrator",
"attributeName": "derived.purview.role",
"attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator"
}
],
[
{
"fromRule": "purviewmetadatarole_builtin_collection-administrator",
"attributeName": "derived.purview.role",
"attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator"
},
{
"attributeName": "principal.microsoft.groups",
"attributeValueIncludedIn": [
"ffd851fa-86ec-431b-95ea-8b84d5012383",
"cf84b126-4384-4952-91f1-7f705b25e569",
"5046aba1-5b81-411c-8fec-b84600f3f08b",
"b055a5c6-a04e-4d1a-8524-001ad81bfb28",
"cc194892-92fa-4ce3-96ae-1f98bef8211c"
]
}
]
]
},
{
"kind": "attributerule",
"id": "purviewmetadatarole_builtin_data-curator:fabrikampurview",
"name": "purviewmetadatarole_builtin_data-curator:fabrikampurview",
"dnfCondition": [
[
{
"attributeName": "principal.microsoft.id",
"attributeValueIncludedIn": [
"2f656762-e440-4b62-9eb6-a991d17d64b0",
"649f56ab-2dd2-40de-a731-3d3f28e7af92",
"c29a5809-f9ec-49fd-b762-2d4d64abb93e",
"04314867-60a4-4e5a-ae16-8e5856f415d9",
"73fc02dc-becd-468b-a2a3-82238e722dae",
"517a27d2-39ba-4c91-a032-dd9ecf8ad6f1",
"6d563253-1d5b-48f2-baaa-5489f22ddce9"
]
},
{
"fromRule": "purviewmetadatarole_builtin_data-curator",
"attributeName": "derived.purview.role",
"attributeValueIncludes": "purviewmetadatarole_builtin_data-curator"
}
],
[
{
"fromRule": "purviewmetadatarole_builtin_data-curator",
"attributeName": "derived.purview.role",
"attributeValueIncludes": "purviewmetadatarole_builtin_data-curator"
},
{
"attributeName": "principal.microsoft.groups",
"attributeValueIncludedIn": [
"b055a5c6-a04e-4d1a-8524-001ad81bfb28",
"cc194892-92fa-4ce3-96ae-1f98bef8211c",
"5046aba1-5b81-411c-8fec-b84600f3f08b"
]
}
]
]
},
{
"kind": "attributerule",
"id": "purviewmetadatarole_builtin_data-source-administrator:fabrikampurview",
"name": "purviewmetadatarole_builtin_data-source-administrator:fabrikampurview",
"dnfCondition": [
[
{
"attributeName": "principal.microsoft.id",
"attributeValueIncludedIn": [
"2f656762-e440-4b62-9eb6-a991d17d64b0",
"04314867-60a4-4e5a-ae16-8e5856f415d9",
"517a27d2-39ba-4c91-a032-dd9ecf8ad6f1",
"6d563253-1d5b-48f2-baaa-5489f22ddce9"
]
},
{
"fromRule": "purviewmetadatarole_builtin_data-source-administrator",
"attributeName": "derived.purview.role",
"attributeValueIncludes": "purviewmetadatarole_builtin_data-source-administrator"
}
],
[
{
"fromRule": "purviewmetadatarole_builtin_data-source-administrator",
"attributeName": "derived.purview.role",
"attributeValueIncludes": "purviewmetadatarole_builtin_data-source-administrator"
},
{
"attributeName": "principal.microsoft.groups",
"attributeValueIncludedIn": [
"b055a5c6-a04e-4d1a-8524-001ad81bfb28",
"cc194892-92fa-4ce3-96ae-1f98bef8211c",
"d34eb741-be5e-4098-90d7-eca8d4a5153f",
"664ec992-9af0-4773-88f2-dc39edc46f6f",
"5046aba1-5b81-411c-8fec-b84600f3f08b"
]
}
]
]
},
{
"kind": "attributerule",
"id": "permission:fabrikampurview",
"name": "permission:fabrikampurview",
"dnfCondition": [
[
{
"fromRule": "purviewmetadatarole_builtin_collection-administrator:fabrikampurview",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator:fabrikampurview"
}
],
[
{
"fromRule": "purviewmetadatarole_builtin_purview-reader:fabrikampurview",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "purviewmetadatarole_builtin_purview-reader:fabrikampurview"
}
],
[
{
"fromRule": "purviewmetadatarole_builtin_data-curator:fabrikampurview",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "purviewmetadatarole_builtin_data-curator:fabrikampurview"
}
],
[
{
"fromRule": "purviewmetadatarole_builtin_data-source-administrator:fabrikampurview",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "purviewmetadatarole_builtin_data-source-administrator:fabrikampurview"
}
]
]
}
],
"collection": {
"type": "CollectionReference",
"referenceName": "fabrikampurview"
}
}
},
{
"name": "policy_b2zpf1",
"id": "12b0bb28-2acc-413e-8fe1-179ff9cc54c3",
"version": 0,
"properties": {
"description": "",
"decisionRules": [
{
"kind": "decisionrule",
"effect": "Permit",
"dnfCondition": [
[
{
"attributeName": "resource.purview.collection",
"attributeValueIncludes": "b2zpf1"
},
{
"fromRule": "permission:b2zpf1",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "permission:b2zpf1"
}
]
]
}
],
"attributeRules": [
{
"kind": "attributerule",
"id": "purviewmetadatarole_builtin_collection-administrator:b2zpf1",
"name": "purviewmetadatarole_builtin_collection-administrator:b2zpf1",
"dnfCondition": [
[
{
"attributeName": "principal.microsoft.id",
"attributeValueIncludedIn": [
"2f656762-e440-4b62-9eb6-a991d17d64b0"
]
},
{
"fromRule": "purviewmetadatarole_builtin_collection-administrator",
"attributeName": "derived.purview.role",
"attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator"
}
],
[
{
"fromRule": "purviewmetadatarole_builtin_collection-administrator:ukx7pq",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator:ukx7pq"
}
]
]
},
{
"kind": "attributerule",
"id": "permission:b2zpf1",
"name": "permission:b2zpf1",
"dnfCondition": [
[
{
"fromRule": "purviewmetadatarole_builtin_collection-administrator:b2zpf1",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator:b2zpf1"
}
],
[
{
"fromRule": "permission:ukx7pq",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "permission:ukx7pq"
}
]
]
}
],
"collection": {
"type": "CollectionReference",
"referenceName": "b2zpf1"
},
"parentCollectionName": "ukx7pq"
}
},
{
"name": "policy_7wte2n",
"id": "a72084e4-ccab-4aec-a364-08ab001e4999",
"version": 0,
"properties": {
"description": "",
"decisionRules": [
{
"kind": "decisionrule",
"effect": "Permit",
"dnfCondition": [
[
{
"attributeName": "resource.purview.collection",
"attributeValueIncludes": "7wte2n"
},
{
"fromRule": "permission:7wte2n",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "permission:7wte2n"
}
]
]
}
],
"attributeRules": [
{
"kind": "attributerule",
"id": "purviewmetadatarole_builtin_collection-administrator:7wte2n",
"name": "purviewmetadatarole_builtin_collection-administrator:7wte2n",
"dnfCondition": [
[
{
"attributeName": "principal.microsoft.id",
"attributeValueIncludedIn": [
"2f656762-e440-4b62-9eb6-a991d17d64b0"
]
},
{
"fromRule": "purviewmetadatarole_builtin_collection-administrator",
"attributeName": "derived.purview.role",
"attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator"
}
],
[
{
"fromRule": "purviewmetadatarole_builtin_collection-administrator:ukx7pq",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator:ukx7pq"
}
]
]
},
{
"kind": "attributerule",
"id": "permission:7wte2n",
"name": "permission:7wte2n",
"dnfCondition": [
[
{
"fromRule": "purviewmetadatarole_builtin_collection-administrator:7wte2n",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator:7wte2n"
}
],
[
{
"fromRule": "permission:ukx7pq",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "permission:ukx7pq"
}
]
]
}
],
"collection": {
"type": "CollectionReference",
"referenceName": "7wte2n"
},
"parentCollectionName": "ukx7pq"
}
}
]
}
Получение выбранной политики метаданных
Вы можете использовать любой из двух API для получения структуры JSON политики метаданных определенной коллекции, указав {collectionName} или {PolicyID}.
Как описано в следующих двух разделах, оба API служат одной и той же цели, и выходные данные JSON для обоих являются совершенно одинаковыми.
Получение политики метаданных коллекции с помощью имени коллекции
Классический портал управления #REF!:
GET https://{your_purview_account_name}.purview.azure.com/policystore/collections/{collectionName}/metadataPolicy?api-version=2021-07-01
Новый портал #REF!:
GET https://api.purview-service.microsoft.com/policystore/collections/{collectionName}/metadataPolicy?api-version=2021-07-01
Имя учетной записи #REF! — {your_purview_account_name}. Замените его именем учетной записи #REF!.
В выходных данных JSON предыдущего API "Получить все политики метаданных" найдите следующий раздел:
{ "type": "CollectionReference", "referenceName": "7xkdg2"}
Замените "{collectionName}" в URL-адресе API значением referenceName: "{6-char-collection-name}". Например, если имя коллекции из шести символов — "7xkdg2", URL-адрес API будет отформатирован следующим образом:
https://{your_purview_account_name}.purview.azure.com/policystore/collections/7xkdg2/metadataPolicy?api-version=2021-07-01Выполните следующий API:
{ "name": "policy_qu45fs", "id": "aaaabbbb-0000-cccc-1111-dddd2222eeee", "version": 0, "properties": { "description": "", "decisionRules": [ { "kind": "decisionrule", "effect": "Permit", "dnfCondition": [ [ { "attributeName": "resource.purview.collection", "attributeValueIncludes": "qu45fs" }, { "fromRule": "permission:qu45fs", "attributeName": "derived.purview.permission", "attributeValueIncludes": "permission:qu45fs" } ] ] } ], "attributeRules": [ { "kind": "attributerule", "id": "purviewmetadatarole_builtin_collection-administrator:qu45fs", "name": "purviewmetadatarole_builtin_collection-administrator:qu45fs", "dnfCondition": [ [ { "attributeName": "principal.microsoft.id", "attributeValueIncludedIn": [ "2f656762-e440-4b62-9eb6-a991d17d64b0" ] }, { "fromRule": "purviewmetadatarole_builtin_collection-administrator", "attributeName": "derived.purview.role", "attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator" } ], [ { "fromRule": "purviewmetadatarole_builtin_collection-administrator:fabrikampurview", "attributeName": "derived.purview.permission", "attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator:fabrikampurview" } ] ] }, { "kind": "attributerule", "id": "permission:qu45fs", "name": "permission:qu45fs", "dnfCondition": [ [ { "fromRule": "purviewmetadatarole_builtin_collection-administrator:qu45fs", "attributeName": "derived.purview.permission", "attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator:qu45fs" } ], [ { "fromRule": "permission:fabrikampurview", "attributeName": "derived.purview.permission", "attributeValueIncludes": "permission:fabrikampurview" } ] ] } ], "collection": { "type": "CollectionReference", "referenceName": "qu45fs" }, "parentCollectionName": "fabrikampurview" } }
Получение политики метаданных коллекции с помощью идентификатора политики
Классический портал управления #REF!:
GET https://{your_purview_account_name}.purview.azure.com/policystore/metadataPolicies/{policyId}?api-version=2021-07-01
Новый портал #REF!:
GET https://api.purview-service.microsoft.com/policystore/metadataPolicies/{policyId}?api-version=2021-07-01
Имя учетной записи #REF! — {your_purview_account_name}. Замените его именем учетной записи #REF!.
В выходных данных JSON предыдущего API "Получить все политики метаданных" найдите следующий раздел:
{.... "name": "policy_qu45fs", "id": "{policy-guid}", "version": N ....}
Замените "{policyId}" в URL-адресе API значением "id". Например, если "{policy-guid}" имеет значение "aaaabbbb-0000-cccc-1111-dddd22222ee", URL-адрес API будет форматироваться следующим образом:
https://{your_purview_account_name}.purview.azure.com/policystore/metadataPolicies/aaaabbbb-0000-cccc-1111-dddd2222eeee?api-version=2021-07-01
Теперь выполните следующий API:
Примечание.
Выходные данные этого вызова API и предыдущего вызова API совпадают. Как упоминалось ранее, можно выбрать любой из них.
{
"name": "policy_qu45fs",
"id": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
"version": 0,
"properties": {
"description": "",
"decisionRules": [
{
"kind": "decisionrule",
"effect": "Permit",
"dnfCondition": [
[
{
"attributeName": "resource.purview.collection",
"attributeValueIncludes": "qu45fs"
},
{
"fromRule": "permission:qu45fs",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "permission:qu45fs"
}
]
]
}
],
"attributeRules": [
{
"kind": "attributerule",
"id": "purviewmetadatarole_builtin_collection-administrator:qu45fs",
"name": "purviewmetadatarole_builtin_collection-administrator:qu45fs",
"dnfCondition": [
[
{
"attributeName": "principal.microsoft.id",
"attributeValueIncludedIn": [
"2f656762-e440-4b62-9eb6-a991d17d64b0"
]
},
{
"fromRule": "purviewmetadatarole_builtin_collection-administrator",
"attributeName": "derived.purview.role",
"attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator"
}
],
[
{
"fromRule": "purviewmetadatarole_builtin_collection-administrator:fabrikampurview",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator:fabrikampurview"
}
]
]
},
{
"kind": "attributerule",
"id": "permission:qu45fs",
"name": "permission:qu45fs",
"dnfCondition": [
[
{
"fromRule": "purviewmetadatarole_builtin_collection-administrator:qu45fs",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator:qu45fs"
}
],
[
{
"fromRule": "permission:fabrikampurview",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "permission:fabrikampurview"
}
]
]
}
],
"collection": {
"type": "CollectionReference",
"referenceName": "qu45fs"
},
"parentCollectionName": "fabrikampurview"
}
}
Обновление политики сбора
PUT https://{your_purview_account_name}.purview.azure.com/policystore/metadataPolicies/{policyId}?api-version=2021-07-01
В этом разделе вы обновите json политики, полученный на предыдущем шаге, добавив или удалив пользователя, группу или субъект-службу из коллекции. Затем вы отправляете его в службу #REF! с помощью метода REST PUT.
Независимо от того, добавляете или удаляете пользователя, группу или субъект-службу, вы будете следовать тому же процессу API.
Укажите идентификатор объекта пользователя, группы или субъекта-службы {guid} в массиве attributeValueIncludedIn json.
Выполните поиск в выходных данных JSON API Get-Policy-by-ID для массива attributeValueIncludedIn на предыдущем шаге и добавьте или удалите идентификатор объекта пользователя, группы или субъекта-службы в массиве. Если вы не знаете, как получить идентификатор объекта пользователя, группы или субъекта-службы, см. раздел Get-MgUser.
Существует несколько разделов в сопоставлении JSON для каждой из четырех ролей. Для роли "Разрешения администратора коллекции" используйте раздел с идентификатором "purviewmetadatarole_builtin_collection-administrator". Аналогичным образом используйте соответствующий раздел для других ролей.
Чтобы лучше понять операцию добавления и удаления, внимательно изучите разницу между выходными данными JSON из предыдущего API и следующими выходными данными. В приведенных ниже выходных данных JSON мы добавили идентификатор пользователя bbcccc-1111-dddd-2222-eeee3333ffff в качестве администратора коллекции.
{
"name": "policy_qu45fs",
"id": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
"version": 0,
"properties": {
"description": "",
"decisionRules": [
{
"kind": "decisionrule",
"effect": "Permit",
"dnfCondition": [
[
{
"attributeName": "resource.purview.collection",
"attributeValueIncludes": "qu45fs"
},
{
"fromRule": "permission:qu45fs",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "permission:qu45fs"
}
]
]
}
],
"attributeRules": [
{
"kind": "attributerule",
"id": "purviewmetadatarole_builtin_collection-administrator:qu45fs",
"name": "purviewmetadatarole_builtin_collection-administrator:qu45fs",
"dnfCondition": [
[
{
"attributeName": "principal.microsoft.id",
"attributeValueIncludedIn": [
"2f656762-e440-4b62-9eb6-a991d17d64b0",
"bbbbcccc-1111-dddd-2222-eeee3333ffff"
]
},
{
"fromRule": "purviewmetadatarole_builtin_collection-administrator",
"attributeName": "derived.purview.role",
"attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator"
}
],
[
{
"fromRule": "purviewmetadatarole_builtin_collection-administrator:fabrikampurview",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator:fabrikampurview"
}
]
]
},
{
"kind": "attributerule",
"id": "permission:qu45fs",
"name": "permission:qu45fs",
"dnfCondition": [
[
{
"fromRule": "purviewmetadatarole_builtin_collection-administrator:qu45fs",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator:qu45fs"
}
],
[
{
"fromRule": "permission:fabrikampurview",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "permission:fabrikampurview"
}
]
]
}
],
"collection": {
"type": "CollectionReference",
"referenceName": "qu45fs"
},
"parentCollectionName": "fabrikampurview"
}
}
Добавление роли администратора корневой коллекции
По умолчанию пользователь, создавший учетную запись #REF!, является администратором корневой коллекции (то есть администратором верхнего уровня иерархии коллекции). Однако в некоторых случаях организации может потребоваться изменить администратора корневой коллекции с помощью API.
POST https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Purview/accounts/{accountName}/addRootCollectionAdmin?api-version=2021-07-01
Чтобы выполнить предыдущую команду, необходимо только передать идентификатор объекта нового администратора корневой коллекции. Как мы уже упоминали ранее, идентификатором объекта может быть любой пользователь, группа или субъект-служба.
{"objectId": "{guid}"}
Примечание.
Пользователи, которые вызывают этот API, должны иметь разрешения владельца или учетной записи пользователя и проверки подлинности (UAA) в учетной записи #REF! для выполнения действия записи в учетной записи.
Дополнительные ресурсы
Вы можете выполнить REST API #REF! с помощью служебной программы PowerShell. Его можно легко установить из коллекция PowerShell. С помощью этой программы можно выполнять все те же команды, но из #REF! PowerShell.