Skip to main content

trellis_auth/
lib.rs

1//! Reusable Trellis auth/session helpers for Rust clients and the CLI.
2
3mod browser_login;
4mod client;
5mod error;
6mod models;
7mod protocol;
8mod session_store;
9mod workload_activation;
10
11pub use browser_login::{build_auth_login_url, generate_session_keypair, start_browser_login};
12pub use client::{
13    connect_admin_client_async, persist_renewed_admin_session, AuthClient,
14};
15pub use workload_activation::{
16    build_workload_activation_payload, build_workload_activation_url, build_workload_wait_proof_input,
17    derive_workload_confirmation_code, derive_workload_identity, derive_workload_qr_mac,
18    encode_workload_activation_payload, parse_workload_activation_payload, sign_workload_wait_request,
19    verify_workload_confirmation_code, wait_for_workload_activation,
20    wait_for_workload_activation_response,
21};
22pub use error::TrellisAuthError;
23pub use models::{
24    AdminLoginOutcome, AdminSessionState, BoundSession, BrowserLoginChallenge,
25    StartBrowserLoginOpts, WaitForWorkloadActivationOpts, WaitForWorkloadActivationResponse,
26    WorkloadActivationActivatedResponse, WorkloadActivationPayload,
27    WorkloadActivationPendingResponse, WorkloadActivationRejectedResponse,
28    WorkloadActivationWaitRequest, WorkloadIdentity,
29};
30pub use protocol::{
31    ApprovalEntryRecord, ApprovalScopeRecord, AuthGetInstalledContractRequest,
32    AuthGetInstalledContractResponse, AuthGetInstalledContractResponseContract,
33    AuthInstallServiceRequest, AuthInstallServiceResponse, AuthUpgradeServiceContractRequest,
34    AuthUpgradeServiceContractResponse, AuthValidateRequestRequest, AuthValidateRequestResponse,
35    AuthenticatedUser, ListApprovalsRequest,
36    RenewBindingTokenResponse, RevokeApprovalRequest, SentinelCredsRecord, ServiceListEntry,
37};
38pub use session_store::{clear_admin_session, load_admin_session, save_admin_session};
39
40#[cfg(test)]
41mod tests;