扩展程序是使用 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 进行安装。扩展程序要求启用扩展程序框架和 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
权限。
现在,被分配给财务部门角色的任何用户都将具有对数据字典扩展的访问权限,因为该角色包含适当的权限和适当的模型访问权限。