Cargo Features
[dependencies]
auth-framework = { version = "0.5.0-rc1", default-features = false, features = ["enhanced-device-flow", "mysql-storage", "openid-connect", "postgres-storage", "redis-storage", "testing", "distributed-rate-limiting", "enhanced-crypto", "fips-compliance", "enhanced-rbac", "actix-integration", "admin-binary", "api-server", "axum-integration", "cli", "docker-tests", "ldap-auth", "otp-auth", "passkeys", "saml", "tui", "unicode-support", "warp-integration", "web-gui", "config-hot-reload", "enhanced-observability", "event-sourcing", "performance-optimization", "tiered-storage", "smskit", "smskit-web-axum", "opentelemetry_sdk"] }
- default = enhanced-rbac, postgres-storage
-
PostgreSQL recommended
- enhanced-device-flow = oauth-device-flows
-
Affects
enhanced_device::EnhancedDeviceFlowMethod,enhanced_device::EnhancedDeviceFlowMethod,enhanced_device::EnhancedDeviceFlowMethod… - mysql-storage = sqlx
-
Affects
migrations::MySqlMigrationManager,storage::mysql,mysql::MySqlStorage,storage::mysql,storage::mysql,migrations::MySqlMigrationManager,storage::mysql,mysql::MySqlStorage,migrations::MySqlMigrationManager,storage::mysql,mysql::MySqlStorage… - openid-connect = openidconnect
- postgres-storage default tiered-storage? = sqlx, tokio-postgres
-
Affects
storage::postgres,storage::postgres,storage::postgres,storage::postgres,storage::postgres,migrations::MigrationManager,migrations::Migration,migrations::MigrationError,migrations::MigrationCli,migrations::MigrationManager,migrations::Migration,migrations::MigrationError,migrations::MigrationCli,migrations::MigrationManager,migrations::Migration,migrations::MigrationError,migrations::MigrationCli… - redis-storage = redis
-
Affects
distributed_rate_limiting::RedisRateLimiter,core::RedisStorage,distributed_rate_limiting::RedisRateLimiter,core::RedisStorage,distributed_rate_limiting::RedisRateLimiter,core::RedisStorage… - testing
- distributed-rate-limiting = redis
-
Enhanced cryptography features
- enhanced-crypto = chacha20poly1305, ed25519-dalek, x25519-dalek
- fips-compliance = aws-lc-rs
- enhanced-rbac default = api-server, role-system
-
Enterprise RBAC with role-system v1.0
Affects
api::ApiState.authorization_service,authorization_enhanced::service,authorization_enhanced::middleware,authorization_enhanced::context,lib::sdks,sdks::javascript,sdks::python,api::ApiState.authorization_service,api::ApiState.authorization_service,api::ApiState.authorization_service,authorization_enhanced::service,authorization_enhanced::middleware,authorization_enhanced::context,lib::sdks,sdks::javascript,sdks::python,api::ApiState.authorization_service,authorization_enhanced::service,authorization_enhanced::middleware,authorization_enhanced::context… - actix-integration = actix-web, futures-util
-
Additional features referenced in code
Affects
actix_web::AuthMiddleware,lib::integrations.actix_web,actix_web::AuthMiddleware,lib::integrations.actix_web,actix_web::AuthMiddleware,auth-framework::integrations.actix_web… - admin-binary = cli, tui, web-gui
-
Affects
lib::admin,lib::admin,auth-framework::admin…Required by the binary
- api-server enhanced-rbac = axum, tower, tower-http
-
Affects
lib::api,lib::api,auth-framework::api…Required by the test_oauth2 binary
- axum-integration smskit-web-axum? = axum, serde_urlencoded, tower, tower-http
-
Affects
lib::integrations.axum,lib::integrations.axum,auth-framework::integrations.axum… - cli admin-binary? = clap, colored, console, dialoguer, indicatif, rpassword, tokio-postgres
-
Affects
cli::run_cli,admin::cli,cli::Cli,cli::Commands,cli::DbCommands,cli::UserCommands,cli::RoleCommands,cli::SystemCommands,cli::SecurityCommands,cli::CliHandler,cli::run_cli,cli::run_cli,admin::cli,cli::Cli,cli::Commands,cli::DbCommands,cli::UserCommands,cli::RoleCommands,admin::cli,migrations::MigrationManager… - docker-tests = testcontainers
-
Affects
test_infrastructure::containers,test_infrastructure::containers,test_infrastructure::containers… - ldap-auth = ldap3
-
Affects
methods::LdapAuthMethod,methods::LdapAuthMethod,methods::LdapAuthMethod… - otp-auth = otpauth
- passkeys = coset, passkey, passkey-client
- saml = quick-xml
-
Affects
methods::saml,methods::saml,methods::saml… - tui admin-binary? = colored, console, crossterm, indicatif, ratatui, tui-input
-
Affects
admin::tui,tui::Tab,tui::TuiApp,tui::User,tui::SecurityEvent,tui::LogEntry,tui::run_tui,admin::tui,tui::Tab,tui::TuiApp,tui::User,tui::SecurityEvent,tui::LogEntry,tui::run_tui,admin::tui,tui::Tab,tui::TuiApp,tui::User,tui::SecurityEvent… - unicode-support = unicode-normalization
- warp-integration = warp
-
Affects
lib::integrations.warp,lib::integrations.warp,auth-framework::integrations.warp… - web-gui admin-binary? = askama, axum, serde_urlencoded, tower, tower-http
-
Affects
admin::web,web::run_web_gui,web::ConfigItem,web::User,web::SecurityEvent,web::ServerStatus,web::PerformanceMetrics,web::LogEntry,admin::web,web::run_web_gui,web::ConfigItem,web::User,web::SecurityEvent,web::ServerStatus,web::PerformanceMetrics,web::LogEntry,admin::web,web::run_web_gui,web::ConfigItem… - config-hot-reload = notify
-
Enhanced performance and observability
- enhanced-observability = futures, opentelemetry, opentelemetry-jaeger, opentelemetry-otlp, opentelemetry-prometheus, tokio-stream, tracing-opentelemetry
-
Affects
lib::observability,lib::observability,auth-framework::observability… - event-sourcing = futures, notify, tokio-stream
-
Affects
lib::architecture,lib::architecture,auth-framework::architecture… - performance-optimization = bumpalo, metrics, metrics-prometheus, object-pool, prometheus
-
Affects
storage::unified,storage::unified,storage::unified,storage::unified,storage::unified… - tiered-storage = postgres-storage, redis
- smskit smskit-web-axum? = sms-aws-sns, sms-core, sms-plivo, sms-twilio, sms-web-generic
-
SMSKit integration (next-generation SMS support)
- smskit-web-axum = axum-integration, sms-web-axum, smskit
Features from optional dependencies
In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.
- role-system enhanced-rbac
-
Enables role-system
Enterprise RBAC system
Affects
lib::authorization_enhanced,lib::authorization_enhanced,auth-framework::authorization_enhanced,api::rbac_endpoints,api::rbac_endpoints,api::rbac_endpoints,api::rbac_endpoints,api::rbac_endpoints… - redis distributed-rate-limiting? redis-storage? tiered-storage?
-
Enables redis ^0.32.7
Optional Redis support
Affects
storage::redis,storage::redis,storage::redis,storage::redis,storage::redis… - metrics performance-optimization?
-
Enables metrics
Performance and Observability enhancements
- metrics-prometheus performance-optimization?
- opentelemetry enhanced-observability?
- opentelemetry-jaeger enhanced-observability?
- opentelemetry-otlp enhanced-observability?
- opentelemetry-prometheus enhanced-observability?
-
Enables opentelemetry-prometheus ^0.29
- opentelemetry_sdk implicit feature
-
Enables opentelemetry_sdk
opentelemetry_sdk:
The SDK for the OpenTelemetry metrics collection and distributed tracing framework
- prometheus performance-optimization?
-
Affects
observability::PrometheusMetrics,observability::PrometheusMetrics,observability::PrometheusMetrics… - tracing-opentelemetry enhanced-observability?
- futures enhanced-observability? event-sourcing?
-
Enables futures
Event sourcing and streaming
- tokio-stream enhanced-observability? event-sourcing?
- notify config-hot-reload? event-sourcing?
-
Enables notify
Configuration hot-reload
- bumpalo performance-optimization?
-
Enables bumpalo
Memory pool optimization
- object-pool performance-optimization?
- oauth-device-flows enhanced-device-flow?
-
Enables oauth-device-flows
OAuth device flows (optional enhanced device flow support)
- openidconnect openid-connect?
-
Enables openidconnect
OpenID Connect support (optional) - Updated to fix RSA dependency
- ldap3 ldap-auth?
-
Enables ldap3
Missing dependencies for 100% completion
- otpauth otp-auth?
-
Enables otpauth
Updated to latest available
- unicode-normalization unicode-support?
- clap cli?
-
Enables clap
CLI dependencies
- rpassword cli?
- crossterm tui?
-
Enables crossterm
TUI dependencies
Updated to maintain compatibility - ratatui tui?
-
Enables ratatui
Updated to latest version
- tui-input tui?
- colored cli? tui?
-
Enables colored
Additional utility dependencies
- console cli? tui?
- dialoguer cli?
- indicatif cli? tui?
- futures-util actix-integration?
-
Enables futures-util
Web framework dependencies
- askama web-gui?
-
Enables askama ^0.14.0
Template engine for web GUI
- quick-xml saml?
-
Enables quick-xml
Note: askama_axum was removed in askama 0.13+ - axum integration is now built into askama
XML processing for SAML - coset passkeys?
-
Enables coset ^0.3.8
Passkey/WebAuthn dependencies
Downgraded to match passkey dependencies - passkey passkeys?
-
Enables passkey
Updated to fix idna dependency
- passkey-client passkeys?
-
Enables passkey-client
Updated to fix idna dependency
- actix-web actix-integration?
-
Enables actix-web
Web framework integrations (optional)
- axum api-server? axum-integration? web-gui?
- serde_urlencoded axum-integration? web-gui?
- tower api-server? axum-integration? web-gui?
- tower-http api-server? axum-integration? web-gui?
- warp warp-integration?
- sqlx mysql-storage? postgres-storage
-
Enables sqlx
Database integrations (optional) - Updated sqlx to fix RSA vulnerability
- tokio-postgres cli? postgres-storage
- testcontainers docker-tests?
-
Enables testcontainers ^0.25.0
- sms-aws-sns smskit?
- sms-core smskit?
- sms-plivo smskit?
- sms-twilio smskit?
- sms-web-axum smskit-web-axum?
- sms-web-generic smskit?
- aws-lc-rs fips-compliance?
- chacha20poly1305 enhanced-crypto?
- ed25519-dalek enhanced-crypto?
- x25519-dalek enhanced-crypto?