Trait CedarEntity

Source
pub trait CedarEntity:
    CedarIdentifiable
    + Serialize
    + Send
    + Sync {
    // Provided methods
    fn parents(
        &self,
        global: &impl Global,
    ) -> impl Future<Output = Result<impl IntoIterator<Item = JsonEntityUid>, Status>> + Send { ... }
    fn additional_attributes(
        &self,
        global: &impl Global,
    ) -> impl Future<Output = Result<impl Serialize, Status>> + Send { ... }
    fn attributes(
        &self,
        global: &impl Global,
    ) -> impl Future<Output = Result<impl Serialize, Status>> + Send { ... }
    fn to_entity(
        &self,
        global: &impl Global,
        schema: Option<&Schema>,
    ) -> impl Future<Output = Result<Entity, Status>> + Send { ... }
}

Provided Methods§

Source

fn parents( &self, global: &impl Global, ) -> impl Future<Output = Result<impl IntoIterator<Item = JsonEntityUid>, Status>> + Send

Source

fn additional_attributes( &self, global: &impl Global, ) -> impl Future<Output = Result<impl Serialize, Status>> + Send

Source

fn attributes( &self, global: &impl Global, ) -> impl Future<Output = Result<impl Serialize, Status>> + Send

Returns the attributes of the entity as a map. Also includes additional attributes from additional_attributes.

Source

fn to_entity( &self, global: &impl Global, schema: Option<&Schema>, ) -> impl Future<Output = Result<Entity, Status>> + Send

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl CedarEntity for MfaTotpCredential

Source§

impl CedarEntity for MfaWebauthnCredential

Source§

impl CedarEntity for Organization

Source§

impl CedarEntity for OrganizationInvitation

Source§

async fn additional_attributes( &self, global: &impl Global, ) -> Result<impl Serialize, Status>

Source§

impl CedarEntity for OrganizationMember

Source§

async fn parents( &self, _: &impl Global, ) -> Result<impl IntoIterator<Item = JsonEntityUid>, Status>

Source§

impl CedarEntity for Policy

Source§

impl CedarEntity for Project

Source§

impl CedarEntity for Role

Source§

impl CedarEntity for ServiceAccount

Source§

async fn parents( &self, _: &impl Global, ) -> Result<impl IntoIterator<Item = JsonEntityUid>, Status>

Source§

impl CedarEntity for ServiceAccountToken

Source§

impl CedarEntity for MagicLinkRequest

Source§

impl CedarEntity for UserSession

Source§

impl CedarEntity for UserSessionRequest

Source§

impl CedarEntity for UserSessionToken

Source§

impl CedarEntity for NewUserEmailRequest

Source§

impl CedarEntity for User

Source§

async fn parents( &self, global: &impl Global, ) -> Result<impl IntoIterator<Item = JsonEntityUid>, Status>

Source§

impl CedarEntity for UserEmail

Source§

impl CedarEntity for UserGoogleAccount

Implementors§