Expand description
§Cedarling
The Cedarling is a performant local authorization service that runs the Rust Cedar Engine. Cedar policies and schema are loaded at startup from a locally cached “Policy Store”. In simple terms, the Cedarling returns the answer: should the application allow this action on this resource given these JWT tokens. “Fit for purpose” policies help developers build a better user experience. For example, why display form fields that a user is not authorized to see? The Cedarling is a more productive and flexible way to handle authorization.
Modules§
- authorization_
config - Authorization config module
- jwt_
config - JWT config module
- lock_
config - Lock config module
- log_
config - Log config module
- policy_
store_ config - Policy store config module
- raw_
config - Raw config module
Structs§
- Authorization
Config - Configuration to specify authorization workflow.
- Authorize
Multi Issuer Request - Multi-issuer authorization request
- Authorize
Result - Result of authorization and evaluation cedar policy based on the policy store and an optional principal from the request.
- Batch
Authorize Multi Issuer Request - Batch multi-issuer authorization request.
- Batch
Authorize Response - Response wrapper for batch authorization calls.
- Batch
Authorize Unsigned Request - Batch unsigned authorization request.
- Batch
Item - A single item in a batch authorization request.
- Bootstrap
Config - Bootstrap configuration
properties for configuration
Cedarlingapplication. link to the documentation. - Bootstrap
Config Raw - Struct that represent mapping mapping
Bootstrap propertiesto be JSON and YAML compatible from link - Cedar
Entity Mapping - Cedar entity mapping information
- Cedar
Value Mapper - Mapper for bidirectional JSON ↔ Cedar value conversion.
- Cedarling
- The instance of the Cedarling application. It is safe to share between threads.
- Data
Entry - A data entry in the
DataStorewith value and metadata. - Data
Store Config - Configuration for the
DataStorecomponent. - Data
Store Stats - Statistics about the
DataStore. - Data
Validator - Validator for JSON data against Cedar type constraints.
- Entity
Data - Cedar policy entity data
fields represent
EntityUid - Http
Client Config - Configuration for [
HttpClient] — controls retry behavior and per-request timeout. - JwtConfig
- The set of Bootstrap properties related to JWT validation.
- Lock
Service Config - Lock service config
- Lock
Service Config Raw - Raw lock service config
- LogConfig
- A set of properties used to configure logging in the
Cedarlingapplication. - Memory
LogConfig - Configuration for memory log.
- Multi
Issuer Authorize Result - Result of multi-issuer authorization This result structure contains a single Cedar policy evaluation response
- Policy
Id - Identifier of a Cedar policy, re-exported from
cedar_policyso callers can pass the policy IDs fromresponse.diagnostics().reason()to the annotation lookup methods without depending oncedar_policydirectly. Unique ids assigned to policies and templates. - Policy
Metadata - Metadata about a single Cedar policy.
- Policy
Store Config PolicyStoreConfig- Configuration for the policy store.- Policy
Store Config Raw - Raw policy store config
- Request
Unsigned - Authorization request data with an optional principal.
- Token
Input - Token input for multi-issuer authorization
- Validation
Config - Configuration for validation constraints.
- Validation
Result - Result of validation with optional collected errors.
Enums§
- Authorize
Error - Error type for Authorization Service
- Batch
Item Error - Per-item build failure surfaced inside a batch authorize response at
results[item_index] = Err(_). Serializable +Clone-able so bindings can round-trip it through JSON / FFI; thevarianttag is the wire discriminant. - Bootstrap
Config Loading Error - Represents errors that may occur while loading a
BootstrapConfigfrom a file. - Cedar
Type - Represents the type of a Cedar value based on JSON structure.
- Config
Validation Error - Error returned when
DataStoreConfigvalidation fails. - Data
Error - Errors that can occur during data store operations.
- Extension
Value - Represents a detected extension type with its parsed value.
- Feature
Toggle - Enum varians that represent if feature is enabled or disabled
- Init
Cedarling Error - Errors that can occur during initialization Cedarling.
- Lock
Transport - Transport protocol for Lock Server communication
- LogLevel
- Log levels Fatal level is the highest, trace is lowest
- LogType
Config - Log type configuration.
CEDARLING_LOG_TYPEin bootstrap properties documentation. Current type represent this value. - Logger
Type - Type of logger
- Policy
Effect - The effect of a Cedar policy: either
PermitorForbid. - Policy
Store Source PolicyStoreSourcerepresents the source from which policies will be retrieved.- Validation
Error - Errors that can occur during validation.
- Value
Mapping Error - Errors that can occur during value mapping operations.
Traits§
- DataApi
- Trait defining the public API for data store operations.
- LogStorage
- Log Storage interface for getting log entries from the storage
- Trusted
Issuer Loading Info - Provides information about the loading status of trusted issuers.