如何通过PowerShell删除角色范围为特定Azure AD管理单元的用户

nfg76nw0  于 2022-11-10  发布在  Shell
关注(0)|答案(1)|浏览(162)

我正在尝试理解正确的PowerShell命令,以删除一个或多个用户,这些用户被授予的角色范围超过管理单元的成员。例如,帮助台员工在包含其办公室位置的所有员工的AU上被授予身份验证管理员。
使用Azure AD PowerShell完成此操作的正确方法似乎是使用Remove-AzureADMSScopedRoleMembership,但我找不到任何有关此命令需要哪些输入的文档,或者这是否是达到预期结果的正确方法。
文档:https://learn.microsoft.com/en-us/powershell/module/azuread/remove-azureadmsscopedrolemembership?view=azureadps-2.0
我尝试过的迭代:
Remove-AzureADMSSCopedRoleMembership-id“具有作用域角色的用户的对象ID”-ScopedRoleMembership ID“/adminativeUnits/对象ID of AU”
Remove-AzureADMSSCopedRoleMembership:执行RemoveMSSCopedRoleMembership代码时出错:错误请求消息:找不到该段的资源
Remove-AzureADMSScopedRoleMembership-id“具有作用域角色的AU的对象ID”-ScopedRoleMembership ID“具有作用域角色的用户的对象ID”
Remove-AzureADMSSCopedRoleMembership:执行RemoveMSSCopedRoleMembership Code:BadRequest时出错

h43kikqp

h43kikqp1#

我在我的环境中进行了复制,并获得了预期的结果,如下所示,并遵循Microsoft-Document
首先,我添加了一个作用域角色,如下所示:

Connect-AzureAD
    $User = Get-AzureADUser -SearchString "Display Name of User"
    $Role = Get-AzureADDirectoryRole | Where-Object -Property DisplayName -EQ -Value "User Administrator"
    $RoleMember = New-Object -TypeName Microsoft.Open.AzureAD.Model.RoleMemberInfo
    $Unit = Get-AzureADAdministrativeUnit | Where-Object -Property DisplayName -Eq -Value Test
    $RoleMember.ObjectId = $User.ObjectID
    Add-AzureADScopedRoleMembership -ObjectId  $unit.ObjectId -RoleObjectId $Role.ObjectId -RoleMemberInfo $RoleMember

我使用以下请求从Microsoft Graph API获取了ScopedRoleMembershipId

https://graph.microsoft.com/v1.0/directory/administrativeUnits/{admin-unit-id}/scopedRoleMembers

然后使用下面的命令删除用户,我遵循了Microsoft-Document

Remove-AzureADScopedRoleMembership  -ObjectId   $unit.ObjectId  -ScopedRoleMembershipId "08ovlLXBT0CMQ7kJaZRJU"

尝试按照上述过程,用户将被删除作为我的得到。

相关问题