Skip to content
Snippets Groups Projects
Unverified Commit e88c5a06 authored by Thomas Woerner's avatar Thomas Woerner Committed by GitHub
Browse files

Merge pull request #178 from rjeffman/sudorule_update

Add missing attributes to ipasudorule.
parents c47bc309 dc0a5585
No related branches found
No related tags found
No related merge requests found
Showing with 504 additions and 149 deletions
...@@ -68,7 +68,7 @@ Example playbook to make sure sudocmds are present in Sudo Rule: ...@@ -68,7 +68,7 @@ Example playbook to make sure sudocmds are present in Sudo Rule:
- ipasudorule: - ipasudorule:
ipaadmin_password: MyPassword123 ipaadmin_password: MyPassword123
name: testrule1 name: testrule1
cmd: allow_sudocmd:
- /sbin/ifconfig - /sbin/ifconfig
action: member action: member
``` ```
...@@ -87,7 +87,7 @@ Example playbook to make sure sudocmds are not present in Sudo Rule: ...@@ -87,7 +87,7 @@ Example playbook to make sure sudocmds are not present in Sudo Rule:
- ipasudorule: - ipasudorule:
ipaadmin_password: MyPassword123 ipaadmin_password: MyPassword123
name: testrule1 name: testrule1
cmd: allow_sudocmd:
- /sbin/ifconfig - /sbin/ifconfig
action: member action: member
state: absent state: absent
...@@ -130,8 +130,14 @@ Variable | Description | Required ...@@ -130,8 +130,14 @@ Variable | Description | Required
`hostgroup` | List of host group name strings assigned to this sudorule. | no `hostgroup` | List of host group name strings assigned to this sudorule. | no
`user` | List of user name strings assigned to this sudorule. | no `user` | List of user name strings assigned to this sudorule. | no
`group` | List of user group name strings assigned to this sudorule. | no `group` | List of user group name strings assigned to this sudorule. | no
`cmd` | List of sudocmd name strings assigned to this sudorule. | no `allow_sudocmd` | List of sudocmd name strings assigned to the allow group of this sudorule. | no
`cmdgroup` | List of sudocmd group name strings assigned wto this sudorule. | no `deny_sudocmd` | List of sudocmd name strings assigned to the deny group of this sudorule. | no
`allow_sudocmdgroup` | List of sudocmd groups name strings assigned to the allow group of this sudorule. | no
`deny_sudocmdgroup` | List of sudocmd groups name strings assigned to the deny group of this sudorule. | no
`sudooption` \| `option` | List of options to the sudorule | no
`order` | Integer to order the sudorule | no
`runasuser` | List of users for Sudo to execute as. | no
`runasgroup` | List of groups for Sudo to execute as. | no
`action` | Work on sudorule or member level. It can be on of `member` or `sudorule` and defaults to `sudorule`. | no `action` | Work on sudorule or member level. It can be on of `member` or `sudorule` and defaults to `sudorule`. | no
`state` | The state to ensure. It can be one of `present`, `absent`, `enabled` or `disabled`, default: `present`. | no `state` | The state to ensure. It can be one of `present`, `absent`, `enabled` or `disabled`, default: `present`. | no
......
---
- name: Tests
hosts: ipaserver
become: true
gather_facts: false
tasks:
# Ensure sudooption is absent in sudorule
- ipasudorule:
ipaadmin_password: MyPassword123
name: testrule1
sudooption: "!root"
action: member
state: absent
---
- name: Tests
hosts: ipaserver
become: true
gather_facts: false
tasks:
# Ensure sudooption is present in sudorule
- ipasudorule:
ipaadmin_password: MyPassword123
name: testrule1
sudooption: "!root"
action: member
---
- name: Tests
hosts: ipaserver
become: true
gather_facts: false
tasks:
# Ensure sudorule is present with the given order.
- ipasudorule:
ipaadmin_password: MyPassword123
name: testrule1
order: 2
...@@ -9,4 +9,6 @@ ...@@ -9,4 +9,6 @@
ipaadmin_password: MyPassword123 ipaadmin_password: MyPassword123
name: testrule1 name: testrule1
description: A test sudo rule. description: A test sudo rule.
allow_sudocmd: /bin/ls
deny_sudocmd: /bin/vim
state: present state: present
---
- name: Tests
hosts: ipaserver
become: true
gather_facts: false
tasks:
# Ensure sudorule is present with the given order.
- ipasudorule:
ipaadmin_password: MyPassword123
name: testrule1
runasuser: admin
action: member
state: absent
---
- name: Tests
hosts: ipaserver
become: true
gather_facts: false
tasks:
# Ensure sudorule is present with the given order.
- ipasudorule:
ipaadmin_password: MyPassword123
name: testrule1
runasuser: admin
action: member
...@@ -8,8 +8,13 @@ ...@@ -8,8 +8,13 @@
- ipasudorule: - ipasudorule:
ipaadmin_password: MyPassword123 ipaadmin_password: MyPassword123
name: testrule1 name: testrule1
cmd: allow_sudocmd:
- /sbin/ifconfig - /sbin/ifconfig
deny_sudocmd:
- /usr/bin/vim - /usr/bin/vim
allow_sudocmdgroup:
- devops
deny_sudocmdgroup:
- users
action: member action: member
state: absent state: absent
...@@ -8,7 +8,12 @@ ...@@ -8,7 +8,12 @@
- ipasudorule: - ipasudorule:
ipaadmin_password: MyPassword123 ipaadmin_password: MyPassword123
name: testrule1 name: testrule1
cmd: allow_sudocmd:
- /sbin/ifconfig - /sbin/ifconfig
deny_sudocmd:
- /usr/bin/vim - /usr/bin/vim
allow_sudocmdgroup:
- devops
deny_sudocmdgroup:
- users
action: member action: member
This diff is collapsed.
...@@ -16,15 +16,22 @@ ...@@ -16,15 +16,22 @@
- name: Ensure some sudocmds are available - name: Ensure some sudocmds are available
ipasudocmd: ipasudocmd:
ipaadmin_password: pass1234 ipaadmin_password: MyPassword123
name: name:
- /sbin/ifconfig - /sbin/ifconfig
- /usr/bin/vim - /usr/bin/vim
state: present state: present
- name: Ensure sudocmdgroup is available
ipasudocmdgroup:
ipaadmin_password: MyPassword123
name: test_sudorule
sudocmd: /usr/bin/vim
state: present
- name: Ensure sudorules are absent - name: Ensure sudorules are absent
ipasudorule: ipasudorule:
ipaadmin_password: pass1234 ipaadmin_password: MyPassword123
name: name:
- testrule1 - testrule1
- allusers - allusers
...@@ -34,21 +41,21 @@ ...@@ -34,21 +41,21 @@
- name: Ensure sudorule is present - name: Ensure sudorule is present
ipasudorule: ipasudorule:
ipaadmin_password: pass1234 ipaadmin_password: MyPassword123
name: testrule1 name: testrule1
register: result register: result
failed_when: not result.changed failed_when: not result.changed
- name: Ensure sudorule is present again - name: Ensure sudorule is present again
ipasudorule: ipasudorule:
ipaadmin_password: pass1234 ipaadmin_password: MyPassword123
name: testrule1 name: testrule1
register: result register: result
failed_when: result.changed failed_when: result.changed
- name: Ensure sudorule is present, runAsUserCategory. - name: Ensure sudorule is present, runAsUserCategory.
ipasudorule: ipasudorule:
ipaadmin_password: pass1234 ipaadmin_password: MyPassword123
name: testrule1 name: testrule1
runAsUserCategory: all runAsUserCategory: all
register: result register: result
...@@ -56,7 +63,7 @@ ...@@ -56,7 +63,7 @@
- name: Ensure sudorule is present, with usercategory 'all' - name: Ensure sudorule is present, with usercategory 'all'
ipasudorule: ipasudorule:
ipaadmin_password: pass1234 ipaadmin_password: MyPassword123
name: allusers name: allusers
usercategory: all usercategory: all
register: result register: result
...@@ -64,7 +71,7 @@ ...@@ -64,7 +71,7 @@
- name: Ensure sudorule is present, with usercategory 'all', again - name: Ensure sudorule is present, with usercategory 'all', again
ipasudorule: ipasudorule:
ipaadmin_password: pass1234 ipaadmin_password: MyPassword123
name: allusers name: allusers
usercategory: all usercategory: all
register: result register: result
...@@ -72,7 +79,7 @@ ...@@ -72,7 +79,7 @@
- name: Ensure sudorule is present, with hostategory 'all' - name: Ensure sudorule is present, with hostategory 'all'
ipasudorule: ipasudorule:
ipaadmin_password: pass1234 ipaadmin_password: MyPassword123
name: allhosts name: allhosts
hostcategory: all hostcategory: all
register: result register: result
...@@ -80,7 +87,7 @@ ...@@ -80,7 +87,7 @@
- name: Ensure sudorule is present, with hostategory 'all', again - name: Ensure sudorule is present, with hostategory 'all', again
ipasudorule: ipasudorule:
ipaadmin_password: pass1234 ipaadmin_password: MyPassword123
name: allhosts name: allhosts
hostcategory: all hostcategory: all
register: result register: result
...@@ -88,13 +95,13 @@ ...@@ -88,13 +95,13 @@
- name: Ensure sudorule is disabled - name: Ensure sudorule is disabled
ipasudorule: ipasudorule:
ipaadmin_password: pass1234 ipaadmin_password: MyPassword123
name: testrule1 name: testrule1
state: disabled state: disabled
- name: Ensure sudorule is disabled, again - name: Ensure sudorule is disabled, again
ipasudorule: ipasudorule:
ipaadmin_password: pass1234 ipaadmin_password: MyPassword123
name: testrule1 name: testrule1
state: disabled state: disabled
register: result register: result
...@@ -102,7 +109,7 @@ ...@@ -102,7 +109,7 @@
- name: Ensure sudorule is enabled - name: Ensure sudorule is enabled
ipasudorule: ipasudorule:
ipaadmin_password: pass1234 ipaadmin_password: MyPassword123
name: testrule1 name: testrule1
state: enabled state: enabled
register: result register: result
...@@ -110,37 +117,77 @@ ...@@ -110,37 +117,77 @@
- name: Ensure sudorule is enabled, again - name: Ensure sudorule is enabled, again
ipasudorule: ipasudorule:
ipaadmin_password: pass1234 ipaadmin_password: MyPassword123
name: testrule1 name: testrule1
state: enabled state: enabled
register: result register: result
failed_when: result.changed failed_when: result.changed
- name: Ensure sudorule is present and some sudocmd are a member of it. - name: Ensure sudorule is present and some sudocmd are allowed.
ipasudorule: ipasudorule:
ipaadmin_password: pass1234 ipaadmin_password: MyPassword123
name: testrule1 name: testrule1
cmd: allow_sudocmd:
- /sbin/ifconfig - /sbin/ifconfig
- /usr/bin/vim
action: member action: member
register: result register: result
failed_when: not result.changed failed_when: not result.changed
- name: Ensure sudorule is present and some sudocmd are a member of it, again. - name: Ensure sudorule is present and some sudocmd are allowed, again.
ipasudorule: ipasudorule:
ipaadmin_password: pass1234 ipaadmin_password: MyPassword123
name: testrule1 name: testrule1
cmd: allow_sudocmd:
- /sbin/ifconfig - /sbin/ifconfig
action: member
register: result
failed_when: result.changed
- name: Ensure sudorule is present and some sudocmd are denyed.
ipasudorule:
ipaadmin_password: MyPassword123
name: testrule1
deny_sudocmd:
- /usr/bin/vim
action: member
register: result
failed_when: not result.changed
- name: Ensure sudorule is present and some sudocmd are denyed, again.
ipasudorule:
ipaadmin_password: MyPassword123
name: testrule1
deny_sudocmd:
- /usr/bin/vim - /usr/bin/vim
action: member action: member
register: result register: result
failed_when: result.changed failed_when: result.changed
- name: Ensure sudorule is present and, sudocmds are absent.
ipasudorule:
ipaadmin_password: MyPassword123
name: testrule1
allow_sudocmd: /sbin/ifconfig
deny_sudocmd: /usr/bin/vim
action: member
state: absent
register: result
failed_when: not result.changed
- name: Ensure sudorule is present and, sudocmds are absent, again.
ipasudorule:
ipaadmin_password: MyPassword123
name: testrule1
allow_sudocmd: /sbin/ifconfig
deny_sudocmd: /usr/bin/vim
action: member
state: absent
register: result
failed_when: result.changed
- name: Ensure sudorule is present with cmdcategory 'all'. - name: Ensure sudorule is present with cmdcategory 'all'.
ipasudorule: ipasudorule:
ipaadmin_password: pass1234 ipaadmin_password: MyPassword123
name: allcommands name: allcommands
cmdcategory: all cmdcategory: all
register: result register: result
...@@ -148,7 +195,7 @@ ...@@ -148,7 +195,7 @@
- name: Ensure sudorule is present with cmdcategory 'all', again. - name: Ensure sudorule is present with cmdcategory 'all', again.
ipasudorule: ipasudorule:
ipaadmin_password: pass1234 ipaadmin_password: MyPassword123
name: allcommands name: allcommands
cmdcategory: all cmdcategory: all
register: result register: result
...@@ -156,7 +203,7 @@ ...@@ -156,7 +203,7 @@
- name: Ensure host "{{ groups.ipaserver[0] }}" is present in sudorule. - name: Ensure host "{{ groups.ipaserver[0] }}" is present in sudorule.
ipasudorule: ipasudorule:
ipaadmin_password: pass1234 ipaadmin_password: MyPassword123
name: testrule1 name: testrule1
host: "{{ groups.ipaserver[0] }}" host: "{{ groups.ipaserver[0] }}"
action: member action: member
...@@ -165,7 +212,7 @@ ...@@ -165,7 +212,7 @@
- name: Ensure host "{{ groups.ipaserver[0] }}" is present in sudorule, again. - name: Ensure host "{{ groups.ipaserver[0] }}" is present in sudorule, again.
ipasudorule: ipasudorule:
ipaadmin_password: pass1234 ipaadmin_password: MyPassword123
name: testrule1 name: testrule1
host: "{{ groups.ipaserver[0] }}" host: "{{ groups.ipaserver[0] }}"
action: member action: member
...@@ -190,25 +237,77 @@ ...@@ -190,25 +237,77 @@
register: result register: result
failed_when: result.changed failed_when: result.changed
- name: Ensure sudorule sudocmds are absent - name: Ensure sudorule is present, with an allow_sudocmdgroup.
ipasudorule: ipasudorule:
ipaadmin_password: pass1234 ipaadmin_password: MyPassword123
name: testrule1 name: testrule1
cmd: allow_sudocmdgroup: test_sudorule
- /sbin/ifconfig state: present
- /usr/bin/vim register: result
failed_when: not result.changed
- name: Ensure sudorule is present, with an allow_sudocmdgroup, again.
ipasudorule:
ipaadmin_password: MyPassword123
name: testrule1
allow_sudocmdgroup: test_sudorule
state: present
register: result
failed_when: result.changed
- name: Ensure sudorule is present, but allow_sudocmdgroup is absent.
ipasudorule:
ipaadmin_password: MyPassword123
name: testrule1
allow_sudocmdgroup: test_sudorule
action: member action: member
state: absent state: absent
register: result register: result
failed_when: not result.changed failed_when: not result.changed
- name: Ensure sudorule sudocmds are absent, again - name: Ensure sudorule is present, but allow_sudocmdgroup is absent.
ipasudorule: ipasudorule:
ipaadmin_password: pass1234 ipaadmin_password: MyPassword123
name: testrule1 name: testrule1
cmd: allow_sudocmdgroup: test_sudorule
- /sbin/ifconfig action: member
- /usr/bin/vim state: absent
register: result
failed_when: result.changed
- name: Ensure sudorule is present, with an deny_sudocmdgroup.
ipasudorule:
ipaadmin_password: MyPassword123
name: testrule1
deny_sudocmdgroup: test_sudorule
state: present
register: result
failed_when: not result.changed
- name: Ensure sudorule is present, with an deny_sudocmdgroup, again.
ipasudorule:
ipaadmin_password: MyPassword123
name: testrule1
deny_sudocmdgroup: test_sudorule
state: present
register: result
failed_when: result.changed
- name: Ensure sudorule is present, but deny_sudocmdgroup is absent.
ipasudorule:
ipaadmin_password: MyPassword123
name: testrule1
deny_sudocmdgroup: test_sudorule
action: member
state: absent
register: result
failed_when: not result.changed
- name: Ensure sudorule is present, but deny_sudocmdgroup is absent, again.
ipasudorule:
ipaadmin_password: MyPassword123
name: testrule1
deny_sudocmdgroup: test_sudorule
action: member action: member
state: absent state: absent
register: result register: result
...@@ -216,7 +315,7 @@ ...@@ -216,7 +315,7 @@
- name: Ensure sudorule is absent - name: Ensure sudorule is absent
ipasudorule: ipasudorule:
ipaadmin_password: pass1234 ipaadmin_password: MyPassword123
name: testrule1 name: testrule1
state: absent state: absent
register: result register: result
...@@ -224,7 +323,7 @@ ...@@ -224,7 +323,7 @@
- name: Ensure sudorule is absent, again. - name: Ensure sudorule is absent, again.
ipasudorule: ipasudorule:
ipaadmin_password: pass1234 ipaadmin_password: MyPassword123
name: testrule1 name: testrule1
state: absent state: absent
register: result register: result
...@@ -232,7 +331,7 @@ ...@@ -232,7 +331,7 @@
- name: Ensure sudorule allhosts is absent - name: Ensure sudorule allhosts is absent
ipasudorule: ipasudorule:
ipaadmin_password: pass1234 ipaadmin_password: MyPassword123
name: allhosts name: allhosts
state: absent state: absent
register: result register: result
...@@ -240,7 +339,7 @@ ...@@ -240,7 +339,7 @@
- name: Ensure sudorule allhosts is absent, again - name: Ensure sudorule allhosts is absent, again
ipasudorule: ipasudorule:
ipaadmin_password: pass1234 ipaadmin_password: MyPassword123
name: allhosts name: allhosts
state: absent state: absent
register: result register: result
...@@ -248,7 +347,7 @@ ...@@ -248,7 +347,7 @@
- name: Ensure sudorule allusers is absent - name: Ensure sudorule allusers is absent
ipasudorule: ipasudorule:
ipaadmin_password: pass1234 ipaadmin_password: MyPassword123
name: allusers name: allusers
state: absent state: absent
register: result register: result
...@@ -256,7 +355,7 @@ ...@@ -256,7 +355,7 @@
- name: Ensure sudorule allusers is absent, again - name: Ensure sudorule allusers is absent, again
ipasudorule: ipasudorule:
ipaadmin_password: pass1234 ipaadmin_password: MyPassword123
name: allusers name: allusers
state: absent state: absent
register: result register: result
...@@ -264,7 +363,7 @@ ...@@ -264,7 +363,7 @@
- name: Ensure sudorule allcommands is absent - name: Ensure sudorule allcommands is absent
ipasudorule: ipasudorule:
ipaadmin_password: pass1234 ipaadmin_password: MyPassword123
name: allcommands name: allcommands
state: absent state: absent
register: result register: result
...@@ -272,8 +371,29 @@ ...@@ -272,8 +371,29 @@
- name: Ensure sudorule allcommands is absent, again - name: Ensure sudorule allcommands is absent, again
ipasudorule: ipasudorule:
ipaadmin_password: pass1234 ipaadmin_password: MyPassword123
name: allcommands name: allcommands
state: absent state: absent
register: result register: result
failed_when: result.changed failed_when: result.changed
# cleanup
- name : Ensure sudocmdgroup is absent
ipasudocmdgroup:
ipaadmin_password: MyPassword123
name: test_sudorule
state: absent
- name: Ensure hostgroup is absent.
ipahostgroup:
ipaadmin_password: MyPassword123
name: cluster
state: absent
- name: Ensure sudocmds are absent
ipasudocmd:
ipaadmin_password: MyPassword123
name:
- /sbin/ifconfig
- /usr/bin/vim
state: absent
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment