如何设置ACL策略以允许用户仅在Rundeck上运行作业?

时间:2016-04-06 15:00:37

标签: rundeck

任何人都可以帮我解决如何在Rundeck中配置用户的问题      1)只做一份工作      2)拒绝修改/删除现有作业
     3)拒绝创造新的工作岗位

我想我需要在aclpolicy.yaml文件中设置此配置,但我找不到有关如何执行此操作的详细说明。

提前致谢

1 个答案:

答案 0 :(得分:1)

是的...很乐意提供帮助。

我假设你已经有一个项目和一份工作。说项目测试和工作testjob。我假设你已经在WEB.xml文件中创建了一个角色/组作为testrole,并且你有一个.aclpolicy作为test.aclpolicy。上面的内容有关于Rundeck的详细文档,但是他们没有关于各种rd-acl用例的更好的文档。

在您的情况下,如果您想要您的用户" testuser"要运行/读取/终止作业执行,请使用下面的test.aclpolicy。

---
for:
  job:
  - allow:
    - runAs
    - killAs
    - kill
    - read
    - run
    equals:
      name: testjob
  node:
  - allow:
    - read
    - run
  adhoc:
  - deny:
    - read
    - run
  resource:
  - allow: read
    equals:
      kind: event
description: generated
context:
  project: Test
by:
  group: testrole

---
 for:
  project:
  - allow: read
    equals:
      name: Test
description: generated
context:
  application: rundeck
by:
  group: testrole

如果您想为同一个用户的同一个项目中的多个作业提供相同的权限,只需替换" equals"用"匹配"在name参数下,输入分隔管道的作业" |"喜欢" testjob1 | testjob2" ..