1pub mod audience;
7pub mod audit;
8pub mod claims;
9pub mod error;
10pub mod keys;
11pub mod metrics;
12pub mod multi_key;
13pub mod program_read;
14pub mod revocation;
15pub mod sealed;
16pub mod solana_gateway;
17pub mod token;
18pub mod verifier;
19
20pub use audience::{AudienceSet, AudienceSetError};
21pub use audit::{
22 auth_failure_event, auth_success_event, rate_limit_event, AuditEvent, AuditSeverity,
23 ChannelAuditLogger, NoOpAuditLogger, SecurityAuditEvent, SecurityAuditLogger,
24};
25pub use claims::{
26 AuthContext, KeyClass, Limits, PolicyClaimsError, SessionClaims, TargetKind,
27 MAX_POLICY_IDENTITY_BYTES, PLAN_ANONYMOUS,
28};
29pub use error::{AuthError, AuthErrorCode, RetryPolicy, VerifyError};
30pub use keys::{KeyLoader, SigningKey, VerifyingKey};
31pub use metrics::{AuthMetrics, AuthMetricsCollector, AuthMetricsSnapshot};
32pub use multi_key::{MultiKeyVerifier, MultiKeyVerifierBuilder, RotationKey};
33pub use program_read::{ProgramReadAuthorization, ProgramReadAuthorizationError};
34pub use revocation::{RevocationChecker, TokenRevocationList};
35pub use sealed::{
36 seal_claims, unseal_claims, ClaimSealKey, ClaimSealKeys, SealError, ACCOUNT_CLAIMS,
37 SEALED_CLAIM,
38};
39pub use solana_gateway::{
40 SolanaGatewayAuthorization, SolanaGatewayAuthorizationError, SolanaGatewayScope,
41};
42pub use token::{TokenError, TokenSigner, TokenVerifier};
43pub use verifier::{AsyncVerifier, SimpleVerifier};
44
45pub const PROGRAM_READ_AUDIENCE: &str = "arete:program-read";
47
48pub const SOLANA_GATEWAY_AUDIENCE: &str = "arete:solana-gateway";
50
51pub const SCOPE_READ: &str = "read";
53
54pub const SCOPE_TRANSACTION_INSPECT: &str = "transaction:inspect";
56
57pub const SCOPE_TRANSACTION_SEND: &str = "transaction:send";
59
60pub const SCOPE_FORK_READ: &str = "fork:read";
65
66pub const DEFAULT_SESSION_TTL_SECONDS: u64 = 300;
68
69pub const DEFAULT_REFRESH_WINDOW_SECONDS: u64 = 60;