Method: projects.tenants.accounts.update

通过设置特定字段或应用操作代码,更新指定用户的账号相关信息。支持来自管理员和最终用户的请求。

HTTP 请求

POST https://identitytoolkit.googleapis.com/v1/projects/{targetProjectId}/tenants/{tenantId}/accounts:update

网址采用 gRPC 转码语法。

路径参数

参数
targetProjectId

string

账号所属项目的项目 ID。若要指定此字段,您需要具有适当权限的 Google OAuth 2.0 凭据。来自最终用户的请求应改为传递 Identity Platform ID 令牌。

必须对指定的资源 targetProjectId 具有以下 IAM 权限才能进行授权:

  • firebaseauth.users.update
tenantId

string

账号所属的 Identity Platform 租户的租户 ID。来自最终用户的请求应传递 Identity Platform ID 令牌,而不是设置此字段。

请求正文

请求正文中包含结构如下的数据:

JSON 表示法
{
  "idToken": string,
  "localId": string,
  "displayName": string,
  "email": string,
  "password": string,
  "provider": [
    string
  ],
  "oobCode": string,
  "emailVerified": boolean,
  "upgradeToFederatedLogin": boolean,
  "captchaChallenge": string,
  "captchaResponse": string,
  "validSince": string,
  "disableUser": boolean,
  "instanceId": string,
  "delegatedProjectNumber": string,
  "photoUrl": string,
  "deleteAttribute": [
    enum (UserAttributeName)
  ],
  "returnSecureToken": boolean,
  "deleteProvider": [
    string
  ],
  "lastLoginAt": string,
  "createdAt": string,
  "phoneNumber": string,
  "customAttributes": string,
  "mfa": {
    object (MfaInfo)
  },
  "linkProviderUserInfo": {
    object (ProviderUserInfo)
  }
}
字段
idToken

string

有效的 Identity Platform ID 令牌。在尝试更改与用户相关的信息时,此权限为必需权限。

localId

string

用户的 ID。若要指定此字段,您需要拥有具有适当权限的 Google OAuth 2.0 凭据。对于来自最终用户的请求,应改为传递 ID 令牌。

displayName

string

要更新在账号属性中的用户的新显示名称。显示名称的长度不得超过 256 个字符。

email

string

要更新账号属性中的用户新电子邮件地址。电子邮件的长度应少于 256 个字符,且采用 name@domain.tld 格式。电子邮件地址还应符合 RFC 822 addr-spec 生产规范。如果启用了电子邮件枚举保护,用户必须先验证电子邮件地址,然后才能更改电子邮件地址,但管理员可以更改电子邮件地址。

password

string

要更新在账号属性中的用户新密码。密码长度必须至少为 6 个字符。

provider[]

string

应与该账号相关联的身份提供方。

oobCode

string

要应用于用户账号的非对称加密代码。支持以下非现场验证码类型:* VERIFY_EMAIL * RECOVER_EMAIL * REVERT_SECOND_FACTOR_ADDITION * VERIFY_AND_CHANGE_EMAIL

emailVerified

boolean

用户的电子邮件是否已通过验证。若要指定此字段,您需要拥有具有适当权限的 Google OAuth 2.0 凭据。

upgradeToFederatedLogin

boolean

是否应限制账号只能使用联合登录。

captchaChallenge
(deprecated)

string

captchaResponse

string

来自 reCAPTCHA 验证的响应。当系统检测到可能存在滥用活动时,此操作是必需的。

validSince

string (int64 format)

指定 Identity Platform ID 令牌被视为有效的最短时间戳(以秒为单位)。

disableUser

boolean

如果为 true,则将账号标记为已停用,这意味着用户将无法再登录。

instanceId
(deprecated)

string

delegatedProjectNumber
(deprecated)

string (int64 format)

photoUrl

string

用户的新照片网址,用于更新账号属性中的账号个人资料照片。网址的长度不得超过 2048 个字符。

deleteAttribute[]

enum (UserAttributeName)

returnSecureToken

boolean

是否返回 ID 和刷新令牌。应始终为 true。

deleteProvider[]

string

要解除与用户账号的关联的身份提供方。

lastLoginAt

string (int64 format)

账号上次登录的时间戳(以毫秒为单位)。

createdAt

string (int64 format)

账号创建时的时间戳(以毫秒为单位)。

phoneNumber

string

要更新的账号属性中的电话号码。

customAttributes

string

要存储在 Identity Platform ID 令牌中的 JSON 格式自定义属性。若要指定此字段,您需要拥有具有适当权限的 Google OAuth 2.0 凭据。

mfa

object (MfaInfo)

要在用户账号中设置的多重身份验证相关信息。这将覆盖账号中之前的所有多重身份验证相关信息。若要指定此字段,您需要拥有具有适当权限的 Google OAuth 2.0 凭据。

响应正文

如果成功,则响应正文包含一个 SetAccountInfoResponse 实例。

授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/identitytoolkit
  • https://www.googleapis.com/auth/cloud-platform

如需了解详情,请参阅 Authentication Overview