canic_core/dto/auth/
common.rs1use crate::dto::prelude::*;
8
9#[derive(CandidType, Clone, Debug, Deserialize, Eq, PartialEq, Serialize)]
14pub enum DelegationAudience {
15 Canister(Principal),
16 CanicSubnet(Principal),
17 Project(String),
18}
19
20#[derive(CandidType, Clone, Debug, Deserialize, Eq, PartialEq, Serialize)]
25pub struct DelegatedRoleGrant {
26 pub target: CanisterRole,
27 pub scopes: Vec<String>,
28}
29
30#[derive(CandidType, Clone, Copy, Debug, Deserialize, Eq, PartialEq, Serialize)]
35pub struct AuthRequestMetadata {
36 pub request_id: [u8; 32],
37 pub ttl_ns: u64,
38}