Нужно увидеть, где мой ACL в RunDeck не работает в RunDeck 3.1.1 - PullRequest
0 голосов
/ 31 марта 2020

Мы настраиваем сайт RunDeck, чтобы пользователи могли видеть только свои собственные проекты. В рамках этой структуры мне нужно сделать пользователей, которые являются просмотрщиками работ / авторами работ / организаторами работ и администраторами проектов. У меня работают бегуны, администраторы проекта и зрители. Однако я не могу заставить писателей работать. Я использую два файла acl. Всякий раз, когда я вхожу в систему как пользователь, я не вижу кнопку «создать работу», и когда я перехожу к rundeck / project / MY_PROJECT / job / create, я получаю сообщение об ошибке «Нет разрешения на создание новой работы». Чего мне не хватает?

Это my_project_job_writer.acl

    ---
context:
  application: 'rundeck'
description: "project_job_writer"
for:
  project:
    - equals:
        name: 'MY_PROJECT'
      allow: [read]

  system:
    - match:
        name: '.*'
      allow: [read]
by:
  username: ['jack.hill','jill.hill']

---

context:
  project:
    - equals:
        name: 'MY_PROJECT'
description: "project_job_writer"
for:
  resource:
  - equals:
      kind: 'node'
    allow: [read,refresh]
  - equals:
      kind: job
    allow: [create, delete]
  - equals:
      kind: event
    allow: [read]
  job:
  - allow: [create,read,update,delete,run,kill]
    match:
      name: '.*'
  node:
  - allow: [read, run, refresh]
    match:
      nodename: '.*'
by:
  username: ['jack.hill','jill.hill']

Это system-job_writer.acl

description: Allow groups to list projects
context:
  application: 'rundeck'
for:
  project:
    - equals:
        name: 'Default'
      allow: [read]
  system:
    - match:
        name: '.*'
      allow: [read]
by:
  group: job_writer

---

description: Global write permissions to job_writer role
context:
  project: '.*'
for:
  resource:
  - equals:
      kind: 'node'
    allow: [read,refresh]
  - equals:
      kind: job
    allow: [create, delete]
  - equals:
      kind: event
    allow: [read]
  job:
  - allow: [create,read,update,delete,run,kill]
    match:
      name: '.*'
  node:
  - allow: [read, run, refresh]
    match:
      nodename: '.*'
by:
  group: job_writer

И это записи в realm.properties

jack.hill:password,user,job_writer
jill.hill:password,user,job_writer

1 Ответ

0 голосов
/ 31 марта 2020

Итак, старое ИТ-решение сработало. Я просто перезапустил сервер apache, на котором он работал, и 'bam' заработал. ну, это был потерянный час, лол. Для тех, кто хочет использовать эту политику acl, она пригодится.

...