Bird
Raised Fist0
Jenkinsdevops~20 mins

Authorization strategies (Matrix, role-based) in Jenkins - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Authorization Mastery
Get all challenges correct to earn this badge!
Test your skills under time pressure!
🧠 Conceptual
intermediate
2:00remaining
Understanding Matrix-based Authorization Strategy

In Jenkins, the Matrix-based security allows you to assign permissions to users or groups in a grid format. Which of the following best describes how permissions are assigned in this strategy?

APermissions are assigned individually to each user or group by checking boxes in a matrix grid.
BPermissions are assigned only through predefined roles that users inherit automatically.
CPermissions are assigned randomly by Jenkins based on user activity.
DPermissions are assigned by editing the Jenkins core source code.
Attempts:
2 left
💡 Hint

Think about how a grid or table might be used to assign permissions.

💻 Command Output
intermediate
2:00remaining
Role-based Authorization Plugin Output

After configuring the Role-based Authorization Strategy plugin in Jenkins, you run a command to list all roles. What is the expected output format when you run jenkins-cli list-roles?

AA list of roles with their names and assigned permissions in plain text.
BA JSON object containing user passwords and roles.
CAn error message saying 'Command not found'.
DA list of all Jenkins jobs with their build statuses.
Attempts:
2 left
💡 Hint

Think about what a role listing command should show.

🔀 Workflow
advanced
3:00remaining
Configuring Role-based Authorization for a New Team

You want to create a new role called 'dev-team' in Jenkins with permissions to build and read jobs but not to configure system settings. Which sequence of steps correctly achieves this using the Role-based Authorization Strategy plugin?

A3,1,2,4
B1,3,2,4
C2,1,3,4
D1,2,3,4
Attempts:
2 left
💡 Hint

Think about first creating the role, then assigning it.

❓ Troubleshoot
advanced
2:00remaining
Troubleshooting Matrix Authorization Permission Denied

A user reports they cannot configure a job even though they are listed in the Matrix-based security with 'Job Configure' permission checked. What is the most likely cause?

AJenkins is offline and cannot apply permissions.
BThe user's browser cache is outdated.
CThe user is not part of the group assigned the permission in the matrix.
DThe Jenkins server needs a restart to apply matrix changes.
Attempts:
2 left
💡 Hint

Check if the user is actually included in the permission assignment.

✅ Best Practice
expert
3:00remaining
Best Practice for Combining Matrix and Role-based Authorization

In a Jenkins environment with multiple teams and complex permission needs, what is the best practice for combining Matrix-based and Role-based Authorization strategies?

AAvoid using Role-based Authorization and rely only on Matrix-based for all permissions.
BUse Role-based Authorization for broad role definitions and Matrix-based for fine-grained permission tweaks within roles.
CUse both strategies simultaneously on the same Jenkins instance without restrictions.
DDisable all authorization and rely on external firewall rules.
Attempts:
2 left
💡 Hint

Think about how roles and detailed permissions complement each other.

Practice

(1/5)
1. What is the main difference between Jenkins' Matrix Authorization Strategy and Role-Based Authorization Strategy?
easy
A. Matrix assigns permissions directly to users; Role-Based assigns permissions to roles.
B. Matrix uses roles; Role-Based assigns permissions directly to users.
C. Matrix is only for admins; Role-Based is for all users.
D. Matrix strategy is deprecated; Role-Based is the only supported method.

Solution

  1. Step 1: Understand Matrix Strategy

    Matrix strategy assigns specific permissions directly to individual users or groups.
  2. Step 2: Understand Role-Based Strategy

    Role-Based strategy assigns users to roles, and roles have predefined permissions.
  3. Final Answer:

    Matrix assigns permissions directly to users; Role-Based assigns permissions to roles. -> Option A
  4. Quick Check:

    Matrix = direct user permissions, Role-Based = roles with permissions [OK]
Hint: Matrix = user permissions, Role-Based = roles permissions [OK]
Common Mistakes:
  • Confusing roles with users in Matrix strategy
  • Thinking Matrix is deprecated
  • Assuming Role-Based assigns permissions directly to users
2. Which of the following is the correct way to enable Matrix Authorization Strategy in Jenkins configuration?
easy
A. Go to Manage Jenkins > Configure Global Security > Select 'Project-based Matrix Authorization Strategy'.
B. Go to Manage Jenkins > Configure System > Select 'Role-based security' and assign roles.
C. Go to Manage Jenkins > Configure Global Security > Select 'Matrix-based security' and assign permissions.
D. Go to Manage Jenkins > Configure Global Security > Select 'LDAP Authorization Strategy'.

Solution

  1. Step 1: Locate Security Settings

    Matrix Authorization Strategy is enabled under Manage Jenkins > Configure Global Security.
  2. Step 2: Select Correct Option

    Select 'Matrix-based security' to assign permissions directly to users or groups.
  3. Final Answer:

    Go to Manage Jenkins > Configure Global Security > Select 'Matrix-based security' and assign permissions. -> Option C
  4. Quick Check:

    Matrix security enabled via Configure Global Security > Matrix-based security [OK]
Hint: Matrix security is under Configure Global Security, not Configure System [OK]
Common Mistakes:
  • Choosing 'Role-based security' instead of 'Matrix-based security'
  • Selecting 'Project-based Matrix Authorization Strategy' for global settings
  • Confusing LDAP with Matrix strategy
3. Given this Role-Based Authorization Strategy setup:
Role: Developer - Permissions: Read, Build
User: alice assigned to Developer role
User: bob assigned to no roles

What will be the result if alice and bob try to build a job?
medium
A. Both alice and bob can build the job.
B. Only bob can build the job; alice cannot.
C. Neither alice nor bob can build the job.
D. Only alice can build the job; bob cannot.

Solution

  1. Step 1: Check alice's permissions

    alice is assigned the Developer role, which has Build permission, so she can build jobs.
  2. Step 2: Check bob's permissions

    bob has no roles assigned, so he has no Build permission and cannot build jobs.
  3. Final Answer:

    Only alice can build the job; bob cannot. -> Option D
  4. Quick Check:

    Role permissions control build access; alice has role, bob does not [OK]
Hint: Only users with roles having Build permission can build jobs [OK]
Common Mistakes:
  • Assuming users without roles have default build access
  • Confusing read permission with build permission
  • Thinking roles assign permissions to users automatically without assignment
4. You configured Matrix Authorization Strategy but users report they cannot access the Jenkins dashboard. What is the most likely cause?
medium
A. You did not restart Jenkins after configuration.
B. You forgot to grant 'Overall Read' permission to the users.
C. You enabled Role-Based Authorization Strategy instead of Matrix.
D. You assigned too many permissions to the users.

Solution

  1. Step 1: Understand Matrix permissions

    In Matrix strategy, users must have 'Overall Read' permission to see the Jenkins dashboard.
  2. Step 2: Identify missing permission

    If users cannot access the dashboard, likely 'Overall Read' permission was not granted.
  3. Final Answer:

    You forgot to grant 'Overall Read' permission to the users. -> Option B
  4. Quick Check:

    Missing 'Overall Read' blocks dashboard access [OK]
Hint: Always grant 'Overall Read' to users for dashboard access [OK]
Common Mistakes:
  • Assuming too many permissions cause access issues
  • Confusing Role-Based and Matrix strategies
  • Thinking Jenkins restart is required after permission changes
5. You want to create a Jenkins setup where users can only view jobs but only members of the 'QA' role can build and configure jobs. Which strategy and configuration best fits this requirement?
hard
A. Use Role-Based Authorization Strategy; assign 'QA' role with Build and Configure permissions, assign other users to a role with only Read permission.
B. Use Matrix Authorization Strategy; assign Build and Configure permissions to all users except QA.
C. Use Role-Based Authorization Strategy; assign all users to 'Admin' role with full permissions.
D. Use Matrix Authorization Strategy; assign all permissions to anonymous users.

Solution

  1. Step 1: Identify requirement for role-based control

    Users need different permission sets based on roles, so Role-Based Authorization Strategy fits best.
  2. Step 2: Assign roles and permissions

    Create a 'QA' role with Build and Configure permissions; assign other users a role with only Read permission.
  3. Final Answer:

    Use Role-Based Authorization Strategy; assign 'QA' role with Build and Configure permissions, assign other users to a role with only Read permission. -> Option A
  4. Quick Check:

    Role-Based strategy allows role-specific permissions as required [OK]
Hint: Role-Based strategy is best for different permission sets by role [OK]
Common Mistakes:
  • Assigning build permissions to all users in Matrix strategy
  • Giving all users admin rights
  • Using Matrix strategy when role separation is needed
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard