扩展程序是使用 Looker 组件构建的 Web 应用,通过 Looker 扩展框架开发。这些扩展程序将继承 Looker 实例的权限结构,并在模型集级层处理权限。如果用户无权访问标准 Looker 应用中的某些模型,则无法在 Looker 扩展程序中访问这些模型。本页介绍了 Looker 管理员如何向用户授予适当的权限,以便用户访问 Looker 扩展程序。
Looker Marketplace 通过将新项目导入 Looker 应用来部署扩展程序。此项目包含运行扩展程序所需的一切内容,并且至少包含一个模型文件。Looker 管理员可以为用户分配具有扩展程序模型访问权限的角色,从而控制用户查看或互动的内容。
例如,如果您的 Looker 实例包含基于名为 finance
、marketing
和 sales
的模型的数据,但您只希望某些用户能够访问财务数据,那么您只需向这些用户授予对 finance
模型的访问权限。扩展程序的权限也类似。
Looker 管理员可以控制访问扩展程序模型(以及因此访问扩展程序本身)的权限,还可以控制访问扩展程序内任何内容所基于的模型或多个模型的权限。
Looker 管理员可以在管理面板中前往角色页面,为 Looker 实例配置可用的模型集。如需访问和使用扩展程序,用户必须获分配以下角色:该角色具有所有模型或包含扩展程序模型的模型集的 manage models
权限,或者explore
或 develop
权限。
向用户授予对扩展程序的权限
Looker 扩展程序通过 Looker 扩展程序框架开发,可通过 Looker Marketplace 安装。扩展程序需要启用扩展程序框架和 Marketplace 功能。
除了上述功能之外,与扩展程序关联的权限还有以下三种类型:
开发扩展程序的权限
如需使用 Looker 扩展框架开发扩展程序,用户需要对实例拥有 LookML 开发者权限,并且具备 Looker 扩展框架简介文档页面中推荐的技能。
从 Looker Marketplace 安装扩展程序的权限
每个扩展程序都将有一个项目,其中包含至少一个专用 LookML 模型。例如,数据字典扩展程序使用 data-dictionary
模型。
如需从 Looker Marketplace 安装扩展程序,用户必须拥有该扩展程序模型的 develop
、manage_models
和 deploy
权限。
安装需要 Looker Marketplace 提供访问密钥的扩展程序时,系统会显示一个配置界面,提示用户输入访问密钥值,这些值将作为 Looker 实例的用户属性存储。
使用扩展程序的权限
如果扩展程序是通过 Looker Marketplace 安装的或在 Looker 实例中提供的,则 Looker 管理员需要配置用户权限。
对于大多数扩展程序使用情形,扩展程序始终以用户登录时授予的权限运行。默认情况下,扩展程序安装完毕后,拥有 explore
或 develop
权限且模型集访问权限设置为全部的任何用户都可以自动查看和使用该扩展程序及其内容,而无需进行额外的权限配置。用户必须有权访问扩展程序使用的所有模型,扩展程序才能正常运行。
Looker 会在 Looker 主菜单的应用部分中显示该扩展程序。
Looker 只会向有权访问扩展程序至少一个底层模型的 Looker 用户显示该扩展程序。
对于嵌入式扩展程序,扩展程序会获得创建的嵌入用户 ID 的权限,就像嵌入式 Look、信息中心或探索一样。
对于在扩展程序网址中使用 /spartan
选项的全屏扩展程序,您可以将用户添加到仅限扩展程序用户群组。此群组中的用户无法查看扩展程序之外的 Looker 页面。Looker 管理员可以像自定义任何其他群组一样自定义仅限扩展程序群组,并为其分配具有特定权限和模型集访问权限的角色。用户无需属于仅限扩展程序群组即可查看全屏扩展程序;如果用户不属于该用户群组,扩展程序将以相应登录用户的权限运行。
添加用户权限
Looker 管理员需要向用户和嵌入式用户授予包含 access_data
的权限集,以及与该扩展程序关联的任何更严格的权限。这些权限必须应用于包含扩展程序模型或多个模型的模型集。
如需向用户授予扩展程序访问权限,Looker 管理员必须执行以下操作:
- 创建包含扩展程序模型的模型集,或修改现有模型集以添加扩展程序模型。
- 确认用户已分配到某个角色,且该角色至少具有此模型集的
access_data
权限(以及与该扩展程序关联的任何更严格的权限)。
示例:数据字典扩展程序
数据字典扩展项目使用 data-dictionary
模型。
如果用户的角色不包含 explore
或 develop
权限,或者其模型集访问权限未设置为全部,则需要 Looker 管理员为其授予包含 data-dictionary
模型的模型集的 explore
或 develop
权限。
例如,假设您想向财务团队授予对“数据字典”扩展程序的访问权限。财务团队已分配 Finance Team
模型集,但该模型集目前未授予对 data-dictionary
模型的访问权限:
如需将 data-dictionary
模型添加到模型集中,请选择 Finance Team
模型集旁边的修改按钮,然后选中 data-dictionary
模型复选框。
选择更新设置以保存您的选择。
将 data-dictionary
模型添加到 Finance Team
模型集后,请确认财务团队的角色使用的权限集包含 explore
或 develop
权限。在此示例中,财务团队的角色(财务部门)包含 Developer
权限集以及 Finance Team
模型集。
Developer
权限集同时包含 explore
和 develop
权限。
现在,分配给财务部门角色的任何用户都可以访问数据字典扩展程序,因为该角色包含相应的权限和模型访问权限。