GuillaumeSmaha.gluu-configuration

Ansible Gluu: Configuration Role

==========

gluu-configuration is an Ansible role designed to quickly set up Gluu by adding or updating entries in the LDAP server.

With this role, you can handle the following configurations:

  • Global settings (appliances)
  • oxAuth JSON configuration
  • oxTrust JSON configuration
  • Attributes
  • OpenId Connect Scopes
  • OpenId Connect Clients
  • Groups
  • Users
  • Custom scripts

If you are running in cluster mode, this role will also change the default authentication settings to utilize all servers with the 'LDAP' module. It automatically uses the gluu_internal_hostname variable from each server with the 'LDAP' module.

Note that this role should be executed on only one node within the cluster.

To use cluster mode with this role, all Gluu servers must be in the gluu-servers group, and the Gluu Cluster Manager must be in the gluu-cluster-manager group.

Sections

History


Gluu's open-source server for authentication and API management allows organizations to provide single sign-on, strong authentication, and centralized management.

Requirements


To deploy, you need:

  • Ansible version 2.5.15 on your deployment machine. (Using a newer version may cause issues with python-ldap. Please refer to this GitHub issue)
  • The following Python packages installed:
    • dpath
    • pyDes
    • python3-ldap
    • ldap3
    • dnspython

You can install these dependencies by running:

$ pip install -r requirements.txt

Installation


gluu-configuration is available through Ansible Galaxy. To install the gluu-configuration role, use the command below:

$ ansible-galaxy install GuillaumeSmaha.gluu-configuration

Update


To update the role, use the --force parameter during installation. Here’s an example command:

$ ansible-galaxy install --force GuillaumeSmaha.gluu-configuration

Refer to CHANGELOG.md for updates.

Role Variables


You can define several variables in your configuration:

vars:

  # Specify a custom version of the package to install.
  gluu_version: 3.1.7

  # Global parameters for settings:
  gluu_appliances:

  # JSON operations for the oxTrust configuration.
  gluu_oxtrust_json_operations:

  # JSON operations for the oxAuth configuration.
  gluu_oxauth_json_operations:

  # Attributes to be added or updated.
  gluu_attributes:

  # OpenId Connect Scopes configuration.
  gluu_openid_connect_scopes:

  # OpenId Connect Clients configuration.
  gluu_openid_connect_clients:

  # Groups configuration.
  gluu_groups:

  # Users configuration.
  gluu_users:

  # Script configuration.
  gluu_scripts:

  # Multi-node (cluster) setup.
  gluu_cluster: False
  gluu_ldap_hostname:
  gluu_internal_hostname: '{{ gluu_hostname }}'

Deploying


To deploy, follow these steps:

  1. Create a hosts file (refer to the Ansible inventory documentation for help).
  2. Create a playbook for your app, e.g., deploy.yml.
  3. Set up the role variables (see Role Variables).
  4. Include the GuillaumeSmaha.gluu-configuration role in your playbook.
  5. Execute the deployment playbook with:
ansible-playbook -i hosts deploy.yml

If everything is set up correctly, this will install the Gluu Cluster Manager.

Example Playbook


In the example folder, you can find a sample project demonstrating how to deploy.

To run it, you need Vagrant set up and the role installed. More information about Vagrant can be found at https://www.vagrantup.com.

Follow these commands:

$ cd example
$ vagrant plugin install vagrant-lxc
$ vagrant plugin install vagrant-hostmanager
$ vagrant up --provider=lxc
$ ansible-galaxy install GuillaumeSmaha.gluu-setup GuillaumeSmaha.gluu-configuration
$ ansible-playbook -i env/ubuntu deploy.yml
$ ansible-playbook -i env/centos deploy.yml

You can access Gluu at:

Login with these credentials:

  • Username: myUser
  • Password: test

Sample Projects


You can view a complete example of a playbook here:

GitHub Link

Informazioni sul progetto

Gluu Configuration for main Gluu server

Installa
ansible-galaxy install GuillaumeSmaha.gluu-configuration
Licenza
gpl-3.0
Download
159
Proprietario