排解變更電子郵件地址後出現重複帳戶的問題

本指南可協助您排解及解決 Looker 在現有使用者主要電子郵件地址於身分識別提供者 (IdP) (例如 Azure Active Directory (Azure AD)) 中變更時,建立重複使用者帳戶的問題。

開始排解問題前,請先判斷執行個體是 Looker (原始版本) 執行個體 (代管或自行代管),還是 Looker (Google Cloud Core) 執行個體,因為這兩者支援不同的使用者合併選項:

  • Looker (原始):支援本機電子郵件地址和密碼憑證。如果專屬 IdP 識別碼變更,您可以選擇這個選項,透過比對電子郵件地址合併使用者。
  • Looker (Google Cloud Core):不支援本機電子郵件和密碼登入,也不支援電子郵件憑證。因此,您無法在 Looker (Google Cloud Core) 中使用電子郵件和密碼憑證選項合併使用者。

Looker (原始版本) 執行個體

請使用下列決策樹,排解 Looker (原始) 執行個體上的電子郵件變更問題:

以下各節將進一步說明樹狀結構中的情境。

設定識別資訊提供者設定

如要避免使用者變更電子郵件地址時產生重複帳戶,您可以設定 IdP 來聲明不可變更的專屬 ID:

  1. 在 IdP (例如 Azure AD) 中,找出專屬 ID 對應設定 (例如 SAML 的「專屬使用者 ID (名稱 ID)」屬性,或是 OIDC 的 sub 聲明)。
  2. 請將這個屬性對應至不可變更的使用者屬性 (例如員工 ID 或資料庫 UUID),而非可變更的電子郵件地址。
  3. 儲存設定。由於電子郵件地址變更時,唯一 ID 仍維持不變,因此 Looker 會辨識現有使用者,並在使用者下次登入時自動更新電子郵件地址,不會建立重複帳戶。

避免重複

如果您在 Looker (舊版) 中使用可變更的電子郵件地址做為專屬 ID,且無法將其變更為不可變更的屬性,請按照下列步驟設定 Looker,根據電子郵件地址比對結果合併使用者:

  1. 在 Looker 管理員面板中,依序前往「管理」>「SAML」或「管理」>「OpenID Connect」
  2. 前往「Merge Users Using」(合併使用者) 選項,然後選取「Looker Email/Password」(Looker 電子郵件/密碼) 的方塊。
  3. 使用者以新電子郵件地址登入前,您必須在現有使用者帳戶中建立與新電子郵件地址相符的 Looker 電子郵件憑證。使用 Looker API 端點 create_user_credentials_emailPOST /api/4.0/users/<var>USER_ID</var>/credentials_email 在要求主體中指定新的電子郵件地址。
  4. 請使用者登入。Looker 會比對 IdP 宣告的新電子郵件地址與預先建立的電子郵件憑證,然後合併帳戶。

清理重複的聯絡人

如果電子郵件地址已變更,且存在重複的使用者帳戶,請按照下列步驟清理及合併帳戶:

  1. 在 Looker 管理員面板中,依序前往「管理」>「使用者」,然後找出使用者的原始帳戶和重複帳戶。
  2. 判斷重複帳戶是否有需要保留的使用者原創內容或排程。如果是,請按照「遷移重複內容」一節中的步驟操作。
  3. 在 Looker SAML 或 OIDC 設定中,確認「Merge Users Using」已啟用「Looker Email/Password」
  4. 刪除重複的使用者帳戶。
  5. 在 Looker API 中,使用新電子郵件地址在原始使用者帳戶中建立 Looker 電子郵件憑證: POST /api/4.0/users/<var>USER_ID</var>/credentials_email
  6. 請使用者透過 SAML 或 OIDC 登入。Looker 會將登入憑證併入原始使用者帳戶。

遷移重複的內容

如果重複帳戶包含使用者原創內容、個人資料夾項目、Look 圖表、資訊主頁或排程,您可以在刪除重複帳戶前,將這些內容遷移至原始帳戶:

  1. 使用 Looker API 擷取與重複使用者 ID 相關聯的內容和排程清單。
  2. 呼叫更新端點 (例如 update_dashboardupdate_lookupdate_schedule_plan),將這些資源的擁有者變更為原始使用者 ID。
  3. 或者,您也可以使用 Looker 開放原始碼管理員 PowerPack 等工具,大量遷移使用者內容。
  4. 轉移內容後,請繼續刪除重複的使用者帳戶。

Looker (Google Cloud Core) 執行個體

Looker (Google Cloud Core) 不支援電子郵件憑證,也不支援合併電子郵件和密碼。請使用下列決策樹,在 Looker (Google Cloud Core) 中處理電子郵件地址變更:

以下各節將進一步說明樹狀結構中的情境。

遷移前步驟

如果您準備從 Looker (原始版本) 執行個體遷移至 Looker (Google Cloud Core),請務必先按照下列步驟,將使用者轉換為 Core 支援的驗證方法 (例如 Google OAuth):

  1. 在 Looker (原始版本) 執行個體上啟用 Google OAuth。
  2. 在 Google OAuth 設定中啟用「Looker 電子郵件地址/密碼」,並啟用「使用以下項目合併使用者」
  3. 請指示所有使用者在遷移前,透過 Looker (原始版) 執行個體上的 Google OAuth 登入,合併帳戶。
  4. 將資料遷移至 Looker (Google Cloud Core)。

遷移後的步驟

如果遷移至 Looker (Google Cloud Core) 的作業已完成,但仍有重複帳戶,請執行下列任一工作:

  • 如果仍可存取 Looker (原始版本) 執行個體: 請與 Google Cloud 支援團隊聯絡,還原執行個體,在原始執行個體上執行 Google OAuth 合併步驟,然後重新將資料遷移至 Looker (Google Cloud Core)。
  • 如果無法存取 Looker (原始版) 執行個體:您必須使用 Looker API 指令碼,手動將使用者舊帳戶中的使用者原創內容遷移至新帳戶,然後刪除舊帳戶或重複帳戶。

最終檢查和支援

如果仍無法解決重複帳戶問題,請與支援團隊聯絡