本指南可協助您排解及解決 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:
- 在 IdP (例如 Azure AD) 中,找出專屬 ID 對應設定 (例如 SAML 的「專屬使用者 ID (名稱 ID)」屬性,或是 OIDC 的
sub聲明)。 - 請將這個屬性對應至不可變更的使用者屬性 (例如員工 ID 或資料庫 UUID),而非可變更的電子郵件地址。
- 儲存設定。由於電子郵件地址變更時,唯一 ID 仍維持不變,因此 Looker 會辨識現有使用者,並在使用者下次登入時自動更新電子郵件地址,不會建立重複帳戶。
避免重複
如果您在 Looker (舊版) 中使用可變更的電子郵件地址做為專屬 ID,且無法將其變更為不可變更的屬性,請按照下列步驟設定 Looker,根據電子郵件地址比對結果合併使用者:
- 在 Looker 管理員面板中,依序前往「管理」>「SAML」或「管理」>「OpenID Connect」。
- 前往「Merge Users Using」(合併使用者) 選項,然後選取「Looker Email/Password」(Looker 電子郵件/密碼) 的方塊。
- 使用者以新電子郵件地址登入前,您必須在現有使用者帳戶中建立與新電子郵件地址相符的 Looker 電子郵件憑證。使用 Looker API 端點
create_user_credentials_email:POST /api/4.0/users/<var>USER_ID</var>/credentials_email在要求主體中指定新的電子郵件地址。 - 請使用者登入。Looker 會比對 IdP 宣告的新電子郵件地址與預先建立的電子郵件憑證,然後合併帳戶。
清理重複的聯絡人
如果電子郵件地址已變更,且存在重複的使用者帳戶,請按照下列步驟清理及合併帳戶:
- 在 Looker 管理員面板中,依序前往「管理」>「使用者」,然後找出使用者的原始帳戶和重複帳戶。
- 判斷重複帳戶是否有需要保留的使用者原創內容或排程。如果是,請按照「遷移重複內容」一節中的步驟操作。
- 在 Looker SAML 或 OIDC 設定中,確認「Merge Users Using」已啟用「Looker Email/Password」。
- 刪除重複的使用者帳戶。
- 在 Looker API 中,使用新電子郵件地址在原始使用者帳戶中建立 Looker 電子郵件憑證:
POST /api/4.0/users/<var>USER_ID</var>/credentials_email - 請使用者透過 SAML 或 OIDC 登入。Looker 會將登入憑證併入原始使用者帳戶。
遷移重複的內容
如果重複帳戶包含使用者原創內容、個人資料夾項目、Look 圖表、資訊主頁或排程,您可以在刪除重複帳戶前,將這些內容遷移至原始帳戶:
- 使用 Looker API 擷取與重複使用者 ID 相關聯的內容和排程清單。
- 呼叫更新端點 (例如
update_dashboard、update_look或update_schedule_plan),將這些資源的擁有者變更為原始使用者 ID。 - 或者,您也可以使用 Looker 開放原始碼管理員 PowerPack 等工具,大量遷移使用者內容。
- 轉移內容後,請繼續刪除重複的使用者帳戶。
Looker (Google Cloud Core) 執行個體
Looker (Google Cloud Core) 不支援電子郵件憑證,也不支援合併電子郵件和密碼。請使用下列決策樹,在 Looker (Google Cloud Core) 中處理電子郵件地址變更:
以下各節將進一步說明樹狀結構中的情境。
遷移前步驟
如果您準備從 Looker (原始版本) 執行個體遷移至 Looker (Google Cloud Core),請務必先按照下列步驟,將使用者轉換為 Core 支援的驗證方法 (例如 Google OAuth):
- 在 Looker (原始版本) 執行個體上啟用 Google OAuth。
- 在 Google OAuth 設定中啟用「Looker 電子郵件地址/密碼」,並啟用「使用以下項目合併使用者」。
- 請指示所有使用者在遷移前,透過 Looker (原始版) 執行個體上的 Google OAuth 登入,合併帳戶。
- 將資料遷移至 Looker (Google Cloud Core)。
遷移後的步驟
如果遷移至 Looker (Google Cloud Core) 的作業已完成,但仍有重複帳戶,請執行下列任一工作:
- 如果仍可存取 Looker (原始版本) 執行個體: 請與 Google Cloud 支援團隊聯絡,還原執行個體,在原始執行個體上執行 Google OAuth 合併步驟,然後重新將資料遷移至 Looker (Google Cloud Core)。
- 如果無法存取 Looker (原始版) 執行個體:您必須使用 Looker API 指令碼,手動將使用者舊帳戶中的使用者原創內容遷移至新帳戶,然後刪除舊帳戶或重複帳戶。
最終檢查和支援
如果仍無法解決重複帳戶問題,請與支援團隊聯絡。