我正在为我的持续部署设置过渡环境。我正在将Azure devops服务用于存储库和管道。
我需要将Azure Active Directory登录名添加到我的Linux VM。到目前为止,我一直遵循this指南。它可以在我的机器上运行,尽管当我尝试在Azure devops上运行它时,出现以下错误。
RuleCondition
似乎我的Azure devops服务连接缺少roleAssignment / write权限。我不知道如何添加
答案 0 :(得分:0)
最简单的方法-将所有者角色分配给服务主体,您可以在服务连接页面上找到它,它具有指向“管理服务主体”或类似名称的链接。
或者,您可以创建只能执行此操作的自定义角色,并将其分配给服务主体,这会更安全一些,但不能那么多,因为使用该角色,您可以将任何权限授予任何人。
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
答案 1 :(得分:0)
将以下角色授予 devops 服务原则
名称:特权角色管理员 描述:具有此角色的用户可以在 Azure Active Directory 以及 Azure AD 特权身份管理中管理角色分配。此外,此角色允许管理特权身份管理的所有方面。