Method: projects.accounts.update

透過設定特定欄位或套用動作代碼,更新指定使用者的帳戶相關資訊。我們支援管理員和使用者提出的要求。

HTTP 要求

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

這個網址使用 gRPC 轉碼語法。

路徑參數

參數
targetProjectId

string

帳戶所屬專案的專案 ID。如要指定這個欄位,您必須具備 Google OAuth 2.0 憑證,並擁有適當的權限。來自使用者的請求應改為傳遞 Identity Platform ID 權杖。

授權需要指定資源 targetProjectId 的下列 IAM 權限:

  • firebaseauth.users.update

要求主體

要求主體包含下列結構的資料:

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,
  "tenantId": 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

取消連結使用者帳戶的 ID 提供者。

lastLoginAt

string (int64 format)

帳戶上次登入的時間戳記,以毫秒為單位。

createdAt

string (int64 format)

帳戶建立時間的時間戳記 (以毫秒為單位)。

phoneNumber

string

要在帳戶屬性中更新的電話號碼。

customAttributes

string

以 JSON 格式儲存的 Identity Platform ID 權杖中自訂屬性。如要指定這個欄位,您必須具備具備適當權限的 Google OAuth 2.0 憑證。

tenantId

string

帳戶所屬 Identity Platform 租戶的租戶 ID。使用者端的要求應傳遞 Identity Platform ID 權杖,而非設定此欄位。

mfa

object (MfaInfo)

在使用者帳戶中設定的多重驗證相關資訊。這項操作會覆寫帳戶中先前任何與多重驗證相關的資訊。如要指定這個欄位,您必須具備具備適當權限的 Google OAuth 2.0 憑證。

回應主體

如果成功,回應主體會包含 SetAccountInfoResponse 的執行個體。

授權範圍

需要下列其中一種 OAuth 範圍:

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

詳情請參閱 Authentication Overview