636424c0ce
ACL: change requirepass stop condition to use ACLs.
2019-01-17 18:22:22 +01:00
0526d1538b
ACL: partial implementation of ACL GETUSER.
2019-01-17 18:19:04 +01:00
7b65605ab2
ACL: reimplement requirepass option in term of ACLs.
2019-01-17 18:05:43 +01:00
4a3419acfc
ACL: fix and improve ACL key checking.
2019-01-16 18:31:05 +01:00
dbae371090
ACL: create the user pattern list ASAP.
2019-01-16 13:50:00 +01:00
f78b3ede27
ACL: key matching implemented.
2019-01-16 13:39:04 +01:00
0db42d4ba8
ACL: implement the key match opcode in ACLSetUser().
2019-01-16 13:29:04 +01:00
ff92c06947
ACL: fix command exec check by returning.
2019-01-15 18:28:43 +01:00
c79b01f4ba
ACL: the AUTH command can be always executed.
2019-01-15 18:26:44 +01:00
cca64672f4
ACL: AUTH uses users. ACL WHOAMI implemented.
2019-01-15 18:16:20 +01:00
35fe59935e
ACL: automatically authenticate the nopass default user.
2019-01-15 17:57:49 +01:00
52e9922987
ACL: AUTH command new form, using the ACL subsystem.
2019-01-15 13:45:16 +01:00
b39409bcf8
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
4f7ff85b88
ACL: ability to set/remove user passwords.
2019-01-15 12:58:54 +01:00
7aea02fa87
ACL: initial implementation of the ACL command.
2019-01-15 09:36:12 +01:00
a2e376ba52
ACL: ACLCheckCommandPerm() implementation WIP.
2019-01-14 18:35:21 +01:00
733438fe23
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
09391369b8
ACL: fix field name typo causing segfault.
2019-01-14 16:09:29 +01:00
a0a4fb85ff
ACL: Fix compilation by adding prototype and c->cmd fix.
2019-01-14 13:22:56 +01:00
2da2e452ab
ACL: ACLLCOMMAND flags.
2019-01-14 13:21:21 +01:00
648411eb7d
ACL: Add hook in processCommand() to check the ACLs before call().
2019-01-14 13:20:45 +01:00
f95152d4c8
ACL: Add skeleton for function checking ability to execute a command.
2019-01-14 13:19:50 +01:00
4376575d83
ACL: ACLSetUser(), add allcommands in comment.
2019-01-14 13:19:42 +01:00
67754ae021
ACL: ACLSetUser(), fix flag and add allcommands +@all opcode.
2019-01-14 13:18:12 +01:00
e7d15e4820
ACL: implement to first trivial opcodes in ACLSetUser().
2019-01-11 13:03:50 +01:00
aced0328e3
ACL: avoid a radix tree lookup for the default user.
2019-01-11 11:32:41 +01:00
7f8314760a
ACL: modify comment from PR.
2019-01-11 11:30:09 +01:00
6078d85b52
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
4b72d087e9
ACL: ACLSetUser(), initial ideas in comments.
2019-01-11 11:25:55 +01:00
45952df700
fix segmentfault when server start
2019-01-11 19:12:06 +09:00
dc4f7ad106
ACL: create the default user.
2019-01-11 11:02:55 +01:00
6bb6a6d3a8
ACL: implement ACLCreateUser().
2019-01-10 17:01:12 +01:00
e4846b028d
ACL: implement ACLGetUserByName().
2019-01-10 16:40:45 +01:00
29c88a9ce5
ACL: initialization function.
2019-01-10 16:39:32 +01:00
e9a902a958
ACL: split acl.c into clear sections.
2019-01-10 16:35:55 +01:00
4278104acc
ACL: add a reference to the user in each client.
2019-01-10 16:34:13 +01:00
4729f71495
ACL: improved version of the user structure.
2019-01-10 12:47:52 +01:00
45ff9f33d6
ACL: ACLCheckUserCredentials() next id should be static.
2019-01-09 21:47:43 +01:00
7fc882c578
ACL: use a fixed table for command IDs.
2019-01-09 21:31:29 +01:00
010b24f864
ACL: set the command ID while populating the commands table.
2019-01-09 17:23:23 +01:00
91f1d8026b
ACL: introduce the concept of command ID.
2019-01-09 17:20:47 +01:00
42271cff2d
ACL: fix ACLCheckUserCredentials() usage in AUTH.
2019-01-09 17:09:30 +01:00
f5d918b2bb
ACL: HELLO should stop if the user is not authenticated.
2019-01-09 17:00:30 +01:00
b43d70df56
ACL: refactoring of the original authentication code.
2019-01-09 17:00:30 +01:00
4d80b0e965
RESP3: allow HELLO during busy script and not authenticated states.
2019-01-09 17:00:30 +01:00
9018388c3f
RESP3: Allow any command in RESP3 Pub/Sub mode.
2019-01-09 17:00:30 +01:00
a4f8f4a824
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
eaaac08892
RESP3: Pubsub messages in new push format if client is in RESP3 mode.
2019-01-09 17:00:30 +01:00
bc75a94e2d
RESP3: pubsub messages API completely refactored.
2019-01-09 17:00:30 +01:00
798a329192
RESP3: extract code to send pubsub messages into functions.
2019-01-09 17:00:30 +01:00