What is the purpose of the requirepass directive in Redis?
The requirepass directive sets a password that clients must provide to access the Redis server, adding a layer of security.
Click to reveal answer
beginner
How do you enable password authentication in Redis using requirepass?
You add the line requirepass yourpassword in the Redis configuration file (redis.conf) and restart the server.
Click to reveal answer
beginner
What command do you use to authenticate a client connection after requirepass is set?
Use the AUTH yourpassword command to authenticate the client before running other commands.
Click to reveal answer
intermediate
What happens if a client tries to run commands without authenticating when requirepass is set?
Redis will respond with an error: NOAUTH Authentication required. and will not execute the command.
Click to reveal answer
intermediate
Can you change the password set by requirepass without restarting Redis?
Yes, you can change it at runtime using the CONFIG SET requirepass newpassword command (requires current authentication).
Click to reveal answer
What does the requirepass directive do in Redis?
AEnables SSL encryption
BLimits the number of client connections
CSets a password clients must use to connect
DEnables data persistence
✗ Incorrect
The requirepass directive sets a password that clients must provide to access Redis.
Which command authenticates a client after requirepass is set?
AAUTH password
BCONNECT password
CLOGIN password
DPASS password
✗ Incorrect
The AUTH command is used to authenticate clients with the password.
What error does Redis return if a client runs commands without authenticating when requirepass is set?
AERR wrong number of arguments
BNOAUTH Authentication required.
CERR unknown command
DERR permission denied
✗ Incorrect
Redis returns NOAUTH Authentication required. when commands are run without authentication.
Where do you set the requirepass directive?
AIn the Redis configuration file (redis.conf)
BIn the Redis client
CIn the operating system environment variables
DIn the Redis database keys
✗ Incorrect
The requirepass directive is set in the Redis configuration file.
Can you change the requirepass password without restarting Redis?
ANo, the password cannot be changed
BNo, you must restart Redis
CYes, by editing the database keys
DYes, with the CONFIG SET command
✗ Incorrect
You can change the password at runtime using CONFIG SET requirepass newpassword without restarting.
Explain how Redis authentication works when requirepass is set.
Think about what happens before and after a client connects.
You got /4 concepts.
Describe the steps to enable and use password authentication in Redis.
Consider both server setup and client actions.
You got /4 concepts.
Practice
(1/5)
1. What does the requirepass directive do in Redis?
easy
A. It sets a password that clients must use to authenticate before accessing Redis.
B. It disables all client connections to Redis.
C. It automatically encrypts all data stored in Redis.
D. It sets the maximum number of clients allowed to connect.
Solution
Step 1: Understand the purpose of requirepass
The requirepass directive is used to protect Redis by requiring clients to authenticate with a password.
Step 2: Compare options with this purpose
Only It sets a password that clients must use to authenticate before accessing Redis. describes setting a password for client authentication, matching the purpose of requirepass.
Final Answer:
It sets a password that clients must use to authenticate before accessing Redis. -> Option A
Quick Check:
requirepass = password protection [OK]
Hint: requirepass means password required to connect [OK]
Common Mistakes:
Thinking requirepass disables connections
Confusing requirepass with encryption
Assuming requirepass limits client count
2. Which of the following is the correct way to authenticate a Redis client after requirepass is set?
easy
A. AUTH mypassword
B. LOGIN mypassword
C. CONNECT mypassword
D. PASSWORD mypassword
Solution
Step 1: Identify the Redis command for authentication
Redis uses the AUTH command followed by the password to authenticate clients.
Step 2: Check the options for the AUTH command
Only AUTH mypassword uses the correct AUTH command syntax.
Final Answer:
AUTH mypassword -> Option A
Quick Check:
AUTH command = authenticate password [OK]
Hint: Use AUTH command to send password [OK]
Common Mistakes:
Using LOGIN instead of AUTH
Using CONNECT or PASSWORD commands which don't exist
Forgetting to include the password after AUTH
3. Given the Redis configuration has requirepass foobar set, what will be the output of the following commands sequence?
SET key1 value1
GET key1
AUTH foobar
GET key1
medium
A. OK
(error) NOAUTH Authentication required.
OK
"value1"
B. OK
"value1"
OK
"value1"
C. OK
(error) NOAUTH Authentication required.
(error) NOAUTH Authentication required.
"value1"
D. (error) NOAUTH Authentication required.
(error) NOAUTH Authentication required.
OK
(nil)
Solution
Step 1: Understand requirepass effect on commands
When requirepass is set, all commands except AUTH fail with NOAUTH error until the client authenticates.
Step 2: Analyze command sequence
SET key1 value1 fails with NOAUTH (unauthenticated). GET key1 fails with NOAUTH. AUTH foobar succeeds (OK). GET key1 returns (nil) because the key was never successfully set.
Final Answer:
(error) NOAUTH Authentication required.
(error) NOAUTH Authentication required.
OK
(nil) -> Option D
Quick Check:
Pre-AUTH: NOAUTH errors; post-AUTH: (nil) since key unset [OK]
Hint: Non-AUTH commands fail with NOAUTH before successful AUTH [OK]
Common Mistakes:
Assuming commands work before AUTH
Thinking AUTH returns error
Confusing order of outputs
4. You set requirepass mysecret in your Redis config. A client tries to run AUTH wrongpass followed by GET key. What is the problem and how to fix it?
medium
A. The client must restart Redis; fix by restarting server.
B. The client used wrong password; fix by using correct password with AUTH.
C. requirepass disables GET command; fix by removing requirepass.
D. The client must run AUTH after GET; fix by swapping commands.
Solution
Step 1: Identify the error cause
Using a wrong password with AUTH means client is not authenticated, so GET command will fail with NOAUTH error.
Step 2: Correct the authentication process
Client must provide the correct password with AUTH to authenticate and access commands like GET.
Final Answer:
The client used wrong password; fix by using correct password with AUTH. -> Option B
Quick Check:
Wrong password = no access; correct password fixes it [OK]
Hint: AUTH password must match requirepass exactly [OK]