To view your Jenkins group memberships through the web UI:
- Log in to your Jenkins instance
- Click your username in the top-right corner
- Select "Configure" from the dropdown menu
- Scroll to the "Groups" section under "User Information"
For programmatic access or when using Jenkins CLI:
// Groovy script example (Jenkins Script Console)
import hudson.model.User
import jenkins.security.SecurityContextHolder
def currentUser = User.current()
def groups = currentUser.getAuthorities().collect { it.authority }
println "User groups: ${groups}"
Authenticated API endpoint for checking group memberships:
GET /whoAmI/api/json
// Example response:
{
"anonymous": false,
"authenticated": true,
"name": "username",
"authorities": [
"ROLE_AUTHENTICATED",
"group1",
"group2"
]
}
When using popular authorization plugins:
- Matrix Authorization Strategy: Groups appear in "People" section
- Role-based Authorization: Check "Manage and Assign Roles" page
- Active Directory Plugin: Groups sync from AD/LDAP
Common resolution steps:
// Verify group visibility in system log
import jenkins.security.plugins.ldap.LDAPGroupDetails
User.getAll().each { user ->
println "${user.id}: ${user.getAuthorities()}"
}
When configuring granular permissions in Jenkins, knowing a user's group memberships is crucial. The built-in way to check this is through Jenkins' People
section. Here's how to access it:
1. Log in to your Jenkins instance as an administrator
2. Click on "People" in the left sidebar
3. Find and click on the username you're investigating
4. Look for the "Groups" section in the user profile page
For automation or scripting purposes, you can use Jenkins' REST API to retrieve group information:
GET /asynchPeople/api/json?tree=users[user[groups[name]]]
Or for a specific user:
GET /user/{username}/api/json?tree=groups[name]
If you're troubleshooting permission issues, you might also want to verify how Jenkins is obtaining group information:
1. Go to "Manage Jenkins" > "System Information"
2. Search for "Authorization" related entries
3. Look for "Group details" or similar entries
For advanced users, here's a Groovy script you can run in Jenkins Script Console:
import jenkins.model.*
import hudson.security.*
def username = "your_username"
def user = User.get(username, false)
def groups = []
if (user) {
def authStrategy = Jenkins.instance.getAuthorizationStrategy()
if (authStrategy instanceof hudson.security.GlobalMatrixAuthorizationStrategy) {
groups = authStrategy.getGroups()
}
// Additional logic for other auth strategies
}
println "User ${username} belongs to groups: ${groups}"
If you're not seeing expected groups:
- Verify your authentication provider is correctly configured
- Check Jenkins logs for any authorization errors
- Ensure your user has sufficient permissions to view group information
- Confirm group synchronization is working if using LDAP/Active Directory