Skip to content

admin_permission

Collection Note

This module is part of the networktocode.nautobot collection. To install the collection, use:

ansible-galaxy collection install networktocode.nautobot
Added in version 5.3.0.

You need further requirements to be able to use this module, see the Requirements section for details.

Synopsis

  • Creates, updates or removes object permissions from Nautobot

Requirements

The following Python packages are needed on the host that executes this module:

Parameters

Parameter Defaults / Choices Comments
actions
list / elements=str
Choices: view, add, change, delete, run The actions allowed for the permission definition.
Required if I(state=present) and the permission does not exist yet
api_version
str
API Version Nautobot REST API
Version Added: 4.1.0
constraints
json
The constraints for the permission definition.
description
str
The description of the permission
enabled
bool
If the permission is enabled or not.
Required if I(state=present) and the permission does not exist yet
groups
list / elements=str
The groups assigned for the permission definition.
id
str
The UUID of the object to operate on
Version Added: 5.13.0
name
str
The name of the permission
Required if I(state=present) and the permission does not exist yet
object_types
list / elements=str
The permitted object_types for the permission definition.
query_params
list / elements=str
This can be used to override the specified values in ALLOWED_QUERY_PARAMS that is defined
in plugins/module_utils/utils.py and provides control to users on what may make
an object unique in their environment.
Version Added: 3.0.0
state
str
Default: present
Choices: absent, present
Use C(present) or C(absent) for adding or removing.
token
str
required
The token created within Nautobot to authorize API access
Can be omitted if the E(NAUTOBOT_TOKEN) environment variable is configured.
url
str
required
The URL of the Nautobot instance resolvable by the Ansible host (for example: http://nautobot.example.com:8000)
Can be omitted if the E(NAUTOBOT_URL) environment variable is configured.
users
list / elements=str
The users assigned for the permission definition.
validate_certs
raw
Default: True
If C(no), SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates.
Can be omitted if the E(NAUTOBOT_VALIDATE_CERTS) environment variable is configured.

Notes

Note

  • This should be ran with connection C(local) and hosts C(localhost)

Examples

- name: "Test Nautobot modules"
  connection: local
  hosts: localhost
  gather_facts: false

  tasks:
    - name: Create object permission within Nautobot with only required information
      networktocode.nautobot.admin_permission:
        url: http://nautobot.local
        token: thisIsMyToken
        name: read only
        description: "ro permissions"
        enabled: true
        object_types:
          - "dcim.device"
        actions:
          - view
          - change
        users:
          - nb_user
        groups:
          - read_only_group
        state: present

    - name: Delete permission
      networktocode.nautobot.admin_permission:
        url: http://nautobot.local
        token: thisIsMyToken
        name: read only
        description: "ro permissions"
        enabled: true
        object_types:
          - "dcim.device"
        actions:
          - view
          - change
        users:
          - nb_user
        groups:
          - read_only_group
        state: absent

    - name: Delete permission by id
      networktocode.nautobot.admin_permission:
        url: http://nautobot.local
        token: thisIsMyToken
        id: 00000000-0000-0000-0000-000000000000
        state: absent

Return Values

Key Data Type Description Returned
admin_permission dict Serialized object as created or already existent within Nautobot success (when I(state=present))
msg str Message indicating failure or info about what has been achieved always

Authors

  • Jeff Kala (@jeffkala)