0
0
RabbitMQdevops~20 mins

Authentication backends (LDAP, OAuth) in RabbitMQ - Practice Problems & Coding Challenges

Choose your learning style9 modes available
Challenge - 5 Problems
🎖️
Authentication Mastery in RabbitMQ
Get all challenges correct to earn this badge!
Test your skills under time pressure!
🧠 Conceptual
intermediate
2:00remaining
Understanding LDAP Authentication in RabbitMQ

Which statement correctly describes how RabbitMQ uses LDAP for authentication?

ARabbitMQ stores LDAP user passwords locally and compares them during login.
BRabbitMQ directly queries the LDAP server to verify user credentials during login.
CRabbitMQ uses LDAP only for authorization, not authentication.
DRabbitMQ requires users to authenticate via OAuth before LDAP is checked.
Attempts:
2 left
💡 Hint

Think about how LDAP servers are typically used for user verification.

💻 Command Output
intermediate
2:00remaining
RabbitMQ OAuth Authentication Plugin Output

What is the expected output when enabling the OAuth2 authentication plugin in RabbitMQ and restarting the server?

RabbitMQ
rabbitmq-plugins enable rabbitmq_auth_backend_oauth2
sudo systemctl restart rabbitmq-server
sudo rabbitmqctl status | grep oauth2
A{rabbit,auth_backend_oauth2} is enabled and running
BError: plugin rabbitmq_auth_backend_oauth2 not found
COAuth2 plugin enabled but server failed to start
DNo output related to oauth2 found
Attempts:
2 left
💡 Hint

Check if the plugin is listed as enabled after restart.

Configuration
advanced
3:00remaining
Configuring LDAP Authentication Backend in RabbitMQ

Which configuration snippet correctly sets up RabbitMQ to authenticate users against an LDAP server at ldap.example.com on port 389?

A
auth_backends = rabbit_auth_backend_ldap
ldap.servers = ldap.example.com
ldap.port = 389
ldap.user_dn_pattern = uid=${username},ou=users,dc=example,dc=com
B
auth_backends = [rabbit_auth_backend_ldap]
ldap.server = ldap.example.com
ldap.port = 636
ldap.user_dn_pattern = uid=${username},ou=users,dc=example,dc=com
C
auth_backends.1 = rabbit_auth_backend_ldap
ldap.servers.1 = ldap.example.com
ldap.port = 636
ldap.user_dn_pattern = cn=${username},ou=users,dc=example,dc=com
D
auth_backends.1 = rabbit_auth_backend_ldap
ldap.servers.1 = ldap.example.com
ldap.port = 389
ldap.user_dn_pattern = cn=${username},ou=users,dc=example,dc=com
Attempts:
2 left
💡 Hint

Check the correct keys for LDAP server and port, and user DN pattern syntax.

Troubleshoot
advanced
2:30remaining
Troubleshooting OAuth2 Authentication Failure in RabbitMQ

After configuring OAuth2 authentication in RabbitMQ, users report login failures. Which of the following is the most likely cause?

ALDAP server is down, causing OAuth2 to fail.
BRabbitMQ does not support OAuth2 authentication.
CThe OAuth2 token endpoint URL is incorrect or unreachable.
DRabbitMQ requires a local password file for OAuth2 to work.
Attempts:
2 left
💡 Hint

Consider what external service OAuth2 depends on.

Best Practice
expert
3:00remaining
Best Practice for Securing RabbitMQ with LDAP and OAuth

Which approach best secures RabbitMQ authentication when using both LDAP and OAuth backends?

AConfigure RabbitMQ to use OAuth as primary backend and LDAP as fallback, enabling TLS for both connections.
BUse LDAP only and disable OAuth to reduce complexity.
CAllow anonymous access and rely on network firewall for security.
DStore all user passwords in RabbitMQ and disable external backends.
Attempts:
2 left
💡 Hint

Think about layered security and encrypted connections.