表示从BaseAuth.verifyIdToken()方法返回的已解码 Firebase ID 令牌的接口。
Firebase ID 令牌是符合 OpenID Connect 规范的 JSON Web 令牌 (JWT)。有关以下特定属性的更多信息,请参阅 [OpenID Connect 规范的 ID 令牌部分](http://openid.net/specs/openid-connect-core-1_0.html#IDToken)。
签名:
export interface DecodedIdToken
特性
财产 | 类型 | 描述 |
---|---|---|
音频 | 细绳 | 该令牌的目标受众。该值是一个等于您的 Firebase 项目 ID 的字符串,它是您的 Firebase 项目的唯一标识符,可以在[您的项目设置](https://console.firebase.google.com/project/_/settings/general /android:com.random.android)。 |
验证时间 | 数字 | 发生最终用户身份验证的时间(自 Unix 纪元以来的秒数)。该值不是在创建此特定 ID 令牌时设置的,而是在用户最初登录到此会话时设置的。在单个会话中,Firebase SDK 每小时刷新一次用户的 ID 令牌。每个 ID 令牌将具有不同的 [ iat ](#iat) 值,但具有相同的auth_time 值。 |
电子邮件_已验证 | 布尔值 | 是否验证 ID 令牌所属用户的电子邮件(前提是该用户有电子邮件)。 |
电子邮件 | 细绳 | ID 令牌所属用户的电子邮件地址(如果有)。 |
经验值 | 数字 | ID 令牌的过期时间(自 Unix 纪元以来的秒数)。也就是说,此 ID 令牌到期并且不应再被视为有效的时间。 Firebase SDK 每小时透明地刷新 ID 令牌,发出最多一小时有效期的新 ID 令牌。 |
火力基地 | { 身份:{ [键:字符串]:任意; }; Sign_in_provider:字符串; Sign_in_second_factor?:字符串;第二个因素标识符?:字符串;租户?:字符串; [键:字符串]:任意; } | 有关登录事件的信息,包括使用的登录提供商以及提供商特定的身份详细信息。此数据由 Firebase 身份验证服务提供,是 ID 令牌中的保留声明。 |
我在 | 数字 | ID 令牌的发布时间(自 Unix 纪元以来的秒数)。也就是说,该 ID 令牌的颁发时间应开始被视为有效。 Firebase SDK 每小时透明地刷新 ID 令牌,并使用新的颁发时间颁发新的 ID 令牌。如果您想获取与 ID 令牌对应的用户会话最初发生的时间,请参阅 [ auth_time ](#auth_time) 属性。 |
国际空间站 | 细绳 | 响应发出者的发出者标识符。该值是格式为https://securetoken.google.com/<PROJECT_ID> 的 URL,其中<PROJECT_ID> 与 [ aud ](#aud) 属性中指定的项目 ID 相同。 |
电话号码 | 细绳 | ID 令牌所属用户的电话号码(如果有)。 |
图片 | 细绳 | ID 令牌所属用户的照片 URL(如果有)。 |
子 | 细绳 | ID token所属用户对应的uid 。为了方便起见,该值被复制到 [ uid ](#uid) 属性。 |
uid | 细绳 | ID token所属用户对应的uid 。该值实际上并不在 JWT 令牌声明本身中。它是为了方便而添加的,并设置为 [ sub ](#sub) 属性的值。 |
解码IdToken.aud
该令牌的目标受众。
该值是一个等于您的 Firebase 项目 ID 的字符串,它是您的 Firebase 项目的唯一标识符,可以在[您的项目设置](https://console.firebase.google.com/project/_/settings/general /android:com.random.android)。
签名:
aud: string;
DecodedIdToken.auth_time
发生最终用户身份验证的时间(自 Unix 纪元以来的秒数)。
该值不是在创建此特定 ID 令牌时设置的,而是在用户最初登录到此会话时设置的。在单个会话中,Firebase SDK 每小时刷新一次用户的 ID 令牌。每个 ID 令牌都会有一个不同的 [ iat
](#iat) 值,但auth_time
值相同。
签名:
auth_time: number;
DecodedIdToken.email_verified
是否验证 ID 令牌所属用户的电子邮件(前提是该用户有电子邮件)。
签名:
email_verified?: boolean;
DecodedIdToken.email
ID 令牌所属用户的电子邮件地址(如果有)。
签名:
email?: string;
解码IdToken.exp
ID 令牌的过期时间(自 Unix 纪元以来的秒数)。也就是说,此 ID 令牌到期并且不应再被视为有效的时间。
Firebase SDK 每小时透明地刷新 ID 令牌,发出最多一小时有效期的新 ID 令牌。
签名:
exp: number;
DecodedIdToken.firebase
有关登录事件的信息,包括使用的登录提供商以及提供商特定的身份详细信息。
此数据由 Firebase 身份验证服务提供,是 ID 令牌中的保留声明。
签名:
firebase: {
identities: {
[key: string]: any;
};
sign_in_provider: string;
sign_in_second_factor?: string;
second_factor_identifier?: string;
tenant?: string;
[key: string]: any;
};
解码IdToken.iat
ID 令牌的发布时间(自 Unix 纪元以来的秒数)。也就是说,该 ID 令牌的颁发时间应开始被视为有效。
Firebase SDK 每小时透明地刷新 ID 令牌,并使用新的颁发时间颁发新的 ID 令牌。如果您想获取 ID 令牌对应的用户会话最初发生的时间,请参阅 [ auth_time
](#auth_time) 属性。
签名:
iat: number;
解码IdToken.iss
响应发出者的发出者标识符。
该值是格式为https://securetoken.google.com/<PROJECT_ID>
的 URL ,其中<PROJECT_ID>
与 [ aud
中指定的项目 ID 相同](#aud) 属性。
签名:
iss: string;
DecodedIdToken.phone_number
ID 令牌所属用户的电话号码(如果有)。
签名:
phone_number?: string;
DecodedIdToken.图片
ID 令牌所属用户的照片 URL(如果有)。
签名:
picture?: string;
解码IdToken.sub
ID token所属用户对应的uid
。
为了方便起见,该值被复制到 [ uid
](#uid) 属性。
签名:
sub: string;
DecodedIdToken.uid
ID token所属用户对应的uid
。
该值实际上并不在 JWT 令牌声明本身中。它是为了方便而添加的,并设置为 [ sub
](#sub) 属性。
签名:
uid: string;