issuedAt
The time the token was issued.
let issuedAt: IssuedAtClaim
The time the token was issued.
let issuedAt: IssuedAtClaim
s6JWTKit18AppleIdentityTokenV8issuedAtAA06IssuedF5ClaimVvp
What are these?ZYI3
import JWTKit
🔑 JSON Web Token signing and verification (HMAC, RSA, PSS, ECDSA, EdDSA) using SwiftCrypto.
struct AppleIdentityToken
struct IssuedAtClaim
The “iat” (issued at) claim identifies the time at which the JWT was issued. This claim can be used to determine the age of the JWT. Its value MUST be a number containing a NumericDate value. Use of this claim is OPTIONAL.
init(from decoder: any Decoder) throws
init(issuer: IssuerClaim, audience: AudienceClaim, expires: ExpirationClaim, issuedAt: IssuedAtClaim, subject: SubjectClaim, nonceSupported: BoolClaim? = nil, nonce: String? = nil, email: String? = nil, orgId: String? = nil, emailVerified: BoolClaim? = nil, isPrivateEmail: BoolClaim? = nil, realUserStatus: UserDetectionStatus? = nil)
let audience: AudienceClaim
Your client_id
in your Apple Developer account.
let email: String?
The user’s email address.
let emailVerified: BoolClaim?
A Boolean value that indicates whether the service has verified the email. The value of this claim is always true because the servers only return verified email addresses.
let expires: ExpirationClaim
The expiry time for the token. This value is typically set to 5 minutes.
let isPrivateEmail: BoolClaim?
A Boolean value that indicates whether the email shared by the user is the proxy address. It is absent (nil) if the user is not using a proxy email address.
let issuer: IssuerClaim
The issuer-registered claim key, which has the value https://appleid.apple.com.
let nonce: String?
A string value used to associate a client session and an ID token. This value is used to mitigate replay attacks and is present only if passed during the authorization request.
let nonceSupported: BoolClaim?
A Boolean value that indicates whether the transaction is on a nonce-supported platform. If you sent a nonce in the authorization request but do not see the nonce claim in the ID token, check this claim to determine how to proceed. If this claim returns true you should treat nonce as mandatory and fail the transaction; otherwise, you can proceed treating the nonce as optional.
let orgId: String?
Managed Apple ID organization (see https://developer.apple.com/documentation/rosterapi/integrating_with_roster_api_and_sign_in_with_apple)
let realUserStatus: UserDetectionStatus?
A value that indicates whether the user appears to be a real person.
let subject: SubjectClaim
The unique identifier for the user.
func verify(using _: some JWTAlgorithm) throws
struct UserDetectionStatus
Taken from https://developer.apple.com/documentation/authenticationservices/asuserdetectionstatus With slight modification to make adding new cases non-breaking.