Управление подписками Azure в большом масштабе с помощью групп управления
Если в организации много подписок, для эффективного управления доступом к ним, их политиками и соответствием требуется особый подход. Группы управления Azure представляют область действия уровнем выше, чем подписки. Вы объединяете подписки в контейнеры, которые называются группами управления, и применяете к ним условия системы управления. Все подписки в группе управления автоматически наследуют условия, применяемые к группе управления.
Группы управления предоставляют управление корпоративным классом в большом масштабе независимо от типа подписки. Дополнительные сведения о группах управления см. в статье Упорядочение ресурсов с помощью групп управления Azure.
Примечание.
В этой статье приведены пошаговые инструкции по удалению персональных данных с устройства или из службы. Эти сведения можно использовать для соблюдения обязательств согласно Общему регламенту по защите данных (GDPR). Общие сведения о GDPR см. в разделе GDPR Центра управления безопасностью Майкрософт и в разделе GDPR на портале Service Trust Portal.
Внимание
Маркеры пользователей и кэш группы управления Azure Resource Manager длились 30 минут, прежде чем они вынуждены обновляться. Любое действие, например перемещение группы управления или подписки, может занять до 30 минут. Чтобы увидеть обновления раньше, необходимо обновить маркер, обновив браузер, войдите и выйдите или запросите новый маркер.
Для действий Azure PowerShell в этой статье следует учитывать, что AzManagementGroup
-GroupId
связанные с командлетами упоминаются псевдонимом -GroupName
параметра.
Для предоставления идентификатора группы управления в качестве строкового значения можно использовать любой из них.
Изменение имени группы управления
Имя группы управления можно изменить с помощью портал Azure, Azure PowerShell или Azure CLI.
Изменение имени на портале
Войдите на портал Azure.
Выберите Все службы. В текстовом поле "Службы фильтрации" введите группы управления и выберите его из списка.
Выберите группу управления, которую нужно переименовать.
Щелкните Сведения.
Выберите параметр "Переименовать группу" в верхней части области.
В области переименования группы введите новое имя, которое вы хотите отобразить.
Выберите Сохранить.
Изменение имени в Azure PowerShell
Чтобы обновить отображаемое имя, используйте Update-AzManagementGroup
в Azure PowerShell. Например, чтобы изменить отображаемое имя группы управления с ит-отдела Contoso на Contoso Group, выполните следующую команду:
Update-AzManagementGroup -GroupId 'ContosoIt' -DisplayName 'Contoso Group'
Изменение имени в Azure CLI
Для Azure CLI используется команда update
.
az account management-group update --name 'Contoso' --display-name 'Contoso Group'
Удаление группы управления
Чтобы удалить группу управления, необходимо выполнить следующие требования:
В группе управления нет дочерних групп управления или подписок. Чтобы переместить подписку или группу управления в другую группу управления, см . статью "Перемещение групп управления и подписок " далее в этой статье.
Вам нужны разрешения на запись в группе управления (участник группы управления, участник или участник группы управления). Чтобы получить сведения об имеющихся разрешениях, выберите группу управления, а затем выберите IAM. Дополнительные сведения о ролях Azure см. в статье "Что такое управление доступом на основе ролей Azure(Azure RBAC)?".
Удаление группы управления на портале
Войдите на портал Azure.
Выберите Все службы. В текстовом поле "Службы фильтрации" введите группы управления и выберите его из списка.
Выберите группу управления, которую вы хотите удалить.
Щелкните Сведения.
Выберите команду Удалить.
Совет
Если кнопка "Удалить" недоступна, наведите указатель мыши на эту кнопку.
Откроется диалоговое окно и появится запрос на подтверждение удаления группы управления.
Выберите Да.
Удаление группы управления в Azure PowerShell
Чтобы удалить группу управления, используйте Remove-AzManagementGroup
команду в Azure PowerShell:
Remove-AzManagementGroup -GroupId 'Contoso'
Удаление группы управления в Azure CLI
С помощью Azure CLI используйте команду az account management-group delete
:
az account management-group delete --name 'Contoso'
Просмотр групп управления
Вы можете просмотреть любую группу управления, если в ней есть прямая или унаследованная роль Azure.
Просмотр групп управления на портале
Войдите на портал Azure.
Выберите Все службы. В текстовом поле "Службы фильтрации" введите группы управления и выберите его из списка.
Откроется страница иерархии групп управления. На этой странице можно просмотреть все группы управления и подписки, к которым у вас есть доступ. При выборе имени группы открывается нижний уровень в иерархии. Навигация работает так же, как и в обозревателе файлов.
Чтобы просмотреть сведения о группе управления, перейдите по ссылке (подробности) рядом с заголовком группы управления. Если ссылка недоступна, у вас нет разрешения на просмотр этой группы управления.
Просмотр групп управления в Azure PowerShell
Команда используется Get-AzManagementGroup
для извлечения всех групп. Полный GET
список команд PowerShell для групп управления см. в модулях Az.Resources .
Get-AzManagementGroup
Для сведений одной группы управления используйте -GroupId
параметр:
Get-AzManagementGroup -GroupId 'Contoso'
Чтобы вернуть определенную группу управления и все уровни иерархии в ней, используйте -Expand
следующие -Recurse
параметры:
PS C:\> $response = Get-AzManagementGroup -GroupId TestGroupParent -Expand -Recurse
PS C:\> $response
Id : /providers/Microsoft.Management/managementGroups/TestGroupParent
Type : /providers/Microsoft.Management/managementGroups
Name : TestGroupParent
TenantId : 00000000-0000-0000-0000-000000000000
DisplayName : TestGroupParent
UpdatedTime : 2/1/2018 11:15:46 AM
UpdatedBy : 00000000-0000-0000-0000-000000000000
ParentId : /providers/Microsoft.Management/managementGroups/00000000-0000-0000-0000-000000000000
ParentName : 00000000-0000-0000-0000-000000000000
ParentDisplayName : 00000000-0000-0000-0000-000000000000
Children : {TestGroup1DisplayName, TestGroup2DisplayName}
PS C:\> $response.Children[0]
Type : /managementGroup
Id : /providers/Microsoft.Management/managementGroups/TestGroup1
Name : TestGroup1
DisplayName : TestGroup1DisplayName
Children : {TestRecurseChild}
PS C:\> $response.Children[0].Children[0]
Type : /managementGroup
Id : /providers/Microsoft.Management/managementGroups/TestRecurseChild
Name : TestRecurseChild
DisplayName : TestRecurseChild
Children :
Просмотр групп управления в Azure CLI
Команда используется list
для получения всех групп:
az account management-group list
Для сведений о одной группе управления используйте show
команду:
az account management-group show --name 'Contoso'
Чтобы вернуть определенную группу управления и все уровни иерархии в ней, используйте -Expand
следующие -Recurse
параметры:
az account management-group show --name 'Contoso' -e -r
Перемещение групп управления и подписок
Одна из причин для создания группы управления — объединение подписок. Только группы управления и подписки могут стать дочерними элементами другой группы управления. При перемещении в группу управления подписка наследует все права доступа и политики пользователя из родительской группы управления.
Подписки можно перемещать между группами управления. Подписка может иметь только одну родительскую группу управления.
При перемещении группы управления или подписки в качестве дочернего элемента другой группы управления необходимо оценить три правила как истинные.
Если вы выполняете действие перемещения, вам потребуется разрешение на каждом из следующих уровней:
- Дочерняя подписка или группа управления
Microsoft.management/managementgroups/write
Microsoft.management/managementgroups/subscriptions/write
(только для подписок)Microsoft.Authorization/roleAssignments/write
Microsoft.Authorization/roleAssignments/delete
Microsoft.Management/register/action
- Целевая родительская группа управления
Microsoft.management/managementgroups/write
- Текущая родительская группа управления
Microsoft.management/managementgroups/write
Существует исключение: если целевой объект или существующая родительская группа управления является корневой группой управления, требования к разрешениям не применяются. Так как корневая группа управления является целевой точкой по умолчанию для всех новых групп управления и подписок, вам не нужны разрешения на перемещение элемента.
Если роль Владелец подписки наследуется из нынешней родительской группы управления, выбор целевых объектов для перемещения будет ограничен. Подписку можно переместить только в другую группу управления, где у вас есть роль владельца. Вы не можете переместить подписку в группу управления, где вы являетесь только участником, так как вы потеряете владение подпиской. Если вы непосредственно назначены роли владельца подписки, ее можно переместить в любую группу управления, где у вас есть роль участника.
Чтобы получить на портале Azure сведения о существующих разрешениях, выберите группу управления и щелкните IAM. Дополнительные сведения о ролях Azure см. в статье "Что такое управление доступом на основе ролей Azure(Azure RBAC)?".
Добавление существующей подписки в группу управления на портале
Войдите на портал Azure.
Выберите Все службы. В текстовом поле "Службы фильтрации" введите группы управления и выберите его из списка.
Выберите группу управления, которую вы хотите быть родительским.
В верхней части страницы выберите пункт Добавить подписку.
В разделе "Добавить подписку" выберите подписку в списке с правильным идентификатором.
Выберите Сохранить.
Удаление подписки из группы управления с помощью портала
Войдите на портал Azure.
Выберите Все службы. В текстовом поле "Службы фильтрации" введите группы управления и выберите его из списка.
Выберите группу управления, которая является текущим родительским элементом.
Выберите многоточие (
...
) в конце строки для подписки в списке, который требуется переместить.Выберите Переместить.
В области перемещения выберите значение для идентификатора новой родительской группы управления.
Выберите Сохранить.
Перемещение подписки в Azure PowerShell
Чтобы переместить подписку в PowerShell, используйте New-AzManagementGroupSubscription
команду:
New-AzManagementGroupSubscription -GroupId 'Contoso' -SubscriptionId '12345678-1234-1234-1234-123456789012'
Чтобы удалить связь между подпиской и группой управления, используйте Remove-AzManagementGroupSubscription
команду:
Remove-AzManagementGroupSubscription -GroupId 'Contoso' -SubscriptionId '12345678-1234-1234-1234-123456789012'
Перемещение подписки в Azure CLI
Чтобы переместить подписку в Azure CLI, используйте add
команду:
az account management-group subscription add --name 'Contoso' --subscription '12345678-1234-1234-1234-123456789012'
Чтобы удалить подписку из группы управления, используйте subscription remove
команду:
az account management-group subscription remove --name 'Contoso' --subscription '12345678-1234-1234-1234-123456789012'
Перемещение подписки в шаблоне ARM
Чтобы переместить подписку в шаблон Azure Resource Manager (шаблон ARM), используйте следующий шаблон и разверните ее на уровне клиента:
{
"$schema": "https://schema.management.azure.com/schemas/2019-08-01/managementGroupDeploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"targetMgId": {
"type": "string",
"metadata": {
"description": "Provide the ID of the management group that you want to move the subscription to."
}
},
"subscriptionId": {
"type": "string",
"metadata": {
"description": "Provide the ID of the existing subscription to move."
}
}
},
"resources": [
{
"scope": "/",
"type": "Microsoft.Management/managementGroups/subscriptions",
"apiVersion": "2020-05-01",
"name": "[concat(parameters('targetMgId'), '/', parameters('subscriptionId'))]",
"properties": {
}
}
],
"outputs": {}
}
Или используйте следующий Bicep-файл:
targetScope = 'managementGroup'
@description('Provide the ID of the management group that you want to move the subscription to.')
param targetMgId string
@description('Provide the ID of the existing subscription to move.')
param subscriptionId string
resource subToMG 'Microsoft.Management/managementGroups/subscriptions@2020-05-01' = {
scope: tenant()
name: '${targetMgId}/${subscriptionId}'
}
Перемещение группы управления на портале
Войдите на портал Azure.
Выберите Все службы. В текстовом поле "Службы фильтрации" введите группы управления и выберите его из списка.
Выберите группу управления, которую вы хотите быть родительским.
В верхней части страницы нажмите кнопку "Создать".
На панели "Создание группы управления" выберите, следует ли использовать новую или существующую группу управления:
- При выборе "Создать новое" создается новая группа управления.
- При выборе "Использовать существующие " отображается раскрывающийся список всех групп управления, которые можно переместить в эту группу управления.
Выберите Сохранить.
Перемещение группы управления в Azure PowerShell
Чтобы переместить группу управления в другую группу Update-AzManagementGroup
, используйте команду в Azure PowerShell:
$parentGroup = Get-AzManagementGroup -GroupId ContosoIT
Update-AzManagementGroup -GroupId 'Contoso' -ParentId $parentGroup.id
Перемещение группы управления в Azure CLI
Чтобы переместить группу управления в Azure CLI, используйте update
команду:
az account management-group update --name 'Contoso' --parent ContosoIT
Аудит групп управления с помощью журналов действий
Группы управления поддерживаются в журналах действий Azure Monitor. Сведения обо всех событиях, происходящих в группе управления, можно получить в том же централизованном расположении, что и для других ресурсов Azure. Например, вы можете просмотреть сведения обо всех изменениях в назначениях ролей или назначении политик, внесенные в пределах определенной группы управления.
Если вы хотите запросить группы управления за пределами портал Azure, целевая область для групп управления выглядит следующим образом"/providers/Microsoft.Management/managementGroups/{yourMgID}"
.
Ссылки на группы управления из других поставщиков ресурсов
Если вы ссылаетесь на группы управления из действий другого поставщика ресурсов, используйте следующий путь в качестве области. Этот путь применяется при использовании Azure PowerShell, Azure CLI и REST API.
/providers/Microsoft.Management/managementGroups/{yourMgID}
Пример использования этого пути — при назначении новой роли группе управления в Azure PowerShell:
New-AzRoleAssignment -Scope "/providers/Microsoft.Management/managementGroups/Contoso"
Для получения определения политики для группы управления используется тот же путь области:
GET https://management.azure.com/providers/Microsoft.Management/managementgroups/MyManagementGroup/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming?api-version=2019-09-01
Связанный контент
Дополнительные сведения о группах управления: