Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for AUTH with user + password introduced in Redis 6 #1202

Closed
tgrall opened this issue Jan 7, 2020 · 5 comments
Closed

Add support for AUTH with user + password introduced in Redis 6 #1202

tgrall opened this issue Jan 7, 2020 · 5 comments
Labels
type: feature A new feature
Milestone

Comments

@tgrall
Copy link
Contributor

tgrall commented Jan 7, 2020

Feature Request

In Redis 6 it is now possible to authenticate either using a simple password (legacy) or using a user + password

AUTH secret
AUTH default secret

See ACL documentation section in Redis Doc

Is your feature request related to a problem? Please describe

No

Describe the solution you'd like

Just support new features of Redis 6

Describe alternatives you've considered

No alternative,

Teachability, Documentation, Adoption, Migration Strategy

Adding new parameter to the auth() method and URIs

@tgrall tgrall added the type: feature A new feature label Jan 7, 2020
@mp911de mp911de added this to the 6.0 M1 milestone Jan 7, 2020
@mikebell90
Copy link

While it would be hacky and awkward, can't you specify the password as a two part atom - userpassword. I haven't checked the parser to see if this is an issue.

@mp911de
Copy link
Collaborator

mp911de commented Mar 2, 2020

The format user:password applies only to RedisURI. We should introduce for Lettuce a dedicated overload (auth(String username, CharSequence password)). Any kind of separator char would clash with valid Redis passwords.

@mikebell90
Copy link

I would go so far as to say considering creating an

auth(Principal principal) abstraction, with overloads for the username only and username/password is a better abstraction?

tgrall added a commit to tgrall/lettuce-core that referenced this issue Mar 29, 2020
mp911de pushed a commit that referenced this issue Apr 1, 2020
mp911de added a commit that referenced this issue Apr 1, 2020
Add author and since tags, tweak Javadoc.
Memoize auth(…) with username for reconnect and re-authentication.

Split tests into tests that require Redis 6 and those that do not require Redis 6 to guard these against older/newer Redis versions.

Original pull request: #1249
@mp911de mp911de closed this as completed Apr 1, 2020
mp911de added a commit that referenced this issue Apr 2, 2020
Fix test.
@gkorland
Copy link
Contributor

gkorland commented Apr 13, 2020

@mp911de what the release plan for this issue? since Redis 6 is backward compatible with RESP2 I don't think this issue should be blocked by the RESP3 implementation.

@mp911de
Copy link
Collaborator

mp911de commented Apr 14, 2020

I was a bit reluctant on releasing a first milestone as Redis 6's Sentinel with RESP3 (redis/redis#6160) creates an impediment for RESP3 usage. Lettuce 6 attempts a RESP3 handshake by default and so the default behavior renders Sentinel arrangements unusable.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: feature A new feature
Projects
None yet
Development

No branches or pull requests

4 participants