Commit Graph

7841 Commits

Author SHA1 Message Date
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