GuillaumeSmaha.gluu-configuration
Ansible Gluu: rola konfiguracji
gluu-konfiguracja to rola Ansible, która umożliwia łatwe skonfigurowanie Gluu poprzez tworzenie lub aktualizowanie wpisów w serwerze LDAP.
Dzięki tej roli możesz tworzyć lub aktualizować:
- Ustawienia globalne (appliance)
- Konfigurację JSON oxAuth
- Konfigurację JSON oxTrust
- Atrybuty
- Zakresy OpenId Connect
- Klientów OpenId Connect
- Grupy
- Użytkowników
- Skrypty niestandardowe
W trybie klastra, ta rola również aktualizuje domyślny tryb uwierzytelniania, aby używać wszystkich serwerów z modułem 'LDAP'. Aby to zrobić automatycznie, rola wykorzysta zmienną gluu_internal_hostname
każdego serwera z modułem 'LDAP'.
Ta rola może być używana tylko na jednym węźle klastra.
Aby korzystać z funkcji trybu klastra w tej roli, wszystkie serwery Gluu muszą być w grupie gluu-servers
, a Menedżer klastra Gluu musi być w grupie gluu-cluster-manager
.
Historia
Otwarte źródło serwera uwierzytelniania i zarządzania dostępem do API Gluu umożliwia organizacjom oferowanie jednolitego logowania, silnego uwierzytelniania i centralizacji.
Wymagania
Aby wdrożyć, potrzebujesz:
- Ansible 2.5.15 na swojej maszynie wdrożeniowej. (Nowsze wersje mogą powodować problem z python-ldap) (https://github.com/GuillaumeSmaha/ansible-role-gluu-configuration/issues/2)
- Musisz również zainstalować następujące zależności Pythona:
- dpath
- pyDes
- python3-ldap
- ldap3
- dnspython
$ pip install -r requirements.txt
Instalacja
gluu-konfiguracja to rola Ansible dystrybuowana globalnie przy użyciu Ansible Galaxy. Aby zainstalować rolę gluu-konfiguracja, możesz użyć następującego polecenia.
$ ansible-galaxy install GuillaumeSmaha.gluu-configuration
Aktualizacja
Jeśli chcesz zaktualizować rolę, musisz przekazać parametr --force podczas instalacji. Sprawdź następujące polecenie:
$ ansible-galaxy install --force GuillaumeSmaha.gluu-configuration
Zobacz CHANGELOG.md
Zmienne roli
vars:
# Zdefiniuj niestandardową wersję pakietu do zainstalowania.
# Aby uzyskać listę dostępnych wersji pakietów, odwiedź: https://gluu.org/docs/ce/
gluu_version: 3.1.7
# Parametry globalne:
# - **gluuScimEnabled**: Włączyć SCIM? (włączone/wyłączone)
# - **gluuPassportEnabled**: Włączyć Passport? (włączone/wyłączone)
# - **passwordResetAllowed**: Czy zezwolić użytkownikom na resetowanie haseł? (włączone/wyłączone)
# - **gluuOrgProfileMg**: Czy zezwolić użytkownikom na edytowanie swojego profilu? (włączone/wyłączone)
# - **gluuVdsCacheRefreshPollingInterval**: Interwał dla synchronizacji odświeżenia pamięci podręcznej (wartość w minutach)
# - **gluuVdsCacheRefreshEnabled**: Włączyć odświeżenie pamięci podręcznej? (włączone/wyłączone)
# - **oxTrustCacheRefreshServerIpAddress**: Adres IP serwera odbierającego dla odświeżenia pamięci podręcznej
# - **oxAuthenticationMode**: Tryb uwierzytelniania dla wspólnego uwierzytelniania (domyślnie: auth_ldap_server)
# - **oxTrustAuthenticationMode**: Tryb uwierzytelniania dla GUI oxTrust (domyślnie: auth_ldap_server)
# *Zobacz https://github.com/GluuFederation/community-edition-setup/blob/3.1.4/templates/appliance.ldif*
# Przykład, aby włączyć SCIM i ustawić niestandardowy skrypt do uwierzytelniania:
# gluu_appliances:
# gluuScimEnabled: 'enabled'
# oxAuthenticationMode: 'basic_multi_ldap_auth'
gluu_appliances:
# _____________ (Skrót kodu z pozostałych sekcji)
Wdrażanie
Aby wdrożyć, wykonaj kilka kroków:
- Utwórz nowy plik
hosts
. Sprawdź dokumentację inwentarza Ansible, jeśli potrzebujesz pomocy. - Utwórz nowy playbook do wdrożenia swojej aplikacji, na przykład,
deploy.yml
- Skonfiguruj zmienne roli (zobacz Zmienne roli)
- Uwzględnij rolę
GuillaumeSmaha.gluu-configuration
jako część play. - Uruchom playbook wdrożeniowy.
ansible-playbook -i hosts deploy.yml
Jeśli wszystko zostało poprawnie skonfigurowane, to polecenie zainstaluje Menedżera Klastra Gluu na hoście.
Przykładowy Playbook
W folderze, można sprawdzić przykładowy projekt, który pokazuje, jak wdrożyć.
Aby go uruchomić, musisz mieć zainstalowane Vagrant i rolę. Więcej informacji na temat Vagranta znajdziesz na stronie https://www.vagrantup.com.
$ 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
Dostęp do Gluu uzyskasz, przechodząc do:
https://gluu-configuration-ubuntu/
lub
https://gluu-configuration-centos/
Możesz zalogować się do GLuu za pomocą następujących danych uwierzytelniających:
- Nazwa użytkownika: myUser
- Hasło: test
Przykładowe projekty
Pełny przykład playbooka można znaleźć tutaj:
ansible-galaxy install GuillaumeSmaha.gluu-configuration