Public/Roles/Get-MsolRoleReport.ps1
function Get-MsolRoleReport { [CmdletBinding()] param ( ) Write-Verbose "Retrieving Azure AD admin roles" $MsolRoleList = @(Get-MsolRole -ErrorAction Stop) foreach ($MsolRole in $MsolRoleList) { Write-Verbose "Processing $($MsolRole.DisplayName)" $RoleMemberList = Get-MsolRoleMember -RoleObjectId $MsolRole.ObjectId foreach ($RoleMember in $RoleMemberList) { [PSCustomObject]@{ "Role" = $MsolRole.Name "Display Name" = $RoleMember.DisplayName "EmailAddress" = $RoleMember.EmailAddress "RoleMemberType" = $RoleMember.RoleMemberType "LastDirSyncTime" = $RoleMember.LastDirSyncTime "Password Policies" = $RoleMember.PasswordPolicies "StrongAuthReq" = @($_.StrongAuthenticationRequirements) -join '|' "Description" = $MsolRole.Description "IsEnabled" = $MsolRole.IsEnabled } } } } |