请说明 DolphinScheduler 中多租户的实现机制,以及管理员应当如何为不同用户配置访问权限?
考察说明
考查对 DolphinScheduler 多租户模型及权限控制的理解和实际操作能力。
回答思路
- 【回答框架 1】多租户是 DolphinScheduler 实现资源隔离和权限控制的核心机制。每个租户对应一个 Linux 系统用户,用于执行工作流中的任务,从而在操作系统层面隔离文件权限和资源使用。租户与用户是多对一或一对多关系,一个用户可属于多个租户,但工作流实例归属于创建者所属的租户。
- 【回答框架 2】管理员在创建租户时需指定租户名称和对应的操作系统用户,系统会校验该用户是否存在。之后,在创建或导入用户时,可以为每个用户分配一个默认租户,用户也可以被授权访问其他租户,但需要管理员在用户管理中显式配置。
- 【回答框架 3】权限配置主要体现在项目级和资源级。管理员通过『安全中心』模块,为不同用户授予项目的查看、编辑、发布等权限,以及文件资源(如脚本、jar 包)的访问权限。权限粒度基于用户组或单个用户,可细分为读、写、执行等操作。
- 【回答框架 4】实际配置中,通常遵循最小权限原则:先按团队划分用户组,再为组分配项目权限,个别用户再单独授权。同时,需确保租户对应的系统用户具备任务执行所需的最小权限,避免安全风险。
- 【关键点 1】多租户通过 Linux 系统用户实现任务执行隔离。
- 【关键点 2】租户与用户是分离的,一个用户可关联多个租户。
- 【关键点 3】权限配置包括项目权限和资源权限,基于用户或用户组。
- 【关键点 4】管理员在安全中心统一管理租户和权限分配。
- 【易错点 1】勿将多租户等同于业务数据隔离,它侧重于任务执行层面的系统权限隔离。
- 【易错点 2】不要忽略租户系统用户的环境配置,可能导致任务执行失败。
- 【易错点 3】权限配置应避免过度授权,警惕安全风险。