cyberark.modules

cyberark_modules

用于添加CyberArk模块的角色——如果在Ansible核心中不可用,或获取最新版本。

要求

  • CyberArk特权账户安全Web服务SDK。
  • CyberArk AIM中央凭据提供程序。

角色变量

无。

提供的模块

  • cyberark_authentication: 使用特权账户安全Web服务SDK进行CyberArk Vault认证的模块。
  • cyberark_user: 使用特权账户安全Web服务SDK进行CyberArk用户管理的模块。
  • cyberark_credential: 使用Cyberark中央凭据提供程序进行CyberArk凭据检索的模块。

注意: 要使用cyberark_credential功能,需将library/cyberark_credential.py文件添加到Ansible服务器的Ansible模块目录中。

示例剧本

  1. 示例剧本展示如何使用cyberark_authentication模块进行登录和注销,而不使用共享登录认证。
---
- hosts: localhost

  roles:

    - role: cyberark.modules

  tasks:

    - name: 使用PAS Web服务SDK登录CyberArk Vault
      cyberark_authentication:
        api_base_url: "https://components.cyberark.local"
        validate_certs: no
        username: "testuser"
        password: "Cyberark1"


    - name: 调试信息
      debug:
        var: cyberark_session


    - name: 从CyberArk Vault注销
      cyberark_authentication:
        state: absent
        cyberark_session: "{{ cyberark_session }}"

    - name: 调试信息
      debug: var=cyberark_session
  1. 示例剧本展示如何使用cyberark_user模块创建用户。
---
- hosts: localhost

  roles:

    - role: cyberark.modules

  tasks:

    - name: 使用PAS Web服务SDK登录CyberArk Vault
      cyberark_authentication:
        api_base_url: "https://components.cyberark.local"
        validate_certs: false
        use_shared_logon_authentication: true

    - name: 调试信息
      debug:
        var: cyberark_session

    - name: 创建用户
      cyberark_user:
        username: "testuser2"
        initial_password: "Cyberark1"
        user_type_name: "EPVUser"
        change_password_on_the_next_logon: false
        group_name: "TestGroup"
        state: present
        cyberark_session: "{{ cyberark_session }}"
      register: cyberarkaction

    - debug: msg="{{cyberarkaction.cyberark_user.result}}"
      when: cyberarkaction.status_code == 201

    - name: 从CyberArk Vault注销
      cyberark_authentication:
        state: absent
        cyberark_session: "{{ cyberark_session }}"

    - name: 调试信息
      debug: var=cyberark_session
  1. 示例剧本展示如何使用cyberark_user模块重置用户凭据。
---
- hosts: localhost

  roles:

    - role: cyberark.modules

  tasks:

    - name: 使用PAS Web服务SDK登录CyberArk Vault
      cyberark_authentication:
        api_base_url: "https://components.cyberark.local"
        validate_certs: false
        use_shared_logon_authentication: true

    - name: 调试信息
      debug:
        var: cyberark_session

    - name: 重置用户凭据
      cyberark_user:
        username: "testuser2"
        new_password: "Cyberark123"
        disabled: false
        state: present
        cyberark_session: "{{ cyberark_session }}"
      register: cyberarkaction

    - debug: msg="{{cyberarkaction.cyberark_user.result}}"
      when: cyberarkaction.status_code == 200

    - name: 从CyberArk Vault注销
      cyberark_authentication:
        state: absent
        cyberark_session: "{{ cyberark_session }}"

    - name: 调试信息
      debug: var=cyberark_session
  1. 示例剧本展示如何使用cyberark_user模块将用户添加到组(仅在创建时)。
---
- hosts: localhost

  roles:

    - role: cyberark.modules

  tasks:

    - name: 使用PAS Web服务SDK登录CyberArk Vault
      cyberark_authentication:
        api_base_url: "https://components.cyberark.local"
        validate_certs: false
        use_shared_logon_authentication: true

    - name: 调试信息
      debug:
        var: cyberark_session

    - name: 将用户加入组
      cyberark_user:
        username: "testuser2"
        initial_password: "Cyberark1"
        group_name: "TestGroup"
        state: present
        cyberark_session: "{{ cyberark_session }}"
      register: cyberarkaction

    - debug: msg="{{cyberarkaction}}"

    - name: 从CyberArk Vault注销
      cyberark_authentication:
        state: absent
        cyberark_session: "{{ cyberark_session }}"

    - name: 调试信息
      debug: var=cyberark_session
  1. 示例剧本展示如何使用cyberark_user模块删除用户。
---
- hosts: localhost

  roles:

    - role: cyberark.modules

  tasks:

    - name: 使用PAS Web服务SDK登录CyberArk Vault
      cyberark_authentication:
        api_base_url: "https://components.cyberark.local"
        validate_certs: false
        use_shared_logon_authentication: true

    - name: 调试信息
      debug:
        var: cyberark_session

    - name: 删除用户
      cyberark_user:
        username: "testuser2"
        state: absent
        cyberark_session: "{{ cyberark_session }}"
      register: cyberarkaction

    - debug: msg="{{cyberarkaction}}"

    - name: 从CyberArk Vault注销
      cyberark_authentication:
        state: absent
        cyberark_session: "{{ cyberark_session }}"

    - name: 调试信息
      debug: var=cyberark_session
  1. 示例基本剧本展示使用cyberark_credential模块通过中央凭据提供程序检索凭据所需的最少内容。
---
- hosts: localhost

  tasks:

    - name: 基本凭据检索
      cyberark_credential:
        api_base_url: "http://10.10.0.1"
        app_id: "TestID"
        query: "Safe=test;UserName=admin"
      register: {{ result }}
      no_log: true


    - name: 调试信息
      debug: 
        var: {{ result }}
  1. 示例更高级的剧本说明使用cyberark_credential模块检索凭据时可用的所有参数。
---
- hosts: localhost
    
  tasks:

    - name: 高级凭据检索
      cyberark_credential:
        api_base_url: "https://components.cyberark.local"
        validate_certs: yes
        client_cert: /etc/pki/ca-trust/source/client.pem
        client_key: /etc/pki/ca-trust/source/priv-key.pem
        app_id: "TestID"
        query: "Safe=test;UserName=admin"
        connection_timeout: 60
        query_format: Exact
        fail_request_on_password_change: True
        reason: "请求凭据用于Ansible部署"
      register: {{ result }}
      no_log: true


    - name: 调试信息
      debug: 
        var: {{ result }}

许可证

MIT

作者信息

关于项目

CyberArk Ansible Modules for Authentication, User Management, and Credential Retrieval using AIM Central Credential Provider's REST API.

安装
ansible-galaxy install cyberark.modules
许可证
mit
下载
2.4k
拥有者
CyberArk, the undisputed leader in Privileged Account Security, secures secrets used by machines and users to protect traditional and cloud-native apps.