pub struct UserTokenClaims {Show 17 fields
pub sub: AuthorId,
pub exp: usize,
pub aud: String,
pub scope: Scopes,
pub fhir_user: Option<FHIRUrl>,
pub patient: Option<String>,
pub encounter: Option<String>,
pub client_id: Option<String>,
pub tenant: TenantId,
pub subscription_tier: SubscriptionTier,
pub project: Option<ProjectId>,
pub user_role: UserRole,
pub user_id: AuthorId,
pub resource_type: AuthorKind,
pub access_policy_version_ids: Vec<VersionId>,
pub membership: Option<String>,
pub fhir_version: SupportedFHIRVersions,
}Fields§
§sub: AuthorId§exp: usize§aud: String§scope: Scopes§fhir_user: Option<FHIRUrl>Smart on fhir claims.
patient: Option<String>The Patient (an id in the token’s project) that patient/ scopes are
bound to. Issued only when the user is that patient.
encounter: Option<String>The Encounter of the SMART EHR launch the token was issued for, when the token response returned one.
client_id: Option<String>The client the token was issued to (RFC 9068 §2.2). Tokens issued before the claim existed, and the server’s own system context, have none.
tenant: TenantId§subscription_tier: SubscriptionTier§project: Option<ProjectId>§user_role: UserRole§user_id: AuthorId§resource_type: AuthorKind§access_policy_version_ids: Vec<VersionId>§membership: Option<String>§fhir_version: SupportedFHIRVersionsThe FHIR version of the project this token was issued for, so a request does not have to look the project up to know it. Required: a token without it is from before the claim existed, and is rejected rather than guessed at.
Trait Implementations§
Source§impl Clone for UserTokenClaims
impl Clone for UserTokenClaims
Source§impl Debug for UserTokenClaims
impl Debug for UserTokenClaims
Source§impl<'de> Deserialize<'de> for UserTokenClaims
impl<'de> Deserialize<'de> for UserTokenClaims
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for UserTokenClaims
impl RefUnwindSafe for UserTokenClaims
impl Send for UserTokenClaims
impl Sync for UserTokenClaims
impl Unpin for UserTokenClaims
impl UnsafeUnpin for UserTokenClaims
impl UnwindSafe for UserTokenClaims
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
impl<T> ErasedDestructor for Twhere
T: 'static,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more