antirez
26be458e05
ACL: configure the master connection without user.
2019-01-17 18:33:36 +01:00
antirez
7e73a1fbf3
ACL: AUTH + no default user password raises an error.
...
This way the behavior is very similar to the past one.
This is useful in order to remember the user she probably failed to
configure a password correctly.
2019-01-17 18:30:23 +01:00
antirez
a7ea1e7a2f
ACL: change requirepass stop condition to use ACLs.
2019-01-17 18:22:22 +01:00
antirez
b77577114b
ACL: partial implementation of ACL GETUSER.
2019-01-17 18:19:04 +01:00
antirez
03c4aa01ec
ACL: reimplement requirepass option in term of ACLs.
2019-01-17 18:05:43 +01:00
antirez
dabd1e3bbb
ACL: fix and improve ACL key checking.
2019-01-16 18:31:05 +01:00
antirez
58848500b1
ACL: create the user pattern list ASAP.
2019-01-16 13:50:00 +01:00
antirez
eb6cae0b72
ACL: key matching implemented.
2019-01-16 13:39:04 +01:00
antirez
21808e3720
ACL: implement the key match opcode in ACLSetUser().
2019-01-16 13:29:04 +01:00
antirez
2906e9c196
ACL: fix command exec check by returning.
2019-01-15 18:28:43 +01:00
antirez
a2a8121ad8
ACL: the AUTH command can be always executed.
2019-01-15 18:26:44 +01:00
antirez
8cb696b953
ACL: AUTH uses users. ACL WHOAMI implemented.
2019-01-15 18:16:20 +01:00
antirez
cd421f85b8
ACL: automatically authenticate the nopass default user.
2019-01-15 17:57:49 +01:00
antirez
57fa4a2f01
ACL: AUTH command new form, using the ACL subsystem.
2019-01-15 13:45:16 +01:00
antirez
1cb8998a1c
ACL: nopass user setting.
...
This is needed in order to model the current behavior of authenticating
the connection directly when no password is set. Now with ACLs this will
be obtained by setting the default user as "nopass" user. Moreover this
flag can be used in order to create other users that do not require any
password but will work with "AUTH username <any-password>".
2019-01-15 13:16:31 +01:00
antirez
115adf0049
ACL: ability to set/remove user passwords.
2019-01-15 12:58:54 +01:00
antirez
4d8991fdf4
ACL: initial implementation of the ACL command.
2019-01-15 09:36:12 +01:00
antirez
532049a9bc
ACL: ACLCheckCommandPerm() implementation WIP.
2019-01-14 18:35:21 +01:00
antirez
fc85321233
RESP3: Populate new fields for the AOF fake client.
...
However we should remove this fake client ad-hoc creation, and replace
it with the proper call to createClient(-1), and then adjust the fake
client as we like.
2019-01-14 17:01:49 +01:00
antirez
45346c6766
ACL: fix field name typo causing segfault.
2019-01-14 16:09:29 +01:00
antirez
53053f5f30
ACL: Fix compilation by adding prototype and c->cmd fix.
2019-01-14 13:22:56 +01:00
antirez
b497dbb481
ACL: ACLLCOMMAND flags.
2019-01-14 13:21:21 +01:00
antirez
b9e5d4f575
ACL: Add hook in processCommand() to check the ACLs before call().
2019-01-14 13:20:45 +01:00
antirez
f4b216d32b
ACL: Add skeleton for function checking ability to execute a command.
2019-01-14 13:19:50 +01:00
antirez
79e57bb854
ACL: ACLSetUser(), add allcommands in comment.
2019-01-14 13:19:42 +01:00
antirez
31994ff365
ACL: ACLSetUser(), fix flag and add allcommands +@all opcode.
2019-01-14 13:18:12 +01:00
antirez
7822181e31
ACL: implement to first trivial opcodes in ACLSetUser().
2019-01-11 13:03:50 +01:00
antirez
b2636ecdf5
ACL: avoid a radix tree lookup for the default user.
2019-01-11 11:32:41 +01:00
antirez
4890c2f5e9
ACL: modify comment from PR.
2019-01-11 11:30:09 +01:00
Salvatore Sanfilippo
2793edf8c7
Merge pull request #5769 from charsyam/feature/fix-segmentfault-when-server-starts
...
fix segmentfault when server start in unstable branch
2019-01-11 11:27:09 +01:00
antirez
efa8afedd7
ACL: ACLSetUser(), initial ideas in comments.
2019-01-11 11:25:55 +01:00
charsyam
e1ff6ef8e7
fix segmentfault when server start
2019-01-11 19:12:06 +09:00
antirez
3c538d0595
ACL: create the default user.
2019-01-11 11:02:55 +01:00
antirez
487b8fcbaa
ACL: implement ACLCreateUser().
2019-01-10 17:01:12 +01:00
antirez
f3ad8fc85e
ACL: implement ACLGetUserByName().
2019-01-10 16:40:45 +01:00
antirez
e75a2b8500
ACL: initialization function.
2019-01-10 16:39:32 +01:00
antirez
da1c642f83
ACL: split acl.c into clear sections.
2019-01-10 16:35:55 +01:00
antirez
6771d47230
ACL: add a reference to the user in each client.
2019-01-10 16:34:13 +01:00
antirez
9633476699
ACL: improved version of the user structure.
2019-01-10 12:47:52 +01:00
antirez
3a02107a18
ACL: ACLCheckUserCredentials() next id should be static.
2019-01-09 21:47:43 +01:00
antirez
cc5222bd7a
ACL: use a fixed table for command IDs.
2019-01-09 21:31:29 +01:00
antirez
647a157eac
ACL: set the command ID while populating the commands table.
2019-01-09 17:23:23 +01:00
antirez
a571c99587
ACL: introduce the concept of command ID.
2019-01-09 17:20:47 +01:00
antirez
50927b298e
ACL: fix ACLCheckUserCredentials() usage in AUTH.
2019-01-09 17:09:30 +01:00
antirez
cb7b4154cd
ACL: HELLO should stop if the user is not authenticated.
2019-01-09 17:00:30 +01:00
antirez
106977aaf9
ACL: refactoring of the original authentication code.
2019-01-09 17:00:30 +01:00
antirez
79c3d1355d
RESP3: allow HELLO during busy script and not authenticated states.
2019-01-09 17:00:30 +01:00
antirez
26007b980a
RESP3: Allow any command in RESP3 Pub/Sub mode.
2019-01-09 17:00:30 +01:00
antirez
736d38cf88
RESP3: PING should reply normally in RESP3 Pub/Sub mode.
...
Because in RESP3 commands can be sent in the Pub/Sub connection without
problems, so it's better if in such mode there is no exception about
PING.
2019-01-09 17:00:30 +01:00
antirez
a57ea371bd
RESP3: Pubsub messages in new push format if client is in RESP3 mode.
2019-01-09 17:00:30 +01:00