Я устанавливаю промежуточную среду для непрерывного развертывания. Я использую службу Azure devops для репозиториев и конвейеров.
Мне нужно добавить логин Azure Active Directory к моим виртуальным машинам Linux. До сих пор я следовал руководству это. Он работает на моей машине, хотя, когда я пытаюсь запустить его в Azure devops, я получаю следующую ошибку.
2019-04-08T14:54:33.7657868Z ERROR: The client '********-****-****-****-************' with object id '********-****-****-****-************' does not have authorization to perform action 'Microsoft.Authorization/roleAssignments/write' over scope '/subscriptions/***/resourceGroups/staging-rg/providers/Microsoft.Compute/virtualMachineScaleSets/webscaleset/providers/Microsoft.Authorization/roleAssignments/********-****-****-****-************'.
Кажется, что в моем подключении к службе azure devops отсутствует разрешение на роль/запись. не могу понять как добавить
самый простой способ - назначить роль владельца субъекту-службе, вы можете найти его на странице подключения службы, на ней есть ссылка «управление субъектом-службой» или что-то в этом роде.
В качестве альтернативы вы можете создать пользовательскую роль, которая может делать только это, и назначить субъекту-службе немного более безопасный, но не настолько, поскольку с этой ролью вы можете предоставлять любые разрешения кому угодно.
Powershell для создания пользовательской роли:
$role = Get-AzRoleDefinition "Virtual Machine Contributor"
$role.Id = $null
$role.Name = "Assign permissions role"
$role.Description = "Allow to assign permissions"
$role.Actions.Clear()
$role.Actions.Add("Microsoft.Authorization/roleAssignments/write")
$role.AssignableScopes.Clear()
Get-AzSubscription | ForEach-Object {
$scope = "/subscriptions/{0}" -f $_.Id
$role.AssignableScopes.Add($scope)
}
$def = New-AzRoleDefinition -Role $role
вы можете получить имя субъекта-службы с этой страницы, чтобы предоставить разрешения, используйте эту статью: docs.microsoft.com/en-us/azure/role-based-access-control/…
Предоставить роль ниже принципу обслуживания devops
Имя: Администратор привилегированной роли Описание: пользователи с этой ролью могут управлять назначениями ролей в Azure Active Directory, а также в Azure AD Privileged Identity Management. Кроме того, эта роль позволяет управлять всеми аспектами управления привилегированными пользователями.
Я нашел страницу, о которой вы говорите, но нет настройки для изменения роли субъекта-службы на владельца.