您可以在「管理」選單的「驗證」部分,透過「Google 驗證」頁面在 Looker 端設定 Google OAuth。
功能總覽
如果使用者帳戶已向 Google Google Workspace 註冊,Looker 就能使用 Google OAuth 進行驗證。
- 如果機構使用 Google Workspace,可以驗證擁有 Google 帳戶的 Looker 使用者。
- 使用者透過 Google 帳戶驗證登入 Looker。
- 新的 Google 帳戶會自動取得 Looker 存取權。不必另外邀請使用者加入 Looker。您可以為新使用者設定預設角色,限制他們存取功能和資料。
- 啟用後,Looker 只會透過 Google OAuth 驗證使用者,除非選取「替代登入」選項 (請參閱下節「啟用 Google 驗證時啟用電子郵件登入」)。
- 導覽列會顯示使用者的 Google 頭像,而非標準使用者符號。
- 啟用 Google OAuth 時,Looker 執行個體可以合併現有使用者帳戶與 Google 註冊網域,但僅限電子郵件地址與網域相符的帳戶。所有其他非管理員帳戶都將無法登入。
- 指定網域中的所有使用者都能存取 Looker 執行個體。
- 新 Google 使用者的預設權限為指定模型清單的基本存取權 (也可以選擇不存取任何模型)。帳戶建立完成後,管理員可以更新權限。
- 使用 Google OAuth 驗證的新 Looker 帳戶無法切換為密碼驗證,即使停用 Looker 執行個體的 OAuth 也是如此。
初步要求
使用 Google OAuth 時,必須符合下列條件:
- 機構的 Google Workspace 帳戶。
- 由機構控管,並向 Google Workspace 帳戶註冊的網域。
- 網域中擁有電子郵件地址的使用者,該網域與 Google 帳戶相關聯。
- 每位使用者都必須在 Google Workspace 中擁有受管理的使用者帳戶。如要尋找及遷移任何擁有非受管使用者帳戶的使用者,請使用未受管理使用者轉移工具。
啟用 Google OAuth 驗證
如要啟用 Google OAuth 驗證,管理員必須在 Google 和 Looker 兩端執行步驟,詳情請參閱下列各節。
在 Google 端設定
本節將說明如何啟用 Google OAuth。如需這些步驟的通用說明,請參閱 Google 支援頁面上的設定 OAuth 2.0。您也可以參閱 Google Cloud console 說明文件。
按一下「Select a project」(選取專案) 下拉式選單中的向下箭頭。下拉式選單中可能會顯示現有專案的名稱,但請按一下向下箭頭,系統會帶您前往建立新專案的選項。
在「選取專案」頁面中,按一下「新專案」。
Google 會顯示「New Project」(新專案) 頁面。
在「New Project」(新增專案) 頁面填寫資訊,然後按一下「Create」(建立)。
Google 建立新專案後,會將您帶回 Google Cloud 控制台,並顯示新專案。
在左側選單中,選取「API 和服務」>「憑證」。
在「憑證」頁面中,按一下「建立憑證」按鈕,然後從下拉式選單中選取「OAuth 用戶端 ID」。
Google 會顯示「建立 OAuth 用戶端 ID」頁面。
Google 要求您設定 OAuth 同意畫面,讓使用者選擇如何授予私人資料存取權,並提供貴機構服務條款和隱私權政策的連結。按一下「設定同意畫面」。(如果您已為先前的專案設定 OAuth 同意畫面,就不會看到這個選項,可以跳到步驟 13)。
Google 會顯示「OAuth 同意畫面」頁面。
在「授權網域」欄位中輸入 Looker 執行個體的網域。舉例來說,如果 Looker 在
https://mycompany.looker.com代管您的執行個體,網域就是looker.com。如果是客戶代管的 Looker 部署作業,請輸入代管 Looker 的網域。設定 OAuth 同意畫面,然後按一下「儲存並繼續」。
在「範圍」頁面中,按一下「儲存並繼續」。您不需要額外設定範圍。
在「摘要」頁面中,按一下「返回資訊主頁」。
Google 會將您帶回「建立 OAuth 用戶端 ID」頁面。
在「Application type」(應用程式類型) 下方,選取 [Web application] (網頁應用程式)。
在「Name」(名稱) 欄位中,輸入 OAuth 用戶端 ID 的名稱。
在「Authorized JavaScript origins」(已授權的 JavaScript 來源) 欄位中,輸入 Looker 執行個體的網址,包括
https://。例如:- 如果 Looker 代管您的執行個體:
https://mycompany.looker.com - 如果您有客戶代管的 Looker 執行個體:
https://looker.mycompany.com - 如果 Looker 執行個體需要通訊埠號碼:
https://looker.mycompany.com:9999
- 如果 Looker 代管您的執行個體:
在「Authorized redirect URIs」欄位中,輸入 Looker 執行個體的網址,然後輸入
/oauth2callback。例如:https://mycompany.looker.com/oauth2callback或https://looker.mycompany.com:9999/oauth2callback。點選「建立」。
複製用戶端 ID 和用戶端密鑰值,設定 Looker 時會用到。
在 Looker 端設定
如要在 Looker 端啟用 Google OAuth,請按照下列步驟操作。
以管理員身分登入 Looker 應用程式,然後按一下「管理」下拉式選單,開啟「管理」選單。
在「Authentication」群組下方,按一下「Google」。Looker 會顯示「Google Authentication」(Google 驗證) 頁面。
按一下「已啟用」即可顯示及編輯 Google OAuth 設定。(這不會立即啟用 Google 驗證,您必須稍後確認選擇)。
輸入 Google Auth 設定。
- 用戶端 ID 和用戶端密鑰 - 按照先前的 Google 設定說明,從 Google OAuth 用戶端頁面複製並貼上這些值。
- 網域:貴機構由 Google 管理的網域名稱。指定網域中的任何 Google 使用者都能登入 Looker 執行個體。如果您控管多個 Google 網域,可以輸入這些網域,並以半形逗號分隔。
輸入「遷移選項」,控制 Looker 執行個體在遷移至 Google OAuth 期間的行為。
- 管理員的備用登入方式:管理員可以繼續使用電子郵件和密碼登入,如果無法設定 Google OAuth,這項功能就派得上用場。建議您採用這項設定,詳情請參閱「啟用 Google 驗證時允許電子郵件登入」。
- 依電子郵件地址合併:將指定網域中現有使用者的電子郵件地址轉換為 Google OAuth,下次登入時即可使用。建議採用此設定。
- 新使用者的角色:指定新使用者 (非管理員) 的功能和模型存取權。日後可以更新這份清單。如果留空,新的 Google 驗證使用者在管理員為帳戶新增角色前,只能在 Looker 平台中使用有限的功能。由於 Google 網域中的所有使用者都能登入 Looker,請考慮為新使用者指定預設角色,適當限制存取權。
按一下「Test Google Authentication」(測試 Google 驗證),即可使用目前的設定,在新視窗中嘗試驗證目前的瀏覽器。這項操作不會儲存目前設定,也不會將設定套用至 Looker 執行個體。
如果未登入 Google,系統會提示你登入,並要求同意使用 Google 帳戶資訊。這個流程會使用您在 Google 端設定中使用的自訂同意畫面設定。
成功後,系統會顯示「使用者資訊」部分,其中包含您的姓名、電子郵件地址和網域。如果顯示「User Info」(使用者資訊) 區段,表示 Looker 會成功驗證這位使用者。
如果失敗,系統會顯示錯誤說明。常見問題包括:
- 用戶端 ID 或用戶端密鑰複製錯誤。請務必完整複製並貼上這些資訊。
- 使用者不在網域內。如果看到「個人資訊」部分,但沒有「使用者資訊」,可能是因為使用者不在您指定的網域中。這表示使用者已正確向 Google 驗證身分,但他們使用的 Google 帳戶並未獲得您允許存取 Looker 執行個體的權限。
- Google 中 Looker 執行個體的 Looker 網址或重新導向網址設定有誤。
如要儲存及套用變更,請勾選「我已確認上述設定,並想啟用全域套用功能」。按一下「更新」。
提示
如要試驗完整的驗證週期,您可以登出 Google,然後嘗試登入 Looker,看看 Google 是否會提示您再次登入。
在 Google 中,按一下個人下拉式選單中的「帳戶」 (位於 Google Google Workspace 頁面右上方的電子郵件地址旁),即可管理個人帳戶。
管理頁面會顯示「安全性」分頁,其中包含「帳戶權限」專區。按一下「應用程式和網站」查看全部,即可查看及管理您授予權限的服務和應用程式。
按一下您授予的 Looker 權限,即可登入並查看詳細資料,這些資料會顯示在您先前自訂的同意畫面中。您也可以點選「撤銷存取權」,這樣下次登入 Looker (或測試授權) 時,系統就會再次顯示同意畫面。您可以透過這個工作流程自訂同意畫面,並查看使用者看到的內容。
疑難排解
如果使用者無法登入,請先確認他們的 Google 帳戶中是否有名有姓。如果使用者從 Google 帳戶刪除名字或姓氏,Looker 可能無法透過 Google OAuth 驗證使用者。
如果使用者嘗試登入失敗,且 Looker 顯示
User not in the authorized domain等錯誤,請檢查 JSON 回應的hd欄位。如果「hd」欄位包含網域,請確認該網域已向您的 Google Google Workspace 帳戶註冊。如果「hd」欄位空白,請使用非受管使用者轉移工具,邀請使用者將帳戶轉換為貴機構網域中的代管帳戶。如果使用者嘗試登入失敗,但 Looker 未顯示錯誤訊息,可能是因為使用者編輯了 Google Workspace 帳戶名稱,並刪除名字或姓氏。在這種情況下,Google Workspace 帳戶名稱在管理控制台中可能仍會顯示完整名稱,不會顯示使用者編輯的內容。為避免發生這個問題,Google Workspace 管理員可以停用「允許使用者自訂這項設定」選項。
啟用 Google 驗證後,允許使用者以電子郵件地址登入
新的 Google 帳戶會自動取得 Looker 存取權,因此不需要新增 Google 網域中的使用者。
如要新增電子郵件地址不在 Google 網域中的使用者,請按照下列步驟操作:
- 在 Google 驗證頁面啟用「管理員和指定使用者的備用登入方式」選項
- 建立或修改現有使用者角色,新增
login_special_email權限 - 前往使用者面板中的「新增使用者」 (/admin/users/new)
- 新增要納入的電子郵件地址,以及這些使用者應具備的角色(必須包含具備
login_special_email權限的角色) - 這些使用者現在可以透過 https://mycompany.looker.com/login/email (隱藏網址) 登入
停用 Google 驗證 (啟用後)
如果想在啟用後停用 Looker 執行個體的 Google 驗證,請注意下列事項:
- 如果使用者是在加入 Google 驗證機制「之前」建立,且已設定一般電子郵件登入和密碼,仍可正常運作。
- 之後建立的使用者將無法再登入。雖然帳戶仍存在,但使用者無法存取,帳戶實際上已遭棄用。
因此建議避開這條路線。如果必須採用這種做法,或許可以使用 Looker API 修正孤立帳戶。如需其他協助,請與 Looker 支援團隊聯絡。