Expand description
Server-side authentication and authorization implementations.
This module provides comprehensive server-side capabilities including:
- OAuth 2.0 Authorization Server (RFC 6749, RFC 8628) ✅ Working
- OAuth 2.1 Authorization Framework ✅ Working
- OpenID Connect Provider (OIDC 1.0) [Testing needed]
- JWT Token Server
- API Gateway Authentication
- SAML Identity Provider
- WebAuthn Relying Party Server
Re-exports§
pub use core::additional_modules::api_gateway;pub use core::additional_modules::consent;pub use core::additional_modules::device_flow_server;pub use core::additional_modules::introspection;pub use core::additional_modules::jwt_server;pub use core::additional_modules::saml_idp;pub use core::client_registration::ClientRegistrationConfig;pub use core::client_registration::ClientRegistrationManager;pub use core::client_registration::ClientRegistrationRequest;pub use core::client_registration::ClientRegistrationResponse;pub use core::client_registration::RegisteredClient;pub use core::client_registry::ClientRegistry;pub use core::federated_authentication_orchestration::AlternativeIdp;pub use core::federated_authentication_orchestration::AppliedTransformation;pub use core::federated_authentication_orchestration::AttributeMappingConfig;pub use core::federated_authentication_orchestration::AttributeTransformation;pub use core::federated_authentication_orchestration::AuthenticationProtocol;pub use core::federated_authentication_orchestration::CircuitBreakerConfig;pub use core::federated_authentication_orchestration::CircuitBreakerState;pub use core::federated_authentication_orchestration::FederationOrchestrator;pub use core::federated_authentication_orchestration::FederationOrchestratorConfig;pub use core::federated_authentication_orchestration::FederationOrchestratorImpl;pub use core::federated_authentication_orchestration::IdentityProvider;pub use core::federated_authentication_orchestration::IdpCapability;pub use core::federated_authentication_orchestration::IdpHealthMetrics;pub use core::federated_authentication_orchestration::IdpRecommendation;pub use core::federated_authentication_orchestration::IdpRoutingRule;pub use core::federated_authentication_orchestration::IdpSessionInfo;pub use core::federated_authentication_orchestration::OrchestrationMetadata;pub use core::federated_authentication_orchestration::OrchestrationPattern;pub use core::federated_authentication_orchestration::OrchestrationPreferences;pub use core::federated_authentication_orchestration::OrchestrationRequest;pub use core::federated_authentication_orchestration::OrchestrationResponse;pub use core::federated_authentication_orchestration::OrchestrationSessionInfo;pub use core::federated_authentication_orchestration::ProtocolTranslationConfig;pub use core::federated_authentication_orchestration::SelectedIdpInfo;pub use core::federated_authentication_orchestration::SessionFederationConfig;pub use core::federated_authentication_orchestration::SessionProtocol;pub use core::federated_authentication_orchestration::StringOperation;pub use core::federated_authentication_orchestration::TimeConstraint;pub use core::federated_authentication_orchestration::TrustLevel;pub use core::federated_authentication_orchestration::TrustValidationConfig;pub use core::metadata::MetadataProvider;pub use core::stepped_up_auth::AuthenticationLevel;pub use core::stepped_up_auth::AuthenticationMethod;pub use core::stepped_up_auth::LocationInfo;pub use core::stepped_up_auth::StepUpConfig;pub use core::stepped_up_auth::StepUpContext;pub use core::stepped_up_auth::StepUpEvaluationResult;pub use core::stepped_up_auth::StepUpRequest;pub use core::stepped_up_auth::StepUpResponse;pub use core::stepped_up_auth::StepUpRule;pub use core::stepped_up_auth::StepUpStatus;pub use core::stepped_up_auth::StepUpTrigger;pub use core::stepped_up_auth::SteppedUpAuthManager;pub use oauth::oauth2::OAuth2Server;pub use oauth::oauth21::OAuth21Server;pub use oauth::par::PARManager;pub use oauth::rich_authorization_requests::AuthorizationDetail;pub use oauth::rich_authorization_requests::RarAuthorizationDecision;pub use oauth::rich_authorization_requests::RarAuthorizationProcessor;pub use oauth::rich_authorization_requests::RarAuthorizationRequest;pub use oauth::rich_authorization_requests::RarCondition;pub use oauth::rich_authorization_requests::RarConfig;pub use oauth::rich_authorization_requests::RarDecisionType;pub use oauth::rich_authorization_requests::RarDetailDecision;pub use oauth::rich_authorization_requests::RarManager;pub use oauth::rich_authorization_requests::RarPermissionGrant;pub use oauth::rich_authorization_requests::RarResourceAccess;pub use oauth::rich_authorization_requests::RarResourceDiscoveryRequest;pub use oauth::rich_authorization_requests::RarResourceDiscoveryResponse;pub use oauth::rich_authorization_requests::RarRestriction;pub use oauth::rich_authorization_requests::RarValidationResult;pub use oidc::core::OidcProvider;pub use oidc::oidc_advanced_jarm::AdvancedJarmConfig;pub use oidc::oidc_advanced_jarm::AdvancedJarmManager;pub use oidc::oidc_advanced_jarm::AuthorizationResponse;pub use oidc::oidc_advanced_jarm::DeliveryResult;pub use oidc::oidc_advanced_jarm::JarmDeliveryMode;pub use oidc::oidc_advanced_jarm::JarmResponse;pub use oidc::oidc_advanced_jarm::JarmValidationResult;pub use oidc::oidc_backchannel_logout::BackChannelLogoutConfig;pub use oidc::oidc_backchannel_logout::BackChannelLogoutManager;pub use oidc::oidc_backchannel_logout::BackChannelLogoutRequest;pub use oidc::oidc_backchannel_logout::BackChannelLogoutResponse;pub use oidc::oidc_backchannel_logout::LogoutEvents;pub use oidc::oidc_backchannel_logout::LogoutTokenClaims;pub use oidc::oidc_backchannel_logout::NotificationResult;pub use oidc::oidc_backchannel_logout::RpBackChannelConfig;pub use oidc::oidc_enhanced_ciba::AuthenticationContext;pub use oidc::oidc_enhanced_ciba::AuthenticationMode;pub use oidc::oidc_enhanced_ciba::CibaRequestStatus;pub use oidc::oidc_enhanced_ciba::CibaTokenResponse;pub use oidc::oidc_enhanced_ciba::ConsentInfo;pub use oidc::oidc_enhanced_ciba::ConsentStatus;pub use oidc::oidc_enhanced_ciba::DeviceBinding;pub use oidc::oidc_enhanced_ciba::DeviceInfo;pub use oidc::oidc_enhanced_ciba::EnhancedCibaAuthRequest;pub use oidc::oidc_enhanced_ciba::EnhancedCibaAuthResponse;pub use oidc::oidc_enhanced_ciba::EnhancedCibaConfig;pub use oidc::oidc_enhanced_ciba::EnhancedCibaManager;pub use oidc::oidc_enhanced_ciba::GeoLocation;pub use oidc::oidc_enhanced_ciba::UserIdentifierHint;pub use oidc::oidc_error_extensions::AuthenticationRequirements;pub use oidc::oidc_error_extensions::OidcErrorCode;pub use oidc::oidc_error_extensions::OidcErrorManager;pub use oidc::oidc_error_extensions::OidcErrorResponse;pub use oidc::oidc_extensions::OidcExtensionsManager;pub use oidc::oidc_frontchannel_logout::FailedNotification;pub use oidc::oidc_frontchannel_logout::FrontChannelLogoutConfig;pub use oidc::oidc_frontchannel_logout::FrontChannelLogoutManager;pub use oidc::oidc_frontchannel_logout::FrontChannelLogoutRequest;pub use oidc::oidc_frontchannel_logout::FrontChannelLogoutResponse;pub use oidc::oidc_frontchannel_logout::RpFrontChannelConfig;pub use oidc::oidc_response_modes::FormPostResponseMode;pub use oidc::oidc_response_modes::JarmResponseMode;pub use oidc::oidc_response_modes::MultipleResponseTypesManager;pub use oidc::oidc_response_modes::ResponseMode;pub use oidc::oidc_session_management::OidcSession;pub use oidc::oidc_session_management::SessionCheckRequest;pub use oidc::oidc_session_management::SessionCheckResponse;pub use oidc::oidc_session_management::SessionManager;pub use oidc::oidc_session_management::SessionState;pub use oidc::oidc_user_registration::RegistrationData;pub use oidc::oidc_user_registration::RegistrationManager;pub use oidc::oidc_user_registration::RegistrationRequest;pub use oidc::oidc_user_registration::RegistrationResponse;pub use jwt::jwt_access_tokens::JwtAccessTokenBuilder;pub use jwt::jwt_access_tokens::JwtAccessTokenValidator;pub use jwt::jwt_best_practices::CryptoStrength;pub use jwt::jwt_best_practices::JwtBestPracticesConfig;pub use jwt::jwt_best_practices::JwtBestPracticesValidator;pub use jwt::jwt_best_practices::SecureJwtClaims;pub use jwt::jwt_best_practices::SecurityLevel;pub use jwt::jwt_introspection::BasicIntrospectionResponse;pub use jwt::jwt_introspection::JwtIntrospectionClaims;pub use jwt::jwt_introspection::JwtIntrospectionConfig;pub use jwt::jwt_introspection::JwtIntrospectionManager;pub use jwt::private_key_jwt::PrivateKeyJwtManager;pub use token_exchange::advanced_token_exchange::AdvancedTokenExchangeConfig;pub use token_exchange::advanced_token_exchange::AdvancedTokenExchangeManager;pub use token_exchange::core::TokenExchangeManager;pub use token_exchange::token_exchange_common::ExchangeRequirements;pub use token_exchange::token_exchange_common::ServiceComplexityLevel;pub use token_exchange::token_exchange_common::TokenExchangeCapabilities;pub use token_exchange::token_exchange_common::TokenExchangeFactory;pub use token_exchange::token_exchange_common::TokenExchangeService;pub use token_exchange::token_exchange_common::TokenExchangeUseCase;pub use token_exchange::token_exchange_common::TokenValidationResult;pub use token_exchange::token_exchange_common::ValidationUtils;pub use token_exchange::token_exchange_factory::PerformanceCharacteristics;pub use token_exchange::token_exchange_factory::SetupGuide;pub use token_exchange::token_exchange_factory::TokenExchangeManagerFactory;pub use token_exchange::token_introspection::TokenIntrospectionHandler;pub use token_exchange::token_introspection::TokenIntrospectionService;pub use security::caep_continuous_access::CaepAccessDecision;pub use security::caep_continuous_access::CaepConfig;pub use security::caep_continuous_access::CaepDeviceInfo;pub use security::caep_continuous_access::CaepEvaluationResult;pub use security::caep_continuous_access::CaepEvaluationRule;pub use security::caep_continuous_access::CaepEvent;pub use security::caep_continuous_access::CaepEventHandler;pub use security::caep_continuous_access::CaepEventSeverity;pub use security::caep_continuous_access::CaepEventSource;pub use security::caep_continuous_access::CaepEventType;pub use security::caep_continuous_access::CaepLocationInfo;pub use security::caep_continuous_access::CaepManager;pub use security::caep_continuous_access::CaepRuleAction;pub use security::caep_continuous_access::CaepRuleCondition;pub use security::caep_continuous_access::CaepSessionState;pub use security::dpop::DpopManager;pub use security::fapi::FapiManager;pub use security::mtls::MutualTlsManager;pub use security::x509_signing::X509CertificateManager;
Modules§
- core
- Core Server Implementation Module
- jwt
- JWT (JSON Web Token) Implementation Module
- oauth
- OAuth 2.0/2.1 Implementation Module
- oidc
- OpenID Connect (OIDC) Implementation Module
- security
- Comprehensive security implementation module for enterprise-grade authentication.
- token_
exchange - Token Exchange Implementation Module
Structs§
- Auth
Request - Generic authentication request
- Auth
Response - Generic authentication response
- Provider
Metadata - Provider metadata
- Validation
Result - Validation result
- Working
Server Config - Minimal server configuration for working components
Enums§
- Client
Type - Client type for minimal functionality
Traits§
- Authentication
Provider - Trait for server-side authentication providers