Skip to main content

Crate camel_auth

Crate camel_auth 

Source
Expand description

Authentication and authorization primitives for rust-camel.

Provider-neutral OIDC auth service. Configurable claim mapping via ClaimsMapper enables any OIDC-compliant provider. Provider-specific presets live in their respective component crates (e.g. camel-component-keycloak).

Core types (SecurityPolicy, AuthorizationDecision, Principal) live in camel-api so camel-core and camel-dsl can reference them without depending on this crate.

Re-exports§

pub use bearer::extract_bearer_token;
pub use bearer_token_layer::BearerTokenLayer;
pub use bearer_token_layer::BearerTokenService;
pub use built_in::RolePolicy;
pub use built_in::ScopePolicy;
pub use claims::ClaimPaths;
pub use claims::ClaimsMapper;
pub use claims::JsonPointerClaimsMapper;
pub use credential_source::CredentialSource;
pub use credential_source::extract_token_multi;
pub use credential_source::redact_query_params;
pub use introspection::CachingTokenIntrospector;
pub use introspection::IntrospectionCacheOptions;
pub use introspection::IntrospectionResult;
pub use introspection::TokenIntrospector;
pub use introspection_auth::IntrospectionAuthenticator;
pub use jwks::Jwk;
pub use jwks::JwksProvider;
pub use jwks::RemoteJwksProvider;
pub use jwks::validate_https_public_uri;
pub use jwt::JwtValidator;
pub use jwt::LocalJwtValidator;
pub use oauth2::ClientCredentialsProvider;
pub use oauth2::TokenProvider;
pub use registry::PermissionEvaluatorRegistry;
pub use registry::SecurityPolicyRegistry;
pub use token_authenticator::TokenAuthenticator;
pub use types::AuthError;
pub use permission::PermissionContextConfig;
pub use permission::PermissionDecision;
pub use permission::PermissionEvaluator;
pub use permission::PermissionRequest;
pub use permission::PermissionValueSource;
pub use permission_cache::CachingPermissionEvaluator;
pub use permission_cache::PermissionCacheOptions;
pub use permission_policy::PermissionPolicy;
pub use native_auth::ApiKeyAuthenticator;
pub use native_auth::NativeCredential;
pub use native_auth::NativeCredentialSecret;
pub use native_auth::StaticTokenAuthenticator;
pub use native_client_store::M2mClient;
pub use native_client_store::M2mClientSecret;
pub use native_client_store::M2mClientStore;
pub use native_issuer::IssuerError;
pub use native_issuer::NativeSigningKey;
pub use native_issuer::NativeTokenIssuer;
pub use native_issuer::TokenResponse;
pub use native_jwks::NativeJwksProvider;

Modules§

bearer
bearer_token_layer
built_in
claims
credential_source
introspection
introspection_auth
jwks
jwt
native_auth
native_client_store
native_issuer
native_jwks
oauth2
permission
Permission evaluation contracts for authorization decisions.
permission_cache
Caching wrapper for PermissionEvaluator with separate positive/negative TTLs.
permission_policy
Bridge between SecurityPolicy (Exchange-level) and PermissionEvaluator (permission-level).
registry
token_authenticator
types

Structs§

Principal
Represents an authenticated principal extracted from token claims.
SecurityPolicyConfig

Enums§

AuthorizationDecision

Constants§

PRINCIPAL_KEY
Exchange property key for the full serialized principal.

Traits§

SecurityPolicy