Tests: Add aclfile load and save tests (#7765)
improves test coverage (cherry picked from commit 0666267d2771b1a46cdf36eef27d8a7a393c0c7a)
This commit is contained in:
parent
25e211bcf0
commit
b55b0ea0f2
2
tests/assets/user.acl
Normal file
2
tests/assets/user.acl
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
user alice on allcommands allkeys >alice
|
||||||
|
user bob on -@all +@set +acl ~set* >bob
|
@ -261,3 +261,42 @@ start_server {tags {"acl"}} {
|
|||||||
assert_match "*Unknown subcommand or wrong number of arguments*" $e
|
assert_match "*Unknown subcommand or wrong number of arguments*" $e
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
set server_path [tmpdir "server.acl"]
|
||||||
|
exec cp -f tests/assets/user.acl $server_path
|
||||||
|
start_server [list overrides [list "dir" $server_path "aclfile" "user.acl"]] {
|
||||||
|
# user alice on allcommands allkeys >alice
|
||||||
|
# user bob on -@all +@set +acl ~set* >bob
|
||||||
|
|
||||||
|
test "Alice: can excute all command" {
|
||||||
|
r AUTH alice alice
|
||||||
|
assert_equal "alice" [r acl whoami]
|
||||||
|
r SET key value
|
||||||
|
}
|
||||||
|
|
||||||
|
test "Bob: just excute @set and acl command" {
|
||||||
|
r AUTH bob bob
|
||||||
|
assert_equal "bob" [r acl whoami]
|
||||||
|
assert_equal "3" [r sadd set 1 2 3]
|
||||||
|
catch {r SET key value} e
|
||||||
|
set e
|
||||||
|
} {*NOPERM*}
|
||||||
|
|
||||||
|
test "ACL load and save" {
|
||||||
|
r ACL setuser eve +get allkeys >eve on
|
||||||
|
r ACL save
|
||||||
|
|
||||||
|
# ACL load will free user and kill clients
|
||||||
|
r ACL load
|
||||||
|
catch {r ACL LIST} e
|
||||||
|
assert_match {*I/O error*} $e
|
||||||
|
|
||||||
|
reconnect
|
||||||
|
r AUTH alice alice
|
||||||
|
r SET key value
|
||||||
|
r AUTH eve eve
|
||||||
|
r GET key
|
||||||
|
catch {r SET key value} e
|
||||||
|
set e
|
||||||
|
} {*NOPERM*}
|
||||||
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user