PowerFlex 4.X – Sådan anvender du LDAP-gruppesøgefilter i PFxM Keycloak Admin Console
Summary: Denne artikel forklarer, hvordan du opretter et LDAP-gruppesøgefilter i PFxM Keycloak Admin Console.
Symptoms
Cause
Seddel: Keycloak godkender som standard enhver bruger med en aktiv konto i AD-domænet. Hvis en bruger ikke er en del af grupperne i filteret, godkendes vedkommende ikke, og vedkommende har ikke adgang til PFxM-brugergrænsefladen.
Resolution
- Hent Keycloak-brugerens hemmelighed/adgangskode ved at køre følgende kommando fra en PFxM MVM-node.
kubectl get secret -n powerflex keycloak-admin-credentials -o jsonpath="{.data.password}" | base64 --decode; echo
2. Gå til Keycloak admin-brugergrænsefladekonsollen ved hjælp af følgende URL.
https://pfmp.company.org/auth
3. Klik på 'Administration Console' og log ind med brugernavnet keycloak og hemmeligheden angivet i outputtet fra kommandoen i trin 1
4. Skift fra "master" til "Powerflex"-
området i rullemenuen 5. Klik på 'Brugersammenslutning', og klik derefter på den konfigurerede LDAP-udbyder.
6. Klik på fanen 'Mappers', og klik derefter på 'LdapGroupMapping'
7. Rul ned og se efter objektet 'LDAP-filter'. Tilføj de specifikke grupper, du er interesseret i, ved hjælp af syntaksen nedenfor (dette opretter et 'ELLER'-filter). Værdien (etc) i syntaksen er en pladsholder til tilføjelse af yderligere grupper, hvis det er nødvendigt. Hver gruppe, du tilføjer, har brug for () omkring værdien "cn=".
(|(cn=group_name_1)(cn=group_name_2)(cn=group_name_3)(etc))
Eks.
(|(cn=Monitoring_Group)(cn=Admin_Group)(cn=Deployment_Group))
8. Klik på 'Gem'.
9. Synkroniser PFxM med LDAP-udbyderen ved at køre følgende kommandoer fra en PFxM MVM-node.
Indstil systemvariabler for SSO IP, platformsadministratortoken, indgående IP og LDAP-id
SEDDEL: For kommandoen PM_TOKEN variabel skal du erstatte følgende værdi "Scaleio123!" med administratoradgangskoden , du bruger til at logge på PFxM-brugergrænsefladen.
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 Kør følgende kommando for at starte en synkronisering fra PFxM til LDAP-udbyderen.
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'
BEMÆRK: Kommandoen ovenfor bør ikke returnere noget til skærmen, hvis den lykkes. Vent i op til 15 minutter, og prøv at tilføje bruger eller gruppe fra PFxM-brugergrænsefladen.