Enum redis::acl::Rule

source ·
pub enum Rule {
Show 19 variants On, Off, AddCommand(String), RemoveCommand(String), AddCategory(String), RemoveCategory(String), AllCommands, NoCommands, AddPass(String), RemovePass(String), AddHashedPass(String), RemoveHashedPass(String), NoPass, ResetPass, Pattern(String), AllKeys, ResetKeys, Reset, Other(String),
}
Available on crate feature acl only.
Expand description

ACL rules are used in order to activate or remove a flag, or to perform a given change to the user ACL, which under the hood are just single words.

Variants§

§

On

Enable the user: it is possible to authenticate as this user.

§

Off

Disable the user: it’s no longer possible to authenticate with this user, however the already authenticated connections will still work.

§

AddCommand(String)

Add the command to the list of commands the user can call.

§

RemoveCommand(String)

Remove the command to the list of commands the user can call.

§

AddCategory(String)

Add all the commands in such category to be called by the user.

§

RemoveCategory(String)

Remove the commands from such category the client can call.

§

AllCommands

Alias for +@all. Note that it implies the ability to execute all the future commands loaded via the modules system.

§

NoCommands

Alias for -@all.

§

AddPass(String)

Add this password to the list of valid password for the user.

§

RemovePass(String)

Remove this password from the list of valid passwords.

§

AddHashedPass(String)

Add this SHA-256 hash value to the list of valid passwords for the user.

§

RemoveHashedPass(String)

Remove this hash value from from the list of valid passwords

§

NoPass

All the set passwords of the user are removed, and the user is flagged as requiring no password: it means that every password will work against this user.

§

ResetPass

Flush the list of allowed passwords. Moreover removes the nopass status.

§

Pattern(String)

Add a pattern of keys that can be mentioned as part of commands.

§

AllKeys

Alias for ~*.

§

ResetKeys

Flush the list of allowed keys patterns.

§

Reset

Performs the following actions: resetpass, resetkeys, off, -@all. The user returns to the same state it has immediately after its creation.

§

Other(String)

Raw text of ACL rule that not enumerated above.

Trait Implementations§

source§

impl Debug for Rule

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl PartialEq for Rule

source§

fn eq(&self, other: &Rule) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl ToRedisArgs for Rule

source§

fn write_redis_args<W>(&self, out: &mut W)
where W: ?Sized + RedisWrite,

This writes the value into a vector of bytes. Each item is a single argument. Most items generate a single item. Read more
source§

fn to_redis_args(&self) -> Vec<Vec<u8>>

This converts the value into a vector of bytes. Each item is a single argument. Most items generate a vector of a single item. Read more
source§

fn describe_numeric_behavior(&self) -> NumericBehavior

Returns an information about the contained value with regards to it’s numeric behavior in a redis context. This is used in some high level concepts to switch between different implementations of redis functions (for instance INCR vs INCRBYFLOAT).
source§

fn is_single_arg(&self) -> bool

Returns an indiciation if the value contained is exactly one argument. It returns false if it’s zero or more than one. This is used in some high level functions to intelligently switch between GET and MGET variants.
source§

impl Eq for Rule

source§

impl StructuralPartialEq for Rule

Auto Trait Implementations§

§

impl Freeze for Rule

§

impl RefUnwindSafe for Rule

§

impl Send for Rule

§

impl Sync for Rule

§

impl Unpin for Rule

§

impl UnwindSafe for Rule

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

source§

fn vzip(self) -> V

source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more