Ja .. Glücklich zu helfen.
Ich nehme an, Sie haben bereits ein Projekt und einen Job dort. Sagen Sie Projekt Test und Job testjob. Ich nehme an, Sie haben eine Rolle/Gruppe in der WEB.xml-Datei als testrole erstellt und Sie haben eine .aclpolicy als test.aclpolicy. Die oben genannten Materialien haben eine ausführliche Dokumentation zu Rundeck, es stimmt jedoch, dass sie keine bessere Dokumentation zu verschiedenen Anwendungsfällen von rd-acl haben.
In Ihrem Fall, wenn Sie möchten, dass Ihr Benutzer "testuser" eine Jobausführung nur ausführt/liest/killt, verwenden Sie die folgende 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
Im Fall, wenn Sie gleiches Recht auf mehrere Aufträge in einem gleichen Projekt für den gleichen Benutzer, einfach ersetzen „gleich“ mit „Übereinstimmung“ und unter dem Namen Parameter, geben Sie Ihre Jobs Trennen ein Rohres „geben wollten | " wie „testjob1 | testjob2“ ..
das wahr ist. Aber acl ist immer dazu gedacht, die Zugriffsebenen zu verengen. Wenn Sie eine Rolle mit Benutzern benötigen, um an allen Jobs zu arbeiten, kopieren Sie besser die Admin-Benutzer-ACL-Richtlinie mit einem separaten Benutzernamen. –