PowerFlex-godkendelse ved hjælp af LDAP fungerer ikke, når brugeren er medlem af en anden OU-sti end gruppen
Summary: Den bruger, der er medlem af den distributionsgruppe, der er tildelt LDAP-servicekonfigurationen, kunne ikke logge ind efter aktivering af LDAP-godkendelse i ScaleIO-klyngen.
Symptoms
Scenarie
Konfiguration af LDAP-tjenester til ScaleIO i enten MDM-klyngen eller gatewayen med et enkelt Active Directory-domæne. Selvom brugere og ScaleIO-gruppen også konfigureres i forskellige OU'er inden for det samme domæne, kan dette problem opstå.
Symptomer
Brugeren er i CN=testuser,OU=Users,OU=IT Dept,DC=swlab,DC=local
Gruppen er: CN=Sio_Admin_Role,OU=GlobalGroups,OU=Groups,DC=swlab,DC=local
Vi kan finde følgende advarselsmeddelelser i MDM- eller gateway-sporingsloggen.
Fejlmeddelelsen i gateway-trace.log er: 2017-06-14 11:49:46,587 [http-nio-443-exec-6] ERROR c.e.s.s.w.s.ScaleIOSecurityUtils - Brugertestbruger blev ikke fundet i gruppe CN=Sio_Admin_Role,OU=GlobalGroups,OU=Groups,DC=swlab,DC=local
Påvirkning
Nogle brugere kan ikke logge på ScaleIO-systemet eller gatewayen ved hjælp af LDAP-godkendelse.
Cause
Årsagen
Den grundlæggende årsag til dette problem er, at parameteren "--ldap_base_dn", der blev brugt, da LDAP-tjenesten blev føjet til ScaleIO-klyngen, var på et for lavt niveau.
Se nedenstående konfiguration for ovenstående eksempelproblem:
scli --add_ldap_service --ldap_service_uri "ldap://swlab.local" --ldap_base_dn "OU=GlobalGroups,OU=Groups,DC=swlab,DC=local" --ldap_service_name testldap scli --assign_ldap_groups_to_roles --administrator_role_dn "CN=Sio_Admin_Role,OU=GlobalGroups,OU=Groups,DC=swlab,DC=local" --monitor_role_dn "CN=Sio_Admin_Role,OU=GlobalGroups,OU=Groups,DC=swlab,DC=local" --ldap_service_name testldap
Dette placerer basis-dn til at begynde at søge for lavt i AD-bikubeskemaet. Når du starter med "swlab.local/Groups/GlobalGroups", kan LDAP ikke forespørge efter en bruger på et højere niveau.
Så i dette tilfælde findes "testuser" i "swlab.local/IT Dept/Users/testuser", så når gruppen "Sio_Admin_Role" forespørges, forsøger den at finde medlemsbrugeren under base_dn igen.
Brugeren findes ikke der, og login lykkes ikke.
Resolution
Løsning
Du kan løse dette problem ved at genoprette LDAP-tjenesten i ScaleIO og bruge en base_dn på et højere niveau. I ovenstående eksempel kan følgende ændres i kommandoen "add_ldap_service" scli.
scli --add_ldap_service --ldap_service_uri "ldap://swlab.local" --ldap_base_dn "DC=swlab,DC=local" --ldap_service_name testldap
Ved at ændre base_dn til at være roden af domænet kan LDAP forespørge enhver OU eller CN for den relevante bruger, der er medlem af SIO-rollegruppen.