U kunt de werkplek Verificatie (Authentication) gebruiken om Directory Services voor SaltStack Config te configureren met behulp van het LDAP-protocol. Dit protocol wordt gebruikt voor het verbinden met services zoals Active Directory of Microsoft Azure.
SaltStack Config gebruikt het volgende backendproces om LDAP-gebaseerde systemen te verifiëren:
- Voorbeeld - Wanneer u een voorbeeld van uw verbindingsinstellingen bekijkt, haalt SaltStack Config een lijst met gebruikers en groepen op van uw LDAP-server zodat u kunt controleren of u de juiste configuratieparameters heeft ingevoerd.
- Aanmelding - Wanneer een gebruiker verificatiegegevens invoert op het SaltStack Config-aanmeldingsformulier, controleert de backendserver op dat moment of er een overeenkomst is in de database. Vervolgens wordt een opzoekproces gestart met meerdere stappen en wordt de gebruiker geverifieerd wanneer een overeenkomst is gevonden. Gezien dit opzoekproces worden ingeschakelde individuele gebruikers in ingeschakelde groepen pas in de werkplek Rollen (Roles) weergegeven nadat ze zich een eerste keer hebben aangemeld.
- Achtergrondtaken - SaltStack Config voert regelmatig een achtergrondopdracht uit om elke gekoppelde groep en gebruiker in de Directory Service-verbinding op te zoeken om er zeker van te zijn dat deze nog bestaat. Als de groep of gebruiker is verwijderd, deactiveert de backendserver de link in de database.
- Gearchiveerde groepen en gebruikers - Groepen die u uit uw Directory Service-verbinding verwijdert, worden gearchiveerd. Hoewel deze groepen inactief zijn en gebruikers zich niet kunnen aanmelden, zijn ze nog steeds zichtbaar in de werkplek Rollen (Roles) en kunnen ze worden geselecteerd. Dit is ook van toepassing op verwijderde gebruikers die voorheen zichtbaar waren in de werkplek Rollen (Roles).
- Geneste groepen - Wanneer u met geneste groepen werkt, schakelt u door een bovenliggende groep in te schakelen standaard ook alle onderliggende groepen in.
Een LDAP-verbinding configureren
Om LDAP te configureren, maakt u eerst een verbinding en schakelt u vervolgens specifieke LDAP-gebruikers en -groepen in om zich bij SaltStack Config te verifiëren. Wanneer u groepen of gebruikers heeft ingeschakeld, kunt u hun instellingen voor toegangscontrole op basis van rollen (RBAC) definiëren.
U kunt ervoor kiezen om de velden vooraf in te vullen met standaardinstellingen die zijn aangepast aan uw Directory Service, zoals Active Directory of OpenLDAP.
Een LDAP Directory Service instellen:
- (Optioneel) Voordat u LDAP configureert, is het wellicht handig om uw verbinding en query's te testen met een tool van derden. AD-gebruikers kunnen LDP of ADSI Edit gebruiken. Voor Linux-gebruikers is
ldapsearch
de aanbevolen tool.Opmerking: Zie Hoe een Directory Service-verbinding controleren en problemen oplossen in Help en ondersteuning voor meer informatie over het testen met deze tools . - Klik Beheer > Verificatie (Administration > Authentication) in het zijmenu.
- Klik op Maken.
- Selecteer de optie LDAP in het menu Configuratietype (Configuration Type).
- (Optioneel) Klik onder Instellingen (Settings) op Vooraf invullen (Prefill) en selecteer uw Directory Service uit de vervolgkeuzelijst.
De standaardwaarden worden automatisch ingevuld op basis van uw selectie. Bepaalde vermeldingen, zoals een DN voor een zoekopdracht voor gebruikers (User Search DN) zijn echter niet compleet. Controleer of de vermeldingen overeenkomen met de planning van uw Directory Service en vervang de tekst van de tijdelijke aanduiding door de juiste waarden voor uw service.
- Voer de informatie voor uw LDAP-verbinding in of verifieer deze.
Basis
Veld Beschrijving Naam Naam van de LDAP-verbinding. Aangezien dit een schermnaam is, is het gebruik van een naam handig om deze verificatiebackend te onderscheiden van andere. Host LDAP-hostserveradres, opgemaakt als FQDN of IP-adres. Poort Poort waarop de LDAP-server is geconfigureerd. De standaardwaarde is 389
voor niet-versleutelde LDAP en636
voor LDAP via SSL.Achtergrondsynchronisatie (Background Sync) SaltStack Config valideert alle gebruikers en groepen bij de verificatiebackend met een ingesteld interval dat hier is gedefinieerd (in minuten). SSL - SSL inschakelen (Enable SSL)
-
Selecteer dit om via een Secure Sockets Layer (SSL) verbinding te maken met de LDAP-server met behulp van het certificaat dat is opgegeven in de instellingen voor uw RaaS-server. Als er geen configuratie wordt opgegeven, wordt het archief voor systeemcertificaten gebruikt om de SSL-verbinding te valideren. Zie
SSL-certificaten instellen in de handleiding
SaltStack Config installeren en configureren voor meer informatie over het instellen van de RaaS-server.
Belangrijk: U wordt aanbevolen SSL in te schakelen. Als u deze optie niet selecteert, verzendt SaltStack Config informatie in platte tekst via een onveilige verbinding.
Verificatie
Veld Beschrijving Base DN voor verificatie (Auth Base DN) Base DN voor LDAP. Dit is de locatie vanwaar query's voor groepen en gebruikers worden uitgevoerd, bijvoorbeeld
DC=sse,DC=example,DC=com
.Opmerking: De pagina met LDAP-gegevens bevat afzonderlijke invoervelden voor de objectklasse van de persoon, de kenmerknaam voor het account, de groepsklasse, de kenmerknaam voor de groep en de synchronisatieplanning zoals hieronder beschreven. Neem deze objecten daarom niet op in het veld Base DN.Bind DN voor beheerder (Admin Bind DN) Beheerder-DN die is geconfigureerd voor de LDAP-server. SaltStack Config gebruikt deze om de directory te verifiëren voor opzoekingen van gebruikers en groepen. Voer invoer in op basis van de volgende syntaxis: cn=Administrator,cn=Users,dc=example,dc=com
.Wachtwoord van Bind DN voor beheerder (Admin Bind DN Password) Het individuele wachtwoord van de beheerder.
Dit wordt versleuteld opgeslagen in de database. Het wordt niet als platte tekst opgeslagen.
Filter van Bind DN voor verificatie (Auth Bind DN Filter) Filter dat wordt toegepast om een specifieke gebruiker te selecteren. Het resultaat van deze zoekopdracht is een gebruikers-DN die door SaltStack Config wordt gebruikt om te binden met de directory en de gebruiker toegang tot SaltStack Config te verlenen. Dit is handig om het aantal resultaten te beperken dat wordt geretourneerd voor een bepaalde zoekopdracht.
Opmerking: Omdat de filtersyntaxis best complex kan worden, wordt u aanbevolen de vermelding te testen met LDP,ldapsearch
, of een soortgelijke tool om uw vermelding te valideren en wijzigingen aan te brengen voordat dit veld wordt gevuld.Het volgende voorbeeldfilter retourneert alleen een account dat overeenkomt met de opgegeven gebruikersnaam die deel uitmaakt van de groepen DevOps of Niveau II (Level II).
(&(objectclass=user)(sAMAccountName={username})(|(memberOf=CN=DevOps,OU=Groups,OU=TestCompanyHQ,DC=adtest,DC=com)(memberOf=LevelII,OU=Groups,DC=adtest,DC=com)))
Als u vooraf ingevulde standaardwaarden gebruikt, moet u de tekst van de tijdelijke aanduiding vervangen door de juiste waarden voor uw Directory Service.
Opmerking: Wanneer u een foreststructuur configureert, laat u dit veld leeg.Kenmerknaam van externe unieke id (Remote Unique ID Attribute Name) Naam van de waarde die wordt gebruikt om unieke vermeldingen te identificeren. Dit is het kenmerk van de unieke id voor alle vermeldingen. In AD is dit ObjectGUID
.Groepen
Gebruikers
Veld Beschrijving DN van zoekopdracht voor gebruikers (User Search DN) De zoekbasis voor gebruikers, bijvoorbeeld cn=Users,dc=example,dc=com
in AD ofcn=people,cn=accounts,dc=example,dc=com
in andere Directory Services. Geeft aan waar in de directory naar gebruikers moet worden gezocht. Gebruik dit samen met Zoekbereik voor gebruikers (User Search Scope) hieronder.Zoekbereik voor gebruikers (User Search Scope) Geeft de zoekdiepte van de directory aan vanaf de basis die is aangegeven in DN van zoekopdracht voor gebruikers (User Search DN) en kan een van vier waarden hebben. Zie de vier waarden die worden beschreven bij Zoekbereik voor groepen (Group Search Scope). DN-filter voor zoekopdracht naar groepen (User Search DN Filter) Zoekfilter om gebruikers uit de directory te halen. Dit is doorgaans (objectClass=person)
, maar in sommige AD-configuraties kan dit(objectCategory=user)
zijn.Persoonsklasse (Person Class) De klassenaam van de Directory Service met gebruikers die u wilt toestaan om zich aan te melden. De meeste systemen (inclusief Active Directory) maken gebruik van person
, maar sommige geven de voorkeur aanuser
ofinetOrgPerson
.Kenmerk van gebruikers-id (User ID Attribute) De unieke naam van het gebruikersaccountkenmerk. Voor AD is dit sAMAccountName
. Voor andere services is dit vaakuid
ofmemberUid
.Kenmerk van gebruikerslidmaatschap (User Membership Attribute) De naam van het kenmerk in de groepsvermelding dat de gebruikersnaam bevat. Mogelijke voorbeelden zijn member
enuniquemember
. - Als u een voorbeeld van uw instellingen wilt bekijken zonder deze op te slaan, klikt u op Voorbeeld bijwerken (Update Preview).
In het voorbeeldvenster ziet u gebruikers en groepen die voor uw verbinding zijn geselecteerd. U kunt het tabblad Groepen (Groups) of Gebruikers (Users) selecteren om een voorbeeld te bekijken van gebruikers en groepen die zo nodig aan de service zijn gekoppeld.
- Klik op Opslaan.
Uw LDAP-configuratie is opgeslagen. Om te controleren of de configuratie correct is, kunt u proberen om u bij SaltStack Config aan te melden vanaf een testgebruikersaccount. Zie Problemen oplossen voor tips als u zich niet kunt aanmelden.
Opmerking: Voor LDAP-configuraties slaat SaltStack Config de verbindingsinstellingen op, inclusief de groepen en gebruikers die zijn geïdentificeerd. Er worden alleen groepen en gebruikers opgehaald binnen het bereik dat u heeft gedefinieerd en niet de volledige directory wordt gesynchroniseerd.Na enige tijd moet u uw LDAP-directory mogelijk vernieuwen of opnieuw synchroniseren. U moet bijvoorbeeld uw directory bijwerken als u nieuwe gebruikers heeft toegevoegd en u ze wilt inschakelen in SaltStack Config.
Groepen en gebruikers inschakelen
Nadat u uw LDAP-verbinding heeft ingesteld, moet u de Directory Service-groepen configureren en ervoor zorgen dat gebruikers zich bij SaltStack Config kunnen aanmelden. Directory Service-groepen configureren:
- Selecteer de vereiste LDAP-configuratie in de werkplek Verificatie (Authentication).
- Selecteer het tabblad Groepen (Groups) om een lijst met groepen te bekijken die zijn opgehaald uit uw LDAP-configuratie.
Opmerking: Als u een groot aantal groepen ophaalt, kan het tot een minuut duren om de pagina te laden.
- Selecteer de groepen die u in SaltStack Config wilt inschakelen.
- Selecteer het tabblad Gebruikers (Users) om een lijst met gebruikers te zien die zijn opgehaald uit uw LDAP-configuratie.
Opmerking: Als u een groot aantal gebruikers ophaalt, kan het tot een minuut duren om de pagina te laden.
- Selecteer de gebruikers die u wilt inschakelen in SaltStack Config.
Opmerking: Alle gebruikers die zijn opgenomen in ingeschakelde groepen, zijn al geselecteerd en kunnen niet worden gedeselecteerd.
- Klik op Opslaan.
U kunt nu instellingen voor op rollen gebaseerde toegangscontrole (RBAC) definiëren voor de geselecteerde groepen. Met de werkplek Rollen (Roles) kunt u instellingen voor individuele gebruikers die in de geselecteerde groepen zijn opgenomen, alleen beheren na de eerste aanmelding van de gebruiker. Als u groepen of gebruikers wilt verwijderen, heft u de selectie van de groep of gebruiker op en klikt u vervolgens op Opslaan.
Raadpleeg Hoe definieer ik gebruikersrollen voor meer informatie over RBAC in SaltStack Config.
Problemen met uw LDAP-verbinding oplossen
Probleem | Beschrijving | Oplossing |
---|---|---|
Ik kan geen voorbeeld bekijken van mijn verbinding | Als u geen voorbeeld kunt bekijken van uw groepen en gebruikers, wordt dit in veel gevallen veroorzaakt door een verbindingsprobleem tussen uw LDAP-server en SaltStack Config, of een ongeldige vermelding in het LDAP-configuratieformulier. |
|
Wanneer u probeert een voorbeeld te bekijken van uw verbinding, loopt de pagina vast tijdens het laden | Als de pagina meer dan twee minuten vastloopt bij het laden, start u de RaaS-service opnieuw en maakt u de configuratie vervolgens opnieuw. |
|
Andere diverse problemen | Als u uw LDAP-verbinding al heeft geconfigureerd en opgeslagen, maar gebruikers zich niet kunnen aanmelden, of als u andere problemen ondervindt, controleert u de |
Uitgebreide foutopsporing inschakelen:
|
In de logboeken kunt u sommige veelvoorkomende fouten zien, zoals:
- Verkeerde instellingen voor verbinding (SSL). Pas uw SSL-instellingen aan.
[raas.utils.validation.schemas.settings][DEBUG :546 ][Webserver:9096] Error while connecting to AD/LDAP Server. SSL connection issues: socket ssl wrapping error: [Errno 104] Connection reset by peer
- Verkeerd wachtwoord voor Bind DN van beheerder. Controleer en voer uw wachtwoord opnieuw in.
[raas.utils.rpc ][DEBUG :284 ][Webserver:9095] Processed RPC request(129360670417695). Response: {'riq': 129360670417695, 'ret': None, 'error': {'code': 3004, 'message': 'Request validation failure.', 'detail': {'_schema': ['Credentials are not valid']}}, 'warnings': []}
- Het vooraf ingevulde standaard Filter van Bind DN voor verificatie (Auth Bind DN Filter) veroorzaakt een conflict. Laat het veld leeg of gebruik
{username}
in plaats van{{username}}
.Opmerking:U kunt deze fout ondervinden wanneer u uw LDAP-verbinding al heeft opgeslagen, maar gebruikers zich niet kunnen aanmelden.
[var.tmp._MEIBCyG76.raas.mods.auth.ldap][DEBUG :903 ][Webserver:9096] Running _get_auth_backend_user with this search_filter: (&(objectclass=person)(sAMAccountName={username})) [var.tmp._MEIBCyG76.raas.mods.auth.ldap][DEBUG :931 ][Webserver:9096] Could not find any user using '(&(objectclass=person)(sAMAccountName={username}))' as the search filter in the ldap backend under the ad-1 configuration. Trying remote_uid 'None' [var.tmp._MEIBCyG76.raas.mods.auth.ldap][DEBUG :963 ][Webserver:9096] Could not find any user using '(&(objectClass=person)(objectGUID=None))' as the search filter in the ldap backend under the ad-1 configuration.