pub enum AuthorizationPolicy {
Public,
Optional,
OptionalStrategy(AuthorizationName),
Authenticated,
Strategy(AuthorizationName),
AnyRole(Vec<AuthorizationName>),
AllRoles(Vec<AuthorizationName>),
AnyPermission(Vec<AuthorizationName>),
AllPermissions(Vec<AuthorizationName>),
Named(AuthorizationName),
}Expand description
Declarative authentication and authorization requirement.
Variants§
Public
No authentication is requested and no identity is required.
Optional
Authenticate with any configured strategy when credentials are present.
OptionalStrategy(AuthorizationName)
Authenticate with the named strategy when credentials are present.
Authenticated
Any authenticated identity is allowed.
Strategy(AuthorizationName)
One named authentication strategy must authenticate the request.
AnyRole(Vec<AuthorizationName>)
The identity must have at least one listed role.
AllRoles(Vec<AuthorizationName>)
The identity must have every listed role.
AnyPermission(Vec<AuthorizationName>)
The identity must have at least one listed permission.
AllPermissions(Vec<AuthorizationName>)
The identity must have every listed permission.
Named(AuthorizationName)
An application-defined authorization policy decides access.
Implementations§
Source§impl AuthorizationPolicy
impl AuthorizationPolicy
Sourcepub fn optional_strategy(
name: impl Into<String>,
) -> Result<AuthorizationPolicy, SoapError>
pub fn optional_strategy( name: impl Into<String>, ) -> Result<AuthorizationPolicy, SoapError>
Creates an optional named authentication-strategy policy.
Sourcepub fn strategy(
name: impl Into<String>,
) -> Result<AuthorizationPolicy, SoapError>
pub fn strategy( name: impl Into<String>, ) -> Result<AuthorizationPolicy, SoapError>
Creates a required named authentication-strategy policy.
Sourcepub fn named(name: impl Into<String>) -> Result<AuthorizationPolicy, SoapError>
pub fn named(name: impl Into<String>) -> Result<AuthorizationPolicy, SoapError>
Creates an application-defined authorization-policy requirement.
Sourcepub fn any_role<I, S>(roles: I) -> Result<AuthorizationPolicy, SoapError>
pub fn any_role<I, S>(roles: I) -> Result<AuthorizationPolicy, SoapError>
Creates an any-role policy.
Sourcepub fn all_roles<I, S>(roles: I) -> Result<AuthorizationPolicy, SoapError>
pub fn all_roles<I, S>(roles: I) -> Result<AuthorizationPolicy, SoapError>
Creates an all-roles policy.
Sourcepub fn any_permission<I, S>(
permissions: I,
) -> Result<AuthorizationPolicy, SoapError>
pub fn any_permission<I, S>( permissions: I, ) -> Result<AuthorizationPolicy, SoapError>
Creates an any-permission policy.
Sourcepub fn all_permissions<I, S>(
permissions: I,
) -> Result<AuthorizationPolicy, SoapError>
pub fn all_permissions<I, S>( permissions: I, ) -> Result<AuthorizationPolicy, SoapError>
Creates an all-permissions policy.
Sourcepub const fn requires_identity(&self) -> bool
pub const fn requires_identity(&self) -> bool
Reports whether missing credentials are an authentication failure.
Sourcepub const fn authenticates_when_present(&self) -> bool
pub const fn authenticates_when_present(&self) -> bool
Reports whether supplied credentials should be inspected.
Sourcepub const fn allows_public_response_cache(&self) -> bool
pub const fn allows_public_response_cache(&self) -> bool
Reports whether a shared public response cache is safe by default.
Trait Implementations§
Source§impl Clone for AuthorizationPolicy
impl Clone for AuthorizationPolicy
Source§fn clone(&self) -> AuthorizationPolicy
fn clone(&self) -> AuthorizationPolicy
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more