PowerFlex 4.X - PFxM Keycloak Admin Console da LDAP Grup Arama Filtresi Uygulama
Summary: Bu makalede, PFxM Keycloak Admin Console'da LDAP grubu arama filtresinin nasıl oluşturulacağı açıklanmaktadır.
Symptoms
Cause
Not: Keycloak, varsayılan olarak AD etki alanında etkin bir hesabı olan herhangi bir kullanıcının kimliğini doğrular. Bir kullanıcı filtredeki grupların bir parçası değilse yetkilendirilmez ve PFxM kullanıcı arayüzüne erişemez.
Resolution
- Herhangi bir PFxM MVM düğümünden aşağıdaki komutu çalıştırarak Keycloak kullanıcısının sırrını/parolasını alın.
kubectl get secret -n powerflex keycloak-admin-credentials -o jsonpath="{.data.password}" | base64 --decode; echo
2. Aşağıdaki URL'yi kullanarak Keycloak yönetici kullanıcı arayüzü konsoluna gidin.
https://pfmp.company.org/auth
3. Administration Console" öğesine tıklayın ve keycloak kullanıcı adı ve adım 1
4'teki komut çıktısında listelenen gizli bilgilerle oturum açın. Açılır
menüde "ana" yerine "Powerflex" alanına geçin 5. User federation" öğesine tıklayın, ardından yapılandırılmış LDAP sağlayıcısına tıklayın.
6. 'Eşleyiciler' sekmesine, ardından 'LdapGroupMapping'e
tıklayın 7. Aşağı kaydırın ve 'LDAP Filtresi' nesnesini arayın. Aşağıdaki söz dizimini kullanarak ilgilendiğiniz belirli grupları ekleyin (bu bir 'VEYA' filtresi oluşturur). Söz dizimindeki (etc) değeri, gerekirse ek gruplar eklemek için bir yer tutucudur. Eklediğiniz her grubun "cn=" değeri etrafında () olması gerekir.
(|(cn=group_name_1)(cn=group_name_2)(cn=group_name_3)(etc))
Ör.
(|(cn=Monitoring_Group)(cn=Admin_Group)(cn=Deployment_Group))
8. 'Kaydet'i tıklayın.
9. Herhangi bir PFxM MVM düğümünden aşağıdaki komutları çalıştırarak PFxM'yi LDAP sağlayıcısıyla senkronize edin.
SSO IP, platform yöneticisi belirteci, giriş IP'si ve LDAP kimliği
için sistem değişkenlerini ayarlamaNOT: PM_TOKEN değişkeni komutu için aşağıdaki değeri "Scaleio123!" olarak değiştirin.PFxM kullanıcı arayüzünde oturum açmak için kullandığınız yönetici parolası ile.
SSO_IP=`kubectl get svc -A | grep "sso " | awk '{print $4}'`
PM_TOKEN=`curl -k --location --request POST "https://${SSO_IP}:8080/rest/auth/login" --header 'Accept: application/json' --header 'Content-Type: application/json' --data '{"username": "admin","password": "Scaleio123!" }' | jq -r .access_token`
INGRESS_IP=$(kubectl get svc -A | grep -i rke2-ingress-nginx-controller | awk 'NR==1{print $5}')
LDAP_ID=$(curl -k https://${INGRESS_IP}/rest/v1/directory-services --header 'Accept: application/json' --header 'Content-Type: application/json' --header "Authorization: Bearer ${PM_TOKEN}" | jq -r '.[0].id')
10 PFxM'den LDAP sağlayıcısına senkronizasyon başlatmak için aşağıdaki komutu çalıştırın.
curl -k -X POST https://${INGRESS_IP}/rest/v1/directory-services/${LDAP_ID}/sync --header "Authorization: Bearer ${PM_TOKEN}" --header 'Accept: application/json' --header 'Content-Type: application/json'
NOT: Yukarıdaki komut başarılı olursa ekrana hiçbir şey döndürmemelidir. 15 dakika kadar bekleyin ve PFxM kullanıcı arayüzünden kullanıcı veya grup eklemeyi deneyin.