[][src]Struct zookeeper_async::Acl

pub struct Acl {
    pub perms: Permission,
    pub scheme: String,
    pub id: String,
}

An access control list.

In general, the ACL system is similar to UNIX file access permissions, where znodes act as files. Unlike UNIX, each znode can have any number of ACLs to correspond with the potentially limitless (and pluggable) authentication schemes. A more surprising difference is that ACLs are not recursive: If /path is only readable by a single user, but /path/sub is world-readable, then anyone will be able to read /path/sub.

See the ZooKeeper Programmer's Guide for more information.

Fields

perms: Permission

The permissions associated with this ACL.

scheme: String

The authentication scheme this list is used for. The most common scheme is "auth", which allows any authenticated user to do anything (see creator_all).

id: String

The ID of the user under the scheme. For example, with the "ip" scheme, this is an IP address or CIDR netmask.

Implementations

impl Acl[src]

pub fn new<T, U>(permissions: Permission, scheme: T, id: U) -> Acl where
    T: ToString,
    U: ToString
[src]

Create a new ACL with the given permissions, scheme, and id.

pub fn creator_all() -> &'static Vec<Acl>

Notable traits for Vec<u8, Global>

impl Write for Vec<u8, Global>
[src]

This ACL gives the creators authentication id's all permissions.

pub fn open_unsafe() -> &'static Vec<Acl>

Notable traits for Vec<u8, Global>

impl Write for Vec<u8, Global>
[src]

This is a completely open ACL.

pub fn read_unsafe() -> &'static Vec<Acl>

Notable traits for Vec<u8, Global>

impl Write for Vec<u8, Global>
[src]

This ACL gives the world the ability to read.

Trait Implementations

impl Clone for Acl[src]

impl Debug for Acl[src]

impl Display for Acl[src]

impl PartialEq<Acl> for Acl[src]

impl StructuralPartialEq for Acl[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T> Instrument for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.