How to: List all users and group permissions on Azure DevOps using Azure DevOps CLI

Vinicius Moura
Oct 20, 2020

--

This script list all users on Azure DevOps organization and which groups they belong to

An original script is available on my GitHub repository. See bellow this script:

Let’s go understand each used command.

  1. PowerShell script will receive the following parameters:
  • $PAT = Personal Access token to connect on Azure DevOps;
  • $Organization = Organization URL to list all users and permissions.

2. az devops user list = use this command to list all users on Azure DevOps organization.

az devops user list 
[--detect {false, true}]
[--org]
[--skip]
[--top]
$allUsers = az devops user list --org $Organization | ConvertFrom-Jsonforeach($au in $allUsers.members)
{
Write-Host $au.user.principalName
}

3. az devops security group membership list = use this command to list all groups that based user is contained in.

az devops security group membership list --id
[--detect {false, true}]
[--org]
[--relationship {memberof, members}]
$activeUserGroups = az devops security group membership list --id $au.user.principalName --org $Organization --relationship memberof | ConvertFrom-Json

4. After executing the script on PowerShell, will be generated a JSON file that lists all users and your respective groups.

5. After creating JSON, I connected it on Power BI, as shown bellow:

  • Groups Filter (1): filter a respective group to list users;
  • User Name (2): list a specific user;
  • Group Name (3): list group names;
  • Principal Name (4): list respective users.

--

--