存取權控管和權限管理

Looker 管理員可以指定以下存取權,管理使用者或使用者群組在 Looker 中可查看及執行的操作:

  • 內容存取權:控管使用者或使用者群組是否可以查看或管理資料夾。有權查看資料夾的使用者可以前往該資料夾,查看資料夾中的資訊主頁和 Look 清單。可管理資料夾的使用者可以操作資料夾內容 (複製、移動、刪除及重新命名資訊主頁和 Look 圖表)、整理資料夾 (重新命名、移動或刪除資料夾),以及授予其他使用者和群組資料夾存取權。內容存取權可由Looker 管理員在「管理」面板中管理,或由資料夾中的個別使用者管理 (如果允許)。
  • 資料存取權:控管使用者可查看哪些資料。資料存取權主要透過模型集管理,這也是 Looker 角色的一半。然後將這些角色套用至使用者和群組。您可以使用存取篩選器進一步限制模型中的資料存取權,限制使用者可查看哪些資料列,就像在查詢中套用自動篩選器一樣。您也可以使用存取權授予功能,限制特定探索、彙整、檢視或欄位的存取權。
  • 功能存取權:控制使用者在 Looker 中可執行的操作類型,包括查看資料和已儲存的內容、變更 LookML 模型、管理 Looker 等。功能存取權由權限集管理,這是 Looker 角色的另一半。其中部分權限適用於整個 Looker 執行個體,例如可查看所有資料傳送排程。大部分權限都會套用至特定模型組合,例如可查看根據這些模型定義的資訊主頁。

使用者和群組的資料存取權、功能存取權和內容存取權,可用來指定使用者在 Looker 中可執行及查看的操作。

使用者和群組

Looker 包含個別使用者和使用者群組。您可以在 Looker 的「管理」面板的「使用者」頁面管理使用者,也可以在 Looker 的「管理」面板的「群組」頁面管理群組。

最佳做法是使用群組,避免為使用者個別指派、調整及移除控管項目的繁瑣工作。通常,您可以讓使用者加入一或多個群組,藉此安排使用者可執行的活動組合。如果沒有任何群組組合能滿足需求,建議您建立只有一位使用者的群組,以便日後擴大群組成員人數。如要使用存取權篩選器,建議您使用使用者屬性,因為您可以為群組指派使用者屬性。

控管使用者內容存取權

Looker 資料夾可讓您整理資訊主頁和 Look 組合。也可以包含其他資料夾,方便建立巢狀的階層式組織。

您可以透過資料夾設定存取層級,決定哪些使用者可以編輯資料夾內容 (例如外觀和資訊主頁)、查看資料夾中的內容,以及變更設定:

  • 使用者至少必須具備資料夾的「查看」存取層級,才能查看資料夾是否存在、查看其中的 Look 和資訊主頁,以及複製資料夾中的 Look 和資訊主頁。

  • 使用者必須具備資料夾的「管理存取權、編輯」存取層級,才能管理資料夾存取權,以及編輯資料夾及其內容 (包括重新命名資料夾、移動內容,以及刪除 Look 和資訊主頁)。

資料夾不會控制使用者在 Looker 平台上可執行的操作,或可用來建立內容的資料。如要管理該存取權層級,請參閱本頁的「控管功能和資料存取權」一節。

如要逐步調整資料夾存取層級,以便使用者在 Looker 中瀏覽內容,請參閱「整理及管理內容存取權」說明文件。Looker 管理員也可以透過 Looker 的「內容存取權頁面,調整所有群組和使用者的資料夾存取層級。您也可以參閱「設計及設定存取層級系統」說明文件,瞭解如何設計全執行個體的存取層級。

雖然內容存取權和功能存取權是分開管理,但指派給使用者的角色會影響使用者能否查看資料夾中列出的 Look 和資訊主頁、查看 Look 或資訊主頁,或管理資料夾。本頁的「內容存取權和權限的互動方式」一節會進一步說明功能存取權對內容存取權的影響。

控管功能和資料存取權

如要控管 Looker 中的功能和資料存取權,您通常會建立使用者群組 (這是選用功能,但建議採用),然後將該群組指派給角色。角色會將一組權限與一組 LookML 模型綁在一起。模型會自行定義可用的欄位和資料。

您可以使用存取權篩選器,為特定使用者套用特定資料限制。此外,您可以使用專案,限制 Looker 開發人員只能使用特定資料庫的模型。

