如何为Get-AzureADUserAppRoleAssignment创建循环?

时间:2019-08-12 03:57:47

标签: azure powershell

我想制作一个powershell脚本,该脚本将列出我来自Azure AD的“用户”列表以及分配给该列表中每个用户的所有企业应用程序。

我尝试设置ForEach-Object循环来迭代从Get-AzureADUser获取的每个对象

此代码有效:

$UserId = (Get-AzureADUser -Top 1).ObjectId
Get-AzureADUserAppRoleAssignment -ObjectId $UserId

我正在尝试为每个输出进行循环和迭代:

$UserId = (Get-AzureADUser).ObjectId | ForEach-Object {
Get-AzureADUserAppRoleAssignment -ObjectId $UserId}

这是错误消息:

Get-AzureADUserAppRoleAssignment:无法将“ System.Object []”转换为参数“ ObjectId”所需的类型“ System.String”。不支持指定的方法。 在线:1字符:44 + Get-AzureADUserAppRoleAssignment -ObjectId $ UserID + ~~~~~~~~     + CategoryInfo:InvalidArgument:(:) [Get-AzureADUserAppRoleAssignment],ParameterBindingException     + FullyQualifiedErrorId:CannotConvertArgument,Microsoft.Open.AzureAD16.PowerShell.GetUserAppRoleAssignments

1 个答案:

答案 0 :(得分:0)

您可以通过以下命令为Get-AzureADUserAppRoleAssignment创建循环:

$ UserId =(Get-AzureADUser).ObjectId

foreach($ UserId中的$ eachUserId) {   Get-AzureADUserAppRoleAssignment -ObjectId $ eachUserId }