ActionPlans/Start-RbacTools.ps1
Function Get-SpecificRoleMembers { param ([string[]]$roles) if (!($roles)) { $roles = (Get-ManagementRole | Select-Object name | Sort-Object name |Out-GridView -PassThru -Title "List users that have the role you selected:").Name } $GetEffectiveUsers = Get-ManagementRoleAssignment -GetEffectiveUsers | Where-Object {(($_.Enabled -eq $True) -and ($roles -match $_.Role))} |` Select-Object Role, RoleAssigneeName, RoleAssigneeType, RoleAssignmentDelegationtype, @{ Name = 'Alias(User)'; Expression = {$_.User}}, CustomRecipientWriteScope, CustomConfigWriteScope, RecipientWriteScope, ConfigWriteScope, Identity return $GetEffectiveUsers } Function Get-AllUsersWithAllRoles { $GetEffectiveUsers = Get-ManagementRoleAssignment -GetEffectiveUsers | Where-Object {($_.Enabled -eq $True)} |` Select-Object Role, RoleAssigneeName, RoleAssigneeType, RoleAssignmentDelegationtype, @{ Name = 'Alias(User)'; Expression = {$_.User}}, CustomRecipientWriteScope, CustomConfigWriteScope, RecipientWriteScope, ConfigWriteScope, Identity return $GetEffectiveUsers } |