Resource

mbauer83.zio_http_authorization.Resource$
object Resource

Resources are the objects to which access is restricted via AuthorizationPolicies. They are identified by a ResourceDescriptor which is generic in its type of ResourceId and TenantId.

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Resource.type

Members list

Type members

Classlikes

case class GenericResourceSelector[I <: ResourceId, T <: TenantId](resourceName: String | Symbol, resourceId: Option[I], tenantId: Option[T]) extends ResourceSelector[I, T]

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait ResourceSelector[I, T]
class Object
trait Matchable
class Any
Show all
case class NumberResourceDescriptor(resourceName: String | Symbol, resourceId: Number, tenantId: Option[Number]) extends ResourceDescriptor[Number, Number]

A ResourceDescriptor for a resources and tenants identified by Numbers

A ResourceDescriptor for a resources and tenants identified by Numbers

Attributes

Supertypes
trait ResourceDescriptor[Number, Number]
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
trait Resource[Descriptor <: ResourceDescriptor[_, _]] extends Product, Serializable

A resource in the context of RBAC authorization

A resource in the context of RBAC authorization

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Describes the type and identity of a resource

Describes the type and identity of a resource

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Known subtypes

A descriptive representation of a selector on a resource

A descriptive representation of a selector on a resource

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
case class StringResourceDescriptor(resourceName: String | Symbol, resourceId: String, tenantId: Option[String]) extends ResourceDescriptor[String, String]

A ResourceDescriptor for a resources and tenants identified by Strings

A ResourceDescriptor for a resources and tenants identified by Strings

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
case class UUIDResourceDescriptor(resourceName: String | Symbol, resourceId: UUID, tenantId: Option[UUID]) extends ResourceDescriptor[UUID, UUID]

A ResourceDescriptor for a resources and tenants identified by java.util.UUIDs

A ResourceDescriptor for a resources and tenants identified by java.util.UUIDs

Attributes

Supertypes
trait ResourceDescriptor[UUID, UUID]
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Types

type ResourceId = UUID | Symbol | String | Number | Product & Serializable

Resources can be identified by a java.util.UUID, scala.Symbol, String, Number, or a scala.Product with a scala.Serializable.

Resources can be identified by a java.util.UUID, scala.Symbol, String, Number, or a scala.Product with a scala.Serializable.

Attributes

See also
type TenantId = Nothing | UUID | Symbol | String | Number | Product & Serializable

Tenants can be identified by scala.Nothing, a java.util.UUID, scala.Symbol, String, Number, or a scala.Product with a scala.Serializable.

Tenants can be identified by scala.Nothing, a java.util.UUID, scala.Symbol, String, Number, or a scala.Product with a scala.Serializable.

Attributes

Extensions

Extensions

extension (descriptor: ResourceDescriptor[_, _])(descriptor: ResourceDescriptor[_, _])
def equals(other: ResourceDescriptor[_, _]): Boolean

Custom equality-checking for ResourceDescriptors.

Custom equality-checking for ResourceDescriptors.

Attributes

extension (selector: ResourceSelector[_, _])(selector: ResourceSelector[_, _])
def matches(resource: Resource[_]): Boolean

true if and only if any non-empty field in the selector is matched in the resource.

true if and only if any non-empty field in the selector is matched in the resource.

Attributes