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
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 Data Type Environment Variable Comments
actions
required
list The actions allowed for the permission definition.
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
required
bool If the permission is enabled or not.
groups list The groups assigned for the permission definition.
name
required
str The name of the permission
object_types list The permitted object_types for the permission definition.
query_params list 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 Use C(present) or C(absent) for adding or removing.
token
required
str The token created within Nautobot to authorize API access Can be omitted if the E(NAUTOBOT_TOKEN) environment variable is configured.
url
required
str 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 The users assigned for the permission definition.
validate_certs raw 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

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)