扩展程序是使用通过 Looker 扩展程序框架开发的 Looker 组件构建的 Web 应用。这些扩展程序将继承 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 安装。扩展程序要求启用扩展程序框架和市场功能。
除了这些功能外,还有三种与扩展程序相关联的权限类型:
开发扩展程序所需的权限
如需使用 Looker 扩展程序框架开发扩展程序,用户需要该实例的 LookML 开发者权限,以及 Looker 扩展程序框架简介文档页面中建议的技能。
拥有从 Looker Marketplace 安装扩展程序的权限
每个扩展程序都将有一个项目,其中至少包含一个专用 LookML 模型。例如,Data Dictionary 扩展程序使用 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 扩展程序项目使用 data-dictionary
模型。
如果用户的角色不包含 explore
或 develop
权限,或者模型集访问权限未设置为全部,那么 Looker 管理员需要针对包含 data-dictionary
模型的模型集向他们授予 explore
或 develop
权限。
例如,假设您希望向财务团队授予访问 Data Dictionary 扩展程序的权限。系统会向财务团队分配 Finance Team
模型集,但目前未授予对 data-dictionary
模型的访问权限:
如需将 data-dictionary
模型添加到其模型集,请选择 Finance Team
模型集旁边的修改按钮,然后选中 data-dictionary
模型复选框。
选择更新设置保存您的选择。
将 data-dictionary
模型添加到 Finance Team
模型集后,请确认财务团队的角色使用了包含 explore
或 develop
权限的权限集。在此示例中,财务团队的角色(财务部门)包含 Developer
权限集和 Finance Team
模型集。
Developer
权限集包含 explore
和 develop
权限。
现在,分配给 Finance Department 角色的任何用户都可以访问 Data Dictionary 扩展程序,因为该角色包含相应权限和模型访问权限。