您也可以建立存取權授予,控管特定探索、彙整、檢視畫面或欄位的存取權。存取權授予功能會將存取權限制在已指派特定使用者屬性值的使用者。

如果您想達成以下目標 ... 以下是您要執行的基本步驟:
控管使用者可執行的動作 建立具備適當權限的權限組合,然後將群組或使用者指派給具備該權限組合的角色
控管使用者可存取哪些欄位 建立含有適當欄位的模型,然後將群組或使用者指派給該模型的角色
控管使用者可存取的資料 建立具有適當資料限制的模型,然後將群組或使用者指派給該模型的角色

- 或是 -

使用存取篩選器,將使用者限制在適當的資料範圍內

- 或是 -

使用使用者屬性,為群組或使用者提供不同的資料庫憑證

- 或是 -

使用使用者屬性搭配存取權授予功能,限制特定探索、彙整、檢視或欄位的存取權
控管 Looker 開發人員可存取的資料庫連線 建立具有適當連結的專案,將專案與一組模型建立關聯,然後將群組或使用者指派給具有這些模型的角色

功能存取權也可能會影響內容存取權。如要進一步瞭解資料存取權和功能存取權對內容存取權的影響,請參閱本頁的「內容存取權和權限的互動方式」一節。

您需要瞭解的構成元素

角色

角色是權限組合模型組合的組合。權限集合由一或多個權限組成,用於定義角色可執行的操作。模型集合由一或多個模型組成,用於定義角色適用的 LookML 模型。

建立角色後,您可以將個別使用者或一群使用者指派給該角色。如果您為個別使用者新增部分角色,並為使用者所屬群組新增其他角色,使用者就會繼承所有這些角色。

部分權限與整個 Looker 執行個體相關,其他權限則只適用於同一個角色中的模型。詳情請參閱「角色說明文件」頁面。

專案

專案可讓您限制模型可使用的資料庫連線。這有助於您控管 Looker 開發人員在建立模型時可互動的資料集。專案可能包含一或多個模型,並可設定為使用一或多個連線。

透過專案定義的這項限制也會傳送至 Looker SQL Runner,確保開發人員無法透過 SQL Runner 存取禁止的資料庫連線。

使用者屬性

使用者屬性可讓您為使用者群組或個別使用者指派任意值。這些值會用於 Looker 的各個部分,為每位使用者提供客製化體驗。

使用者屬性控管存取權的其中一種方式,就是將資料庫憑證參數化,以便針對每位使用者指定特定憑證。只有在資料庫有多位使用者,且各自有不同的資料存取權時,這項屬性才有用。詳情請參閱「使用者屬性」說明文件頁面。

使用者屬性控管存取權的另一種方式,是將屬性納入存取篩選器。存取權篩選器可讓您將一或多個使用者屬性用作資料篩選器。舉例來說,您可以為每位使用者指派公司名稱,然後確保他們看到的所有內容都會根據該名稱進行篩選。如要瞭解如何套用存取權篩選器,請參閱「使用者屬性」說明文件頁面和 access_filter 參數說明文件頁面。

使用者屬性也會控制存取權授予。存取權授予項目會指定使用者屬性,並在該使用者屬性中定義可接受的值,以便授予探索、彙整、檢視或欄位的存取權。接著,您可以在「探索」、「彙整」、「檢視」或「欄位」層級使用 required_access_grants 參數,將這些 LookML 結構的存取權限制給具有允許使用者屬性值的使用者。舉例來說,您可以使用存取權授予,將 salary 維度的存取權限制在 department 使用者屬性中值為 payroll 的使用者。如要瞭解如何定義存取權授予,請參閱 access_grant 參數說明文件頁面。

使用構成元素

控管功能存取權

權限可控制使用者或群組可執行的活動類型。使用者取得權限的方式如下:

  1. 最佳做法是找出應具備權限組合的一或多個使用者群組,並視需要建立群組。您可以選擇授予個別使用者的權限。
  2. 建立包含適當權限的權限集。
  3. 如果要指派的部分權限是特定模型專屬,請建立或找出現有的模型集
  4. 建立角色,結合權限集和 (如有需要) 模型集。
  5. 請在「Roles」頁面指派角色。角色建立後,您也可以在「使用者」頁面為使用者指派角色。

您可以將多個角色指派給使用者或群組。在這種情況下,使用者將擁有所有角色的所有權限。例如:

  • Role1 可讓使用者查看 Model1 的資訊主頁。
  • Role2 可讓使用者查看資訊主頁,並在 Model2 上進行探索。

如果您將兩個角色指派給同一個使用者群組,他們就能在 Model1 和 Model2 中查看資訊主頁,但只能在 Model2 中進行探索。

控管使用者對 Looker 欄位的存取權

使用者可使用的欄位,取決於使用者可存取的模型。使用者可以透過以下方式取得欄位存取權:

  1. 建立 LookML 模型 (或 LookML 模型組合),只包含使用者應具備存取權的欄位。
  2. 依序前往「管理員」>「使用者」>「角色」
  3. 在「Roles」頁面上,建立包含這些模型的模型集,然後指派給角色。
  4. 如要使用使用者群組 (通常是最佳做法),請在 Looker 的「群組」頁面建立群組。接著,在「Roles」頁面中,將該群組指派給適當的角色。
  5. 如要與個別使用者合作,請透過「使用者」頁面或「角色」頁面,為這些使用者指派角色。

您可以將多個角色指派給使用者或群組。這樣一來,使用者就能透過所有角色處理所有模型。

請注意,欄位的 hidden 參數旨在為使用者打造更簡潔的體驗,而非用於控管欄位存取權。hidden 參數會隱藏欄位挑選器中的欄位,但不會阻止使用者使用該欄位。如果有人傳送使用該欄位的連結,他們就能看到該欄位,Looker 的其他位置也會顯示該欄位。

控管使用者對資料的存取權

您可以透過多種方式控管使用者對資料的存取權,具體取決於用途:

  • 如要禁止使用者查看特定資料,請控制他們可存取的欄位,詳情請參閱「控制使用者對 Looker 欄位的存取權」一節。只要使用者無法開發,也無法使用 SQL Runner,就會受到可存取欄位的限制。
  • 如要禁止使用者查看特定的資料,請套用存取篩選器欄位,詳情請參閱 access_filter 參數說明文件頁面。
  • 如要限制存取特定探索、彙整、檢視或欄位的權限,請建立存取權授予,將存取權限限制在已指派允許使用者屬性值的使用者,如 access_grant 參數說明文件頁面所述。
  • 如要限制 Looker 使用者只能針對特定資料庫使用者執行查詢 (資料庫團隊已設定限制資料存取權),請使用使用者屬性。您可以使用這些參數,為資料庫連線設定參數,讓一組使用者或個別使用者以特定資料庫憑證執行查詢。您也應考慮將使用者限制在適當的 Looker 欄位。如果您未設定,Looker 使用者可能會嘗試查詢資料庫使用者沒有存取權的欄位,並收到錯誤訊息。

就像 hidden 欄位參數並非用於控制欄位存取權一樣,探索的 hidden 參數也不會阻止所有使用者查看探索。hidden 參數會從「探索」選單中移除「探索」功能,但如果使用者已儲存參照隱藏的「探索」功能的內容,仍可存取「探索」功能的資料。

如果您使用已簽署的嵌入功能,請務必透過已簽署的嵌入網址設定資料存取控管。

控管開發人員對資料庫連線的存取權

與一般使用者不同,Looker 開發人員可以新增或修改 LookML 模型,因此不受模型和存取權篩選器的完全限制。不過,管理員仍可透過專案,限制 Looker 開發人員只能使用特定資料庫連線。方法如下:

  1. 建立專案,將特定數量的模型限制為特定數量的資料庫連線。這項操作是在 Looker 的「管理專案頁面中執行。
  2. 依序前往「管理員」>「使用者」>「角色」
  3. 在「角色」頁面上建立至少包含一個專案模型的模型集合,然後指派給角色。
  4. 如要使用使用者群組 (通常是最佳做法),請在 Looker 的「群組」頁面建立群組。接著,在「Roles」頁面中,將該群組指派給適當的角色。
  5. 如要與個別使用者合作,請透過「使用者」頁面或「角色」頁面,為這些使用者指派角色。

如果 Looker 開發人員可以查看專案中的任何模型,就能查看該專案中的所有模型。舉例來說,如果您將 Looker 開發人員指派給只有一個模型的角色,但該模型剛好是包含其他模型的專案的一部分,就可能發生這種情況。

內容存取權和權限的互動方式

