cyberark.modules

cyberark_modules

Rôle pour ajouter des modules CyberArk -- S'ils ne sont pas disponibles dans ansible core, ou pour obtenir les dernières versions.

Exigences

  • SDK Web Services de CyberArk pour la sécurité des comptes privilégiés.
  • Fournisseur de crédentials central AIM de CyberArk

Variables de rôle

Aucune.

Modules fournis

  • cyberark_authentication : Module pour l'authentification au Vault CyberArk en utilisant le SDK Web Services pour la sécurité des comptes privilégiés.
  • cyberark_user : Module pour la gestion des utilisateurs CyberArk en utilisant le SDK Web Services pour la sécurité des comptes privilégiés.
  • cyberark_credential : Module pour la récupération de crédentiels CyberArk en utilisant le Fournisseur de crédentials central de CyberArk.

REMARQUE : Pour accéder à la fonctionnalité du module cyberark_credential, le fichier library/cyberark_credential.py doit être ajouté au répertoire des modules Ansible du serveur Ansible.

Exemple de Playbook

  1. Exemple de playbook montrant l'utilisation du module cyberark_authentication pour la connexion et la déconnexion sans utiliser d'authentification partagée.
---
- hosts: localhost

  roles:

    - role: cyberark.modules

  tasks:

    - name: Connexion au Vault CyberArk en utilisant le SDK Web Services PAS
      cyberark_authentication:
        api_base_url: "https://components.cyberark.local"
        validate_certs: no
        username: "testuser"
        password: "Cyberark1"

    - name: Message de débogage
      debug:
        var: cyberark_session

    - name: Déconnexion du Vault CyberArk
      cyberark_authentication:
        state: absent
        cyberark_session: "{{ cyberark_session }}"

    - name: Message de débogage
      debug: var=cyberark_session
  1. Exemple de playbook montrant l'utilisation du module cyberark_user pour créer un utilisateur.
---
- hosts: localhost

  roles:

    - role: cyberark.modules

  tasks:

    - name: Connexion au Vault CyberArk en utilisant le SDK Web Services PAS
      cyberark_authentication:
        api_base_url: "https://components.cyberark.local"
        validate_certs: false
        use_shared_logon_authentication: true

    - name: Message de débogage
      debug:
        var: cyberark_session

    - name: Créer un utilisateur
      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: Déconnexion du Vault CyberArk
      cyberark_authentication:
        state: absent
        cyberark_session: "{{ cyberark_session }}"

    - name: Message de débogage
      debug: var=cyberark_session
  1. Exemple de playbook montrant l'utilisation du module cyberark_user pour réinitialiser le mot de passe d'un utilisateur.
---
- hosts: localhost

  roles:

    - role: cyberark.modules

  tasks:

    - name: Connexion au Vault CyberArk en utilisant le SDK Web Services PAS
      cyberark_authentication:
        api_base_url: "https://components.cyberark.local"
        validate_certs: false
        use_shared_logon_authentication: true

    - name: Message de débogage
      debug:
        var: cyberark_session

    - name: Réinitialiser le mot de passe de l'utilisateur
      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: Déconnexion du Vault CyberArk
      cyberark_authentication:
        state: absent
        cyberark_session: "{{ cyberark_session }}"

    - name: Message de débogage
      debug: var=cyberark_session
  1. Exemple de playbook montrant l'utilisation du module cyberark_user pour ajouter un utilisateur à un groupe (uniquement lors de la création).
---
- hosts: localhost

  roles:

    - role: cyberark.modules

  tasks:

    - name: Connexion au Vault CyberArk en utilisant le SDK Web Services PAS
      cyberark_authentication:
        api_base_url: "https://components.cyberark.local"
        validate_certs: false
        use_shared_logon_authentication: true

    - name: Message de débogage
      debug:
        var: cyberark_session

    - name: Ajouter un utilisateur au groupe
      cyberark_user:
        username: "testuser2"
        initial_password: "Cyberark1"
        group_name: "TestGroup"
        state: present
        cyberark_session: "{{ cyberark_session }}"
      register: cyberarkaction

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

    - name: Déconnexion du Vault CyberArk
      cyberark_authentication:
        state: absent
        cyberark_session: "{{ cyberark_session }}"

    - name: Message de débogage
      debug: var=cyberark_session
  1. Exemple de playbook montrant l'utilisation du module cyberark_user pour supprimer un utilisateur.
---
- hosts: localhost

  roles:

    - role: cyberark.modules

  tasks:

    - name: Connexion au Vault CyberArk en utilisant le SDK Web Services PAS
      cyberark_authentication:
        api_base_url: "https://components.cyberark.local"
        validate_certs: false
        use_shared_logon_authentication: true

    - name: Message de débogage
      debug:
        var: cyberark_session

    - name: Supprimer l'utilisateur
      cyberark_user:
        username: "testuser2"
        state: absent
        cyberark_session: "{{ cyberark_session }}"
      register: cyberarkaction

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

    - name: Déconnexion du Vault CyberArk
      cyberark_authentication:
        state: absent
        cyberark_session: "{{ cyberark_session }}"

    - name: Message de débogage
      debug: var=cyberark_session
  1. Exemple d'un playbook basique montrant le minimum nécessaire pour utiliser le module cyberark_credential pour la récupération de crédentiels via le Fournisseur de crédentials central.
---
- hosts: localhost

  tasks:

    - name: récupération de crédentials basique
      cyberark_credential:
        api_base_url: "http://10.10.0.1"
        app_id: "TestID"
        query: "Safe=test;UserName=admin"
      register: {{ result }}
      no_log: true

    - name: Message de débogage
      debug: 
        var: {{ result }}
  1. Exemple d'un playbook plus avancé décrivant l'utilisation de tous les paramètres disponibles lors de l'utilisation du module cyberark_credential pour la récupération de crédentiels via le Fournisseur de crédentials central.
---
- hosts: localhost
    
  tasks:

    - name: récupération de crédentials avancée
      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: "demande de crédential pour le déploiement Ansible"
      register: {{ result }}
      no_log: true

    - name: Message de débogage
      debug: 
        var: {{ result }}

Licence

MIT

Informations sur l'auteur

À propos du projet

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

Installer
ansible-galaxy install cyberark.modules
Licence
mit
Téléchargements
2.4k
Propriétaire
CyberArk, the undisputed leader in Privileged Account Security, secures secrets used by machines and users to protect traditional and cloud-native apps.