372 Commits

Author SHA1 Message Date
antirez
dec44d23d3 ACL: move AUTH implementation in acl.c. 2019-02-25 16:33:38 +01:00
antirez
20c7d1b334 Gopher: config setting to turn support on/off. 2019-02-21 17:28:53 +01:00
Salvatore Sanfilippo
e973611e01 Merge pull request #5836 from soloestoy/fix-acl-warning
ACL: show categories in COMMAND reply
2019-02-13 18:59:59 +01:00
zhaozhao.zz
3eb2f4ca14 ACL: show categories in COMMAND reply
Adding another new filed categories at the end of
command reply, it's easy to read and distinguish
flags and categories, also compatible with old format.
2019-02-14 00:13:01 +08:00
antirez
ddff560cac ACL: tag LASTSAVE as dangerous.
That's not REALLY needed, but... right now with LASTSAVE being the only
command tagged as "admin" but not "dangerous" what happens is that after
rewrites the rewrite engine will produce from the rules:

    user default on +@all ~* -@dangerous nopass

The rewrite:

    user default on nopass ~* +@all -@admin -@dangerous +lastsave

Which is correct but will have users wondering about why LASTSAVE has
something special.

Since LASTSAVE after all also leaks information about the underlying
server configuration, that may not be great for SAAS vendors, let's tag
it as dangerous as well and forget about this issue :-)
2019-02-13 16:30:44 +01:00
antirez
1c15e0ff20 ACL: fix setting of FAST flag. 2019-02-12 17:06:26 +01:00
antirez
46243329d4 ACL: refactor+fix AUTH check in processCommand().
The part that is fixed is that now if the default user is off whatever
is its configuration the user is not considered authenticated.
2019-02-11 16:47:02 +01:00
antirez
87ce87e68c ACL: load ACL file at startup. Prevent silly configurations. 2019-02-07 17:20:03 +01:00
antirez
1bdc63cc01 ACL: implement rewriting of users in redis.conf. 2019-02-05 10:48:17 +01:00
antirez
b67e46953b ACL: load the defined users at server startup. 2019-02-04 16:39:07 +01:00
antirez
c9cdbbad7f ACL: populate category flags from command table. 2019-01-23 16:59:09 +01:00
antirez
460c760e71 ACL: command categories added to the command table. 2019-01-23 12:15:10 +01:00
antirez
28f69e10a4 ACL: improve top comments of the command table. 2019-01-23 11:21:02 +01:00
antirez
ccad1520ff ACL: mark more commands as read-only commands. 2019-01-23 11:14:39 +01:00
antirez
90f6cdeb21 ACL: remove no longer existing flag from comment. 2019-01-22 17:57:20 +01:00
antirez
c23b0fe1d6 ACL: populate command table with new flags. 2019-01-22 17:57:20 +01:00
antirez
bc8625da80 ACL: review of Redis command table and new flags format.
However the code is yet not able to parse the new flags format.
2019-01-22 17:57:20 +01:00
antirez
ee0abae9d2 ACL: specify better the command denied error. 2019-01-22 17:57:20 +01:00
antirez
da54f1fd3f Refactoring: always kill AOF/RDB child via helper functions. 2019-01-21 11:28:44 +01:00
antirez
a5e69e6729 ACL: remove server.requirepass + some refactoring. 2019-01-18 11:49:30 +01:00
antirez
d26ecf2415 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
d8dc50be2f ACL: change requirepass stop condition to use ACLs. 2019-01-17 18:22:22 +01:00
antirez
9f666e4710 ACL: fix and improve ACL key checking. 2019-01-16 18:31:05 +01:00
antirez
85eabd7baf ACL: fix command exec check by returning. 2019-01-15 18:28:43 +01:00
antirez
7b2a807ba2 ACL: AUTH command new form, using the ACL subsystem. 2019-01-15 13:45:16 +01:00
antirez
efd8fa754f ACL: initial implementation of the ACL command. 2019-01-15 09:36:12 +01:00
antirez
c17fa9ba7b ACL: Fix compilation by adding prototype and c->cmd fix. 2019-01-14 13:22:56 +01:00
antirez
73f73b9198 ACL: Add hook in processCommand() to check the ACLs before call(). 2019-01-14 13:20:45 +01:00
antirez
74f9451799 ACL: modify comment from PR. 2019-01-11 11:30:09 +01:00
charsyam
f627878bbe fix segmentfault when server start 2019-01-11 19:12:06 +09:00
antirez
1d176f0f0e ACL: initialization function. 2019-01-10 16:39:32 +01:00
antirez
6f25143af6 ACL: use a fixed table for command IDs. 2019-01-09 21:31:29 +01:00
antirez
74d77a1b1e ACL: set the command ID while populating the commands table. 2019-01-09 17:23:23 +01:00
antirez
5151f74fe1 ACL: introduce the concept of command ID. 2019-01-09 17:20:47 +01:00
antirez
e9d88bf1ad ACL: fix ACLCheckUserCredentials() usage in AUTH. 2019-01-09 17:09:30 +01:00
antirez
4d33fe81cd ACL: refactoring of the original authentication code. 2019-01-09 17:00:30 +01:00
antirez
7823490732 RESP3: allow HELLO during busy script and not authenticated states. 2019-01-09 17:00:30 +01:00
antirez
63ed8ecd61 RESP3: Allow any command in RESP3 Pub/Sub mode. 2019-01-09 17:00:30 +01:00
antirez
2579267de2 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
bf3d7bbf31 RESP3: initial implementation of the HELLO command. 2019-01-09 17:00:29 +01:00
antirez
83ad63732e RESP3: add shared.nullarray for better RESP2 compat. 2019-01-09 17:00:29 +01:00
antirez
c8304b099d RESP3: most null replies converted. 2019-01-09 17:00:29 +01:00
antirez
29bbe91392 RESP3: addReplyNull() added. 2019-01-09 17:00:29 +01:00
antirez
e30fef5d8a RESP3: remove other pointless shared object. 2019-01-09 17:00:29 +01:00
antirez
5ebe3268ed RESP3: remove certain constants to spot places to fix. 2019-01-09 17:00:29 +01:00
antirez
036e10dcb9 RESP3: Use new deferred len API in server.c. 2019-01-09 17:00:29 +01:00
antirez
421c242dd0 freeMemoryIfNeeded() small refactoring.
Related to issue #5686 and PR #5689.
2018-12-12 11:37:15 +01:00
Salvatore Sanfilippo
c00d3fc6c2 Merge pull request #5633 from oranagra/frag_bytes_signed
fix #5580, display fragmentation and rss overhead bytes as signed
2018-12-07 17:09:10 +01:00
antirez
a89803cff1 Remove no longer relevant comment in processCommand(). 2018-12-07 17:06:55 +01:00
Oran Agra
bad0b20979 fix #5580, display fragmentation and rss overhead bytes as signed
these metrics become negative when RSS is smaller than the used_memory.
This can easily happen when the program allocated a lot of memory and haven't
written to it yet, in which case the kernel doesn't allocate any pages to the process
2018-12-02 15:29:20 +02:00