cloudera.services.ranger_role module – Manage roles in Apache Ranger
Note
This module is part of the cloudera.services collection (version 1.0.0).
It is not included in ansible-core.
To check whether it is installed, run ansible-galaxy collection list.
To install it, use: ansible-galaxy collection install git+https://github.com/cloudera-labs/cloudera.services.git.
To use it in a playbook, specify: cloudera.services.ranger_role.
New in cloudera.services 1.1.0
Synopsis
Create, update, or delete roles in Apache Ranger.
Parameters
Parameter |
Comments |
|---|---|
The path to a client certificate for authenticating to the API endpoint. |
|
The path to a client key for authenticating to the API endpoint. |
|
A flag to enable debug logging of the module’s execution. Choices:
|
|
Description of the role. |
|
Whether to create users or groups referenced by the role that do not yet exist. Choices:
|
|
A flag to force a refresh of the API request, ignoring any cached results. Choices:
|
|
A flag to force basic authentication for API requests. Choices:
|
|
List of groups assigned to the role. |
|
Whether the group has administrative privileges over the role. Choices:
|
|
Name of the group. |
|
The User-Agent string to send with API requests. Default: |
|
Whether the role is enabled. Choices:
|
|
Name of the Ranger role. |
|
A dictionary of additional role options. |
|
The number of items to return per page in a paginated API response. Default: |
|
List of nested roles assigned to the role. |
|
Whether the nested role has administrative privileges over the role. Choices:
|
|
Name of the nested role. |
|
Whether the role should be present or absent. Choices:
|
|
The timeout in seconds for any API requests. Default: |
|
The base URL of the API endpoint, including the port if necessary. |
|
The password for authenticating to the API endpoint. |
|
The username for authenticating to the API endpoint. |
|
A flag to enable or disable GSSAPI authentication for API requests. Choices:
|
|
A flag to enable or disable the use of a proxy for API requests. Choices:
|
|
List of users assigned to the role. |
|
Whether the user has administrative privileges over the role. Choices:
|
|
Name of the user. |
|
A flag to enable or disable SSL certificate validation for API requests. Choices:
|
Attributes
Attribute |
Support |
Description |
|---|---|---|
Support: full |
This module supports check mode. |
|
Support: full |
This module supports diff mode. |
Examples
# NOTE: Examples do not include connection and authentication fields
- name: Create a Ranger role with users and groups
cloudera.services.ranger_role:
name: "test_role"
description: "A test role"
users:
- name: "admin"
is_admin: true
- name: "alice"
groups:
- name: "data_engineers"
- name: Create a Ranger role with nested roles
cloudera.services.ranger_role:
name: "parent_role"
description: "A role containing other roles"
roles:
- name: "viewer_role"
is_admin: false
- name: "editor_role"
is_admin: true
- name: Create a Ranger role and auto-create non-existent users
cloudera.services.ranger_role:
name: "new_role"
description: "Create non-existent users automatically"
users:
- name: "bob"
is_admin: false
- name: "charlie"
is_admin: false
ensure_members_exist: true
- name: Create a Ranger role and auto-create non-existent users and groups
cloudera.services.ranger_role:
name: "comprehensive_role"
description: "Create non-existent users and groups automatically"
users:
- name: "dave"
is_admin: true
- name: "john"
is_admin: false
groups:
- name: "analytics_team"
is_admin: false
- name: "security_team"
is_admin: true
ensure_members_exist: true
- name: Delete a Ranger role
cloudera.services.ranger_role:
name: "test_role"
state: "absent"
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key |
Description |
|---|---|
A dictionary containing details about the role. Returned: always |
|
Timestamp of when the role was created (epoch millis). Returned: always |
|
Username of the creator of the role. Returned: always |
|
Username of the role creator, as recorded by Ranger. Returned: sometimes |
|
Description of the role. Returned: always |
|
List of groups assigned to the role. Returned: always |
|
Whether the group has administrative privileges over the role. Returned: always |
|
Name of the group. Returned: always |
|
Globally unique identifier of the role. Returned: always |
|
Unique numeric ID of the role. Returned: always |
|
Whether the role is enabled. Returned: always |
|
Name of the role. Returned: always |
|
Dictionary of additional role options. Returned: always |
|
List of nested roles assigned to the role. Returned: always |
|
Whether the nested role has administrative privileges over the role. Returned: always |
|
Name of the nested role. Returned: always |
|
Timestamp of the last update (epoch millis). Returned: always |
|
Username of the last user who updated the role. Returned: always |
|
List of users assigned to the role. Returned: always |
|
Whether the user has administrative privileges over the role. Returned: always |
|
Name of the user. Returned: always |
|
Version number of the role definition. Returned: always |