在「管理」選單的「驗證」部分中,您可以在「LDAP」頁面設定 Looker,透過輕量型目錄存取協定 (LDAP) 驗證使用者。本頁面說明這個程序,並提供將 LDAP 群組連結至 Looker 角色和權限的操作說明。
需求條件
只有在符合下列條件時,Looker 才會在「管理」選單的「驗證」部分顯示「LDAP」頁面:
- 您的 Looker 執行個體不是 Looker (Google Cloud Core) 執行個體。
- 您具備管理員角色。
- Looker 執行個體已啟用 LDAP。
如果符合這些條件,但您沒有看到「LDAP」LDAP頁面,請提出支援要求,在執行個體上啟用 LDAP。
注意事項
在 Looker 執行個體上設定 LDAP 驗證時,請注意下列事項:
- Looker 驗證使用 LDAP 的「簡單」驗證。不支援匿名驗證。
- 您必須建立單一 LDAP 使用者帳戶,並授予該帳戶讀取使用者項目和 Looker 將使用的任何群組項目的權限。
- Looker 只會從 LDAP 目錄讀取資料 (不會寫入資料)。
- Looker 可以使用電子郵件地址,將現有帳戶遷移至 LDAP。
- Looker API 使用情況不會與 LDAP 驗證互動。
- 如果 LDAP 伺服器限制 IP 流量,您必須將 Looker 的 IP 位址新增至 LDAP 伺服器的 IP 許可清單或內送流量規則。
- LDAP 會覆寫雙重驗證。如果您先前已啟用雙重驗證,啟用 LDAP 後,使用者就不會看到雙重驗證登入畫面。
停用 LDAP 驗證時請特別注意
如果您使用 LDAP 登入 Looker,並想停用 LDAP 驗證,請務必先完成下列兩項步驟:
- 確認您有其他登入憑證。
- 在 LDAP 設定頁面啟用「Alternate Login」(替代登入) 選項。
否則您和其他使用者可能會無法存取 Looker。
開始使用
前往 Looker「管理」部分的「LDAP 驗證」頁面,即可查看下列設定選項。
設定連線
Looker 支援以明文形式透過 LDAP 傳輸及加密,以及透過 TLS 傳輸 LDAP。強烈建議使用 LDAP over TLS。系統不支援 StartTLS 和其他加密機制。
- 輸入「主機」和「通訊埠」資訊。
- 如果您使用 LDAP over TLS,請選取「TLS」TLS旁邊的方塊。
- 如果您使用 LDAP over TLS,Looker 預設會強制執行對等互連憑證驗證。如要停用對等互連憑證驗證,請勾選「No Verify」。
- 按一下 [Test Connection]。如有任何錯誤,請先修正再繼續。
連線驗證
Looker 必須存取受密碼保護的 LDAP 帳戶。LDAP 帳戶應具備人員項目和一組新角色項目的讀取權限。Looker LDAP 帳戶不需要寫入存取權 (也不需要存取目錄的任何其他方面),且帳戶建立所在的命名空間並不重要。
- 輸入密碼。
- [選用] 如果 LDAP 供應商未提供分頁結果,請選取「強制不分頁」核取方塊。在某些情況下,如果您在搜尋使用者時沒有任何相符結果,這或許有幫助,但這並非這類問題的唯一解決方法。
- 按一下「測試驗證」按鈕。如有任何錯誤,請確認驗證資訊正確無誤。如果您的憑證有效,但錯誤仍持續發生,請與貴公司的 LDAP 管理員聯絡。
使用者繫結設定
這個部分會詳細說明 Looker 如何在目錄中尋找使用者、繫結以進行驗證,以及擷取使用者資訊。
- 設定「Base DN」,這是所有使用者的搜尋樹狀結構基礎
- [選用] 指定「使用者物件類別」,控管 Looker 搜尋及傳回的結果類型。如果基準 DN 混合了物件類型 (人員、群組、印表機等),且您只想傳回其中一種類型的項目,這項功能就非常實用。
- 設定「登入屬性」,定義使用者登入時使用的屬性。每個使用者都必須有不重複的 ID,且使用者必須熟悉這些 ID,因為這是他們在系統中的 ID。例如,您可以選擇使用者 ID 或完整電子郵件地址。如果新增多個屬性,Looker 會同時搜尋這兩個屬性,找出適當的使用者。請避免使用可能導致帳戶重複的格式,例如姓名。
- 指定「Email Attr」、「First Name Attr」和「Last Name Attr」。這項資訊會告知 Looker 如何對應這些欄位,以及在登入期間擷取相關資訊。
- 設定「ID Attr」,指出 Looker 用來做為使用者專屬 ID 的欄位。這通常是其中一個登入欄位。
- 視需要輸入「Optional Custom Filter」(選用自訂篩選器),提供任意 LDAP 篩選器,在 LDAP 驗證期間搜尋要繫結的使用者時套用。如果您想篩除特定使用者記錄 (例如已停用的使用者或屬於其他機構的使用者),這項功能就非常實用。
範例
這個 ldiff 使用者項目範例示範如何設定對應的 Looker 設定:
Ldiff User Entry
dn: cn=mward,ou=People,dc=example,dc=com
objectClass: person
objectClass: inetOrgPerson
objectClass: organizationalPerson
objectClass: top
cn: mward
userpassword: normal
givenname: Marcus
telephonenumber: +1 408 555 5688
sn: Ward
mail: mward@example.com
ou: People
對應的 Looker 設定
Base DN: ou=People,dc=looker,dc=com
User Object Class: person
Login Attrs: cn
Email Attr: mail
First Name Attr: givenname
Last Name Attr: sn
ID Attr: cn
將 LDAP 使用者屬性與 Looker 使用者屬性配對
您也可以選擇在使用者登入時,使用 LDAP 使用者屬性中的資料,自動填入 Looker 使用者屬性的值。舉例來說,如果您已設定 LDAP,讓使用者專屬連線連至資料庫,可以將 LDAP 使用者屬性與 Looker 使用者屬性配對,在 Looker 中建立使用者專屬的資料庫連線。
請注意,LDAP 屬性必須是使用者屬性,而非群組屬性。
如要將 LDAP 使用者屬性與對應的 Looker 使用者屬性配對,請按照下列步驟操作:
- 在「LDAP User Attribute」欄位中輸入 LDAP 使用者屬性的名稱,並在「Looker User Attributes」欄位中輸入要配對的 Looker 使用者屬性名稱。
- 如要規定使用者必須提供 LDAP 屬性值才能登入,請勾選「必要」。
- 按一下「+」,然後重複上述步驟,即可新增更多屬性配對。
測試使用者資訊
- 輸入測試使用者的憑證,然後按一下「Test User Authentication」(測試使用者驗證) 按鈕。Looker 會嘗試完整的 LDAP 驗證程序,並顯示結果。成功後,Looker 會輸出目錄中的使用者資訊,以及驗證程序的一些追蹤資訊,有助於解決設定問題。
- 確認驗證成功,且所有欄位都已正確對應。舉例來說,請確認
first_name
欄位不含屬於last_name
的值。
群組和角色
您可以設定 Looker 建立與外部管理的 LDAP 群組相應的群組,然後根據相應的 LDAP 群組,將 Looker 角色指派給使用者。變更 LDAP 群組成員資格時,這些變更會自動傳播到 Looker 群組設定。
鏡像 LDAP 群組可讓您使用外部定義的 LDAP 目錄,管理 Looker 群組和使用者。這樣一來,您就能集中管理多個軟體即服務 (SaaS) 工具 (例如 Looker) 的群組成員資格。
如果啟用「鏡像 LDAP 群組」,Looker 會為系統導入的每個 LDAP 群組建立一個 Looker 群組。您可以在 Looker「管理」部分的「群組」頁面中查看這些 Looker 群組。群組可用於為群組成員指派角色、設定內容存取權控管,以及指派使用者屬性。
預設群組和角色
「鏡像 LDAP 群組」切換鈕預設為關閉。在這種情況下,您可以為新的 LDAP 使用者設定預設群組。在「New User Groups」(新使用者群組) 和「New User Roles」(新使用者角色) 欄位中,輸入您要指派給新 Looker 使用者的 Looker 群組或角色名稱,這些使用者首次登入 Looker 時就會獲得這些群組或角色。
這些群組和角色會套用至首次登入的使用者,不會套用至既有使用者。如果在使用者首次登入後移除這些群組和角色,就不會再次套用。
如果日後啟用 LDAP 群組鏡像,系統會在使用者下次登入時移除這些預設角色,並改為指派「鏡像 LDAP 群組」部分的角色。這些預設選項將無法再使用或指派,並完全由鏡像群組設定取代。
啟用鏡像 LDAP 群組
如要選擇在 Looker 中鏡像處理 LDAP 群組,請開啟「鏡像處理 LDAP 群組」切換鈕。Looker 會顯示下列設定:
群組搜尋策略:從下拉式選單中選擇一個選項,告訴 Looker 如何尋找使用者的群組:
群組具有成員屬性:這是較常見的選項。尋找群組成員時,Looker 只會傳回直接指派給使用者的群組。舉例來說,如果使用者是「Database-Admin」群組的成員,而「Database-Admin」群組是「Engineering」群組的成員,則使用者只會取得與「Database-Admin」群組相關聯的權限。
群組具有成員屬性 (深度搜尋):這個選項可讓群組成為其他群組的成員,有時也稱為 LDAP 巢狀群組。也就是說,使用者可以擁有多個群組的權限。舉例來說,如果使用者是 Database-Admin 群組的成員,而 Database-Admin 群組是 Engineering 群組的成員,則使用者會取得這兩個群組的相關聯權限。部分 LDAP 伺服器 (尤其是 Microsoft Active Directory) 支援自動執行這類深度搜尋,即使呼叫端執行的是看似淺層的搜尋也一樣。這可能是執行深入搜尋的另一種方法。
基準 DN:可縮小搜尋範圍,且可與本文件頁面「使用者繫結設定」部分中指定的基準 DN 相同。
群組物件類別:這項設定為選用。如「使用者繫結設定」一節所述,這可將 Looker 傳回的結果限制為特定物件類型或一組類型。
群組成員屬性:決定每個群組的成員物件 (在本例中可能為使用者) 的屬性。
群組使用者屬性:LDAP 使用者屬性的名稱。我們會搜尋群組項目中的值,判斷使用者是否屬於該群組。這項設定預設為 dn
(也就是說,留空與設為 dn
相同),這會導致 LDAP 使用完整的辨別名稱 (即 LDAP 搜尋本身中存在的大小寫區分字串),搜尋群組項目。
偏好的群組名稱/角色/群組 DN:這組欄位可讓您指派自訂群組名稱,以及指派給 Looker 中對應 LDAP 群組的一或多個角色。
在「Group DN」(群組 DN) 欄位中輸入 LDAP 群組 DN。這應包含完整的識別名稱,也就是 LDAP 搜尋本身存在的確切字串 (區分大小寫)。系統會將 LDAP 群組中的 LDAP 使用者新增至 Looker 中的對應群組。
在「Custom Name」(自訂名稱) 欄位中,輸入鏡像群組的自訂名稱。這個名稱會顯示在 Looker「管理」部分的「群組」頁面。
在「自訂名稱」欄位右側的欄位中,選取要指派給群組中每位使用者的一或多個 Looker 角色。
按一下
+
即可新增其他欄位組合,設定其他鏡像群組。如果您已設定多個群組,並想移除某個群組的設定,請按一下該群組欄位組旁的X
。
如果您編輯先前在這個畫面中設定的鏡像群組,群組的設定會變更,但群組本身不會受到影響。舉例來說,您可以變更群組的自訂名稱,這會改變群組在 Looker「群組」頁面中的顯示方式,但不會變更指派的角色和群組成員。變更群組 DN 會保留群組名稱和角色,但系統會根據具有新 LDAP 群組 DN 的外部 LDAP 群組成員,重新指派群組成員。
如果您刪除這個頁面中的群組,該群組就不會再鏡像到 Looker,且系統會移除透過該群組指派給成員的 Looker 角色。
下次登入 Looker 時,系統會將對映群組的編輯內容套用至該群組的使用者。
進階角色管理
如果已啟用「Mirror LDAP Groups」(鏡像 LDAP 群組) 切換鈕,Looker 會顯示這些設定。這個部分的選項會決定 Looker 管理員在設定 Looker 群組和從 Looker 鏡像處理的使用者時,有多少彈性。
舉例來說,如要讓 Looker 群組和使用者設定與 LDAP 設定完全一致,請開啟這些選項。啟用前三個選項後,Looker 管理員就無法修改鏡像群組的成員資格,只能透過 LDAP 鏡像群組指派角色給使用者。
如要進一步自訂 Looker 中的群組,請關閉這些選項。Looker 群組仍會反映 LDAP 設定,但您可以在 Looker 中進行其他群組和使用者管理作業,例如將 LDAP 使用者新增至 Looker 群組,或直接將 Looker 角色指派給 LDAP 使用者。
如果是新的 Looker 執行個體,或是先前未設定任何鏡像群組的 Looker 執行個體,這些選項預設為關閉。
如果現有 Looker 執行個體已設定鏡像群組,這些選項預設會開啟。
「進階角色管理」部分包含下列選項:
禁止個別 LDAP 使用者取得直接角色:開啟這個選項後,Looker 管理員就無法直接將 Looker 角色指派給 LDAP 使用者。LDAP 使用者只能透過群組成員身分取得角色。如果允許 LDAP 使用者加入內建 (非鏡像) Looker 群組,他們仍可從鏡像 LDAP 群組和內建 Looker 群組沿用角色。先前直接獲派角色的 LDAP 使用者,下次登入時將移除這些角色。
如果關閉這項選項,Looker 管理員可以直接將 Looker 角色指派給 LDAP 使用者,就像這些使用者是直接在 Looker 中設定一樣。
禁止非 LDAP 群組直接取得成員資格:開啟這個選項後,Looker 管理員就無法直接將 LDAP 使用者新增至內建的 Looker 群組。如果允許鏡像 LDAP 群組成為內建 Looker 群組的成員,LDAP 使用者可能會保留任何上層 Looker 群組的成員資格。先前指派給內建 Looker 群組的 LDAP 使用者,下次登入時會從這些群組中移除。
如果關閉這個選項,Looker 管理員可以直接將 LDAP 使用者新增至內建的 Looker 群組。
禁止從非 LDAP 群組繼承角色:開啟這項選項後,系統會禁止鏡像 LDAP 群組的成員從內建 Looker 群組繼承角色。如果 LDAP 使用者先前從上層 Looker 群組繼承角色,下次登入時就會失去這些角色。
如果關閉這項選項,系統會將指派給上層 Looker 群組的角色,一併指派給鏡像 LDAP 群組或新增為內建 Looker 群組成員的 LDAP 使用者。
驗證需要角色:如果開啟這個選項,LDAP 使用者必須獲派角色,如果 LDAP 使用者未獲指派任何角色,就無法登入 Looker。
如果關閉這個選項,即使 LDAP 使用者未獲指派任何角色,也能通過 Looker 驗證。如果使用者沒有獲派任何角色,就無法在 Looker 中查看任何資料或採取任何動作,但可以登入 Looker。
停用鏡像 LDAP 群組
如要停止在 Looker 中鏡像處理 LDAP 群組,請關閉「Mirror LDAP Groups」(鏡像處理 LDAP 群組) 切換鈕。關閉切換按鈕會導致下列行為:
- 系統會立即刪除沒有任何使用者的鏡像 LDAP 群組。
- 如果鏡像 LDAP 群組不含任何使用者,就會標示為孤立群組。如果這個群組的使用者在 31 天內都沒有登入,系統就會刪除該群組。使用者無法再新增至孤立的 LDAP 群組,也無法從這類群組移除。
遷移和整合選項
管理員和指定使用者的備用登入方式
- 允許管理員和具備
login_special_email
權限的使用者,以電子郵件地址作為備用登入方式 (如要進一步瞭解如何設定這項權限,請參閱角色說明文件)。如果已啟用這項功能,且使用者具備適當權限,Looker 登入頁面就會顯示這個選項。 - 如果之後在 LDAP 設定期間發生問題,或是需要支援不在 LDAP 目錄中的使用者,這個選項就能當做備用方案。
- 啟用 LDAP 後,一般使用者一律無法以電子郵件地址和密碼登入 Looker。
透過電子郵件合併
- 這個選項可讓 Looker 根據電子郵件地址,將首次使用 LDAP 的使用者與現有 Looker 帳戶合併。
- 如果 Looker 找不到相符的電子郵件地址,系統會為使用者建立新帳戶。
儲存並套用設定
輸入完畢後,如果所有測試都通過,請勾選「我已確認上述設定,並想啟用全域套用」,然後按一下「更新設定」儲存。