內容存取權可由使用者管理,在查看資料夾時即可設定;也可以由 Looker 管理員在「管理」面板的「內容存取權」頁面中管理。指派給使用者的角色會決定使用者可存取哪些功能和資料。這會影響使用者在資料夾中可執行的操作,以及是否能查看外觀和資訊主頁。

在 Look 圖表和資訊主頁中查看資料

如要查看 Look 或資訊主頁的資料,使用者至少必須具備內容儲存資料夾的檢視權限。

使用者必須具備 access_datasee_looks 權限,才能選取 Look 並查看相關資料。使用者必須具備 access_datasee_user_dashboards 權限,才能選取資訊主頁並查看相關資料。

使用者必須具備資料存取權,才能查看 Look 或資訊主頁資訊方塊中的資料。如果沒有必要的資料存取權,以下情況可能會發生:

  • 即使使用者可以看到資料夾中列出的 Look,並能前往 Look,Look 查詢仍不會執行,使用者也無法查看 Look 的資料。
  • 即使使用者可以看到資料夾中列出的資訊主頁,並能前往該資訊主頁,但如果使用者沒有存取權,任何資訊方塊都會顯示為空白。如果資訊主頁使用多個模型建立資訊方塊,使用者就能看到與其可存取的模型相關聯的資訊方塊,而其他模型的資訊方塊則會顯示錯誤。

舉例來說,如果使用者對資料夾具有查看權限,且對資料夾中所有 Look 基礎資料具有資料存取權,同時具備 access_datasee_looks 權限,就能查看資料夾中的所有 Look 清單,也能查看這些 Look。如果這位使用者沒有查看 LookML 或使用者定義的資訊主頁的權限,就不會看到資料夾中可能存在的任何資訊主頁。

查看 Look 和資訊主頁的資料夾和清單

使用者至少必須具備資料夾的「查看」存取層級,才能查看該資料夾,並查看該資料夾中儲存的內容清單。

擁有至少 see_looks 權限的使用者,可以查看資料夾中的 Look 名稱。使用者只要具備 see_user_dashboards 權限,就能查看資料夾中的資訊主頁標題。不過,這並不表示他們可以查看外觀或資訊主頁的資料。

舉例來說,如果使用者擁有 see_looks 權限,但缺少 access_data 權限,則可以查看 Look 的標題,但無法查看 Look 的資料。

擁有 access_data 權限,但沒有 see_lookssee_user_dashboards 的使用者,無法查看任何資料夾或內容。

修改資料夾

使用者必須具備資料夾的「管理存取權、編輯」存取權層級,才能整理該資料夾,包括複製及移動內容、重新命名及移動資料夾等類似動作。使用者也必須具備 manage_spaces 權限,才能建立、編輯、移動及刪除資料夾。

使用使用者權限基礎架構 (LDAP、SAML 和 OpenID Connect)

如果您已設定 LDAP、SAML 或 OpenID 基礎架構,可以使用該系統管理使用者登入作業。如需設定 LDAP 的操作說明,請參閱「LDAP 驗證」頁面。如需設定 SAML 的操作說明,請參閱「SAML 驗證」說明文件頁面。如需 OpenID Connect 設定操作說明,請參閱 OpenID Connect 驗證說明文件頁面。

如果您已在 LDAP、SAML 或 OpenID Connect 實作中設定群組,也可以在 Looker 中使用這些群組。不過請留意下列事項:

  • 您建立的所有群組都會自動轉移至 Looker,並顯示在「群組」頁面上。系統會為每個 LDAP、SAML 或 OpenID Connect 群組建立一個 Looker 群組,而 Looker 群組名稱會與 LDAP、SAML 或 OpenID Connect 群組名稱相同。
  • 您可以使用這些 Looker 群組,為群組成員指派資料夾存取層級使用者屬性
  • 無法使用 Looker 群組來設定角色,就像手動建立群組一樣。相反地,您會在設定程序中將 LDAP、SAML 或 OpenID Connect 群組對應至 Looker 角色,且只能透過 LDAP、SAML 或 OpenID Connect 設定頁面變更指派的角色。我們要求採用這種做法,以便讓 LDAP、SAML 或 OpenID Connect 群組維持單一可靠的資料來源。如未設定這項限制,群組與角色的對應項目可能會與 LDAP、SAML 或 OpenID Connect 配置中的預期功能有所出入。

您也可以使用 LDAP 將特定使用者資料庫連線套用至 Looker 查詢,詳情請參閱「LDAP 驗證」說明文件頁面。