通过CLI将成员添加到Azure企业应用程序

mfuanj7w  于 2023-11-21  发布在  其他
关注(0)|答案(3)|浏览(162)

我们在Azure AD租户中有一个企业应用程序,用于将用户配置到另一个SaaS平台。目前,它只使用“仅同步分配的用户和组”选项进行设置,因为我们不希望整个目录被带入。
我的问题很简单,有没有一种方法可以使用az-task(目前安装了2.0.60版)将用户添加到该企业应用程序中?
我查了一下:

  • 阿兹广告公司
  • 广告应用
  • az角色分配(似乎只适用于下面的订阅和资源)

我希望运行一个简单的角色分配命令,通过upn/objectId将用户添加到企业应用程序中。
我团队中的每个人都在使用Mac,如果PowerShellCore有更好的支持,我们可以使用它。
谢谢你,谢谢

rbl8hiat

rbl8hiat1#

如果有帮助的话,我是用az rest做的。我们这里都用Mac,PowerShell核心似乎在几个地方坏了(不支持基于证书的登录,New-AzureADUserAppRoleAssignment插件对我们不起作用。我们用的是预览版。Graph API文档也很错误,所以花了点时间来获得正确的端点和有效负载。下面的例子:

  1. az rest \
  2. --method post \
  3. --uri https://graph.microsoft.com/beta/users/$user/appRoleAssignments \
  4. --body "{\"appRoleId\": \"$appRoleId\", \"principalId\": \"$user\", \"resourceId\": \"$spObjectId\"}" \
  5. --headers "Content-Type=application/json"

字符串
如果有人感兴趣的话,可以发布一个上面设置vars的bash脚本示例?

u1ehiz5o

u1ehiz5o2#

看来你不能通过Azure CLI做到这一点,我的解决方案是使用PowerShell来做到这一点。
我团队中的每个人都在使用Mac,如果PowerShellCore有更好的支持,我们可以使用它。
首先,你需要安装支持powershell核心的AzureAD.Standard.Preview powershell模块,你可以理解该模块相当于powershell核心中的AzureAD模块,它们有相同的用法,它是一个预览版,更多细节请看这个link
然后尝试如下命令New-AzureADUserAppRoleAssignment,此示例将用户分配给具有默认应用程序角色ID的应用程序。

  1. New-AzureADUserAppRoleAssignment -ObjectId "<user objectid>" -PrincipalId "<user objectid>" -ResourceId "<service principal objectid(i.e. Enterprise Application objectid)>" -Id ([Guid]::Empty)

字符串


的数据
检查门户网站:



如果要将用户分配给应用程序中的特定应用程序角色,请尝试以下命令。

  1. $username = "<You user's UPN>"
  2. $app_name = "<Your App's display name>"
  3. $app_role_name = "<App role display name>"
  4. # Get the user to assign, and the service principal for the app to assign to
  5. $user = Get-AzureADUser -ObjectId "$username"
  6. $sp = Get-AzureADServicePrincipal -Filter "displayName eq '$app_name'"
  7. $appRole = $sp.AppRoles | Where-Object { $_.DisplayName -eq $app_role_name }
  8. #Assign the user to the app role
  9. New-AzureADUserAppRoleAssignment -ObjectId $user.ObjectId -PrincipalId $user.ObjectId -ResourceId $sp.ObjectId -Id $appRole.Id

展开查看全部
eivnm1vs

eivnm1vs3#

这对我来说很有效,我需要将多个用户作为所有者添加到多个应用程序中
https://github.com/hmz/Scripts/blob/main/AzureEnterpriseApplicationsAddOwners.ps1

相关问题