ACL: fix command exec check by returning.
This commit is contained in:
parent
c79b01f4ba
commit
ff92c06947
14
src/server.c
14
src/server.c
@ -2596,6 +2596,14 @@ int processCommand(client *c) {
|
|||||||
return C_OK;
|
return C_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Check if the user can run this command according to the current
|
||||||
|
* ACLs. */
|
||||||
|
if (ACLCheckCommandPerm(c) == C_ERR) {
|
||||||
|
flagTransaction(c);
|
||||||
|
addReplyErrorFormat(c,"-NOPERM this user has no permissions to run the %s command", c->cmd->name);
|
||||||
|
return C_OK;
|
||||||
|
}
|
||||||
|
|
||||||
/* If cluster is enabled perform the cluster redirection here.
|
/* If cluster is enabled perform the cluster redirection here.
|
||||||
* However we don't perform the redirection if:
|
* However we don't perform the redirection if:
|
||||||
* 1) The sender of this command is our master.
|
* 1) The sender of this command is our master.
|
||||||
@ -2688,12 +2696,6 @@ int processCommand(client *c) {
|
|||||||
return C_OK;
|
return C_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Check if the user can run this command according to the current
|
|
||||||
* ACLs. */
|
|
||||||
if (ACLCheckCommandPerm(c) == C_ERR) {
|
|
||||||
addReplyErrorFormat(c,"-NOPERM this user has no permissions to run the %s command", c->cmd->name);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Only allow a subset of commands in the context of Pub/Sub if the
|
/* Only allow a subset of commands in the context of Pub/Sub if the
|
||||||
* connection is in RESP2 mode. With RESP3 there are no limits. */
|
* connection is in RESP2 mode. With RESP3 there are no limits. */
|
||||||
if ((c->flags & CLIENT_PUBSUB && c->resp == 2) &&
|
if ((c->flags & CLIENT_PUBSUB && c->resp == 2) &&
|
||||||
|
Loading…
x
Reference in New Issue
Block a user