rundeck用户权限管理

本文介绍了如何通过环境变量配置Rundeck,并详细说明了管理员和普通用户的权限配置方法,包括用户管理、权限分配及细粒度控制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前情:

$RDECK_BASE 为rundeck的自定义环境变量,可以按如下配置:

$ vim .bashrc

export RDECK_BASE=/home/sc/rundeck  #末尾追加

$ source .bashrc

$ echo $RDECK_BASE

/home/sc/rundeck #可以看到当前用户的环境变量已经添加成功了

*****************************************************************************

1、 用户管理

$ vim $RDECK_BASE/server/config/realm.properties

# The format is

# <username>: <password>[,<rolename> ...]

admin:admin,user,admin  #用户名为admin,密码为admin,权限为普通用户user和管理员用户admin的配置
xiaoming:123456,user  #用户名为xiaoming,密码为123456,权限为普通用户user的配置

2、 admin权限管理

$ vim $RDECK_BASE/etc/admin.aclpolicy

description: Admin, all access.
context:
  project: '.*' # all projects
for:
  resource:
    - allow: '*' # allow read/create all kinds
  adhoc:
    - allow: '*' # allow read/running/killing adhoc jobs
  job:
    - allow: '*' # allow read/write/delete/run/kill of all jobs
  node:
    - allow: '*' # allow read/run for all nodes
by:
  group: admin

---

description: Admin, all access.
context:
  application: 'rundeck'
for:
  resource:
    - allow: '*' # allow create of projects
  project:
    - allow: '*' # allow view/admin of all projects
  project_acl:
    - allow: '*' # allow admin of all project-level ACL policies
  storage:
    - allow: '*' # allow read/create/update/delete for all /keys/* storage content
by:
  group: admin

3、普通用户读权限管理

$ cd $RDECK_BASE/etc

$ touch database_select.aclpolicy # 创建Project database_select 普通用户权限

description: user.

context:

  project: 'database_select'

for:

  resource:

    - equals:

        kind: job

      allow: [run,kill] # allow read/create all kinds

    - equals:

        kind: node

      allow: [run]

    - equals:

        kind: event

      allow: [read]

  adhoc:

    - deny: '*'

  job:

    - match:

        group: '.*'   ##若是project 给授权所有的job组权限,就这样,若是  project/moni/xxjob    就改成 moni

        name: 'select order_id|新零售-查询订单状态和轨迹'

      allow: [read,run,runAs,kill,killAs] # allow read/write/delete/run/kill of all jobs

  node:

    - allow: [read,run] # allow read/run for all nodes

by:

  username: 'xiaoming'


---
description: user.

context:

  application: 'rundeck'

for:

  resource:

    - equals:

        kind: project

      allow: [read] # allow create of projects

    - equals:

        kind: system

      allow: [read]

    - equals:

        kind: user

      allow: [read]

  project:

    - match:

        name: 'database_select'

      allow: [read]  # allow view/admin of all projects

  storage:

    - allow: [read,create] # allow read/create/update/delete for all /keys/* storage content

by:
  username: 'admin|xiaoming|userxxx'

  group: 'user'

如果要自定义普通用户在job,node,project上细粒度的读写权限,自主修改上面的配置文件即可,但我觉得粗略的读写权限基本已经够用了。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值