en
Språk
  • en
  • cs
  • hu
  • it
  • es
  • fr
  • de
  • ru
Maskinoversettelse
  • bg
  • dk
  • nl
  • gr
  • il
  • jp
  • kr
  • Nei.
  • pl
  • tr

LDAP-godkjenning

LDAP

Hvordan konfigurere LDAP-godkjenning

Oversikt
Erklæring av LDAP-autentiseringsmodus
På flybrukeropprettelsen
Gruppebasert LDAP-pålogging
Feilsøking
Hjørnesituasjoner

 

Oversikt

LDAP (Lightweight Directory Access Protocol) er en programvareprotokoll som gjør det mulig for alle å finne organisasjoner, enkeltpersoner og andre ressurser som filer og enheter i et nettverk, enten det er på det offentlige Internett eller på et bedriftsintranett. LDAP er en "lett" (mindre mengde kode) versjon av Directory Access Protocol (DAP), som er en del av X.500, en standard for katalogtjenester i et nettverk. LDAP er lettere fordi den i den første versjonen ikke inkluderte sikkerhetsfunksjoner. Easy Project støtter innfødt LDAP-godkjenning ved hjelp av ett eller flere LDAP-kataloger. De støttede katalogtjenestetyper inkluderer Active Directory, OpenLDAP, eDirectory, Sun Java System Directory Server samt andre kompatible katalogtjenester.

En LDAP-katalog er organisert i et enkelt "tre" -hierarki som består av følgende nivåer:

  1. Rotkatalogen (startstedet eller kilden til treet), som forgrener seg til
  2. Land som hver forgrener seg til
  3. Organisasjoner, som forgrener seg til
  4. Organisasjonsenheter (divisjoner, avdelinger og så videre) som forgrener seg til (inkluderer en oppføring for)
  5. Enkeltpersoner (som inkluderer personer, filer og delte ressurser som skrivere)

 

Erklæring av LDAP-autentiseringsmodus

Gå til Administrasjon og klikk "LDAP-godkjenning" i menyen. Her finner du listen over alle eksisterende LDAP-autentiseringsmodus, inkludert alternativene for å teste eller slette noen. Hvis du vil opprette en ny, klikker du på den grønne knappen "Ny autentiseringsmodus" øverst til høyre.

LDAP-tjenesteleverandøren bruker en URL for å konfigurere tilkoblingen til katalogserveren. Følgende felt skal spesifiseres for å generere LDAP-tilkoblingsadressen:

  • Navn: Et vilkårlig navn på katalogen.
  • Vert: LDAP-vertsnavnet (testserver).
  • Port: LDAP-porten (standard er 389).
  • LDAPS: Sjekk dette hvis du vil eller trenger å bruke LDAPS for å få tilgang til katalogen.
  • Konto: Skriv inn et brukernavn som har lesetilgang til LDAP, ellers la dette feltet være tomt hvis LDAP-en din kan leses anonymt (Active Directory-servere tillater vanligvis ikke anonym tilgang).
  • Passord: Passord for kontoen.
  • Base DN: Det øverste nivået av LDAP-katalogtreet (eksempel: dc = eksempel, dc = com).
  • LDAP-filter: Filtre kan brukes til å begrense antall brukere eller grupper som har tilgang til et program. I hovedsak begrenser filteret hvilken del av LDAP-treet applikasjonen synkroniserer fra. Et filter kan og bør skrives for både bruker- og gruppemedlemskap. Dette sikrer at du ikke oversvømmer applikasjonen din med brukere og grupper som ikke trenger tilgang.
     

    Prøvefiltre

    (advarsel) Disse filtrene er skrevet for Active Directory. For å bruke dem til noe som OpenLDAP, må attributtene endres.

    Dette vil bare synkronisere brukere i gruppen 'CaptainPlanet' - dette skal brukes på Brukerobjektfilter:

    (&(objectCategory=Person)(sAMAccountName=*)(memberOf=cn=CaptainPlanet,ou=users,dc=company,dc=com))

    Og dette vil søke etter brukere som er medlem av denne gruppen, enten direkte eller via hekkende:

    (&(objectCategory=Person)(sAMAccountName=*)(memberOf:1.2.840.113556.1.4.1941:=cn=CaptainPlanet,ou=users,dc=company,dc=com))

    (Info) Viktig for Active Directory å ha MEMBEROF: 1.2.840.113556.1.4.1941 hvis du vil finne nestede grupper (ikke erstatt den numeriske strengen) i CaptainPlanet-gruppen.

    Dette vil søke etter brukere som er medlem av noen eller alle 4-gruppene (brann, vind, vann, hjerte)

    (&(objectCategory=Person)(sAMAccountName=*)(|(memberOf=cn=fire,ou=users,dc=company,dc=com)(memberOf=cn=wind,ou=users,dc=company,dc=com)(memberOf=cn=water,ou=users,dc=company,dc=com)(memberOf=cn=heart,ou=users,dc=company,dc=com)))
  • Timeout (i sekunder): Hvis LDAP-leverandøren ikke får et LDAP-svar innen den angitte perioden, avbryter den leseforsøket. Heltallet skal være større enn null. Et heltall som er mindre enn eller lik null betyr at det ikke er spesifisert noen lesetid, noe som tilsvarer å vente på svaret uendelig til det mottas som standard til den opprinnelige oppførselen. Hvis denne egenskapen ikke er spesifisert, er standard å vente på svaret til den er mottatt.
  • On-the-fly brukeroppretting: Ved å sjekke dette, vil enhver LDAP-bruker ha sin Easy Project-konto automatisk opprettet første gang han logger seg på Easy Project. Ellers må du manuelt opprette brukeren i Easy Project for hver LDAP-bruker som vil logge på.

Egenskaper (eksempler):

  • Innloggingsattributt: Påloggingsnavnet som en bruker logger seg på og er autentisert.
  • Fornavn attributt: Attributt for fornavn.
  • Etternavn attributt: Attributt for etternavn.
  • E-postattributt: Attributt for e-postadresse.

Brukere av Easy Project skal nå kunne autentisere ved å bruke deres LDAP-brukernavn og passord hvis kontoene deres er satt til å bruke LDAP for autentisering (sjekk innstillingen "Autentiseringsmodus" når du redigerer brukerens profil).

For å teste dette, opprett en Easy Project-bruker med en pålogging som samsvarer med hans LDAP-konto (normalt vil Easy Project gi deg råd ved å slå opp LDAP-dataene), velg den nyopprettede LDAP i rullegardinlisten Autentiseringsmodus (dette feltet er vises bare på kontoskjermen hvis en LDAP er erklært) og lar passordet være tomt. Prøv å logge deg på Easy Project ved å bruke LDAP-brukernavnet og passordet.

 

Programvare som tilpasser seg dine behov? Lett.

Bring harmoni i prosjektledelsen med ett tilpasningsdyktig verktøy og hold alt under kontroll.


På flybrukeropprettelsen

Ved å sjekke on-the-fly brukeroppretting, vil enhver LDAP-bruker ha sin Easy Project-konto automatisk opprettet første gang han logger seg på Easy Project.
For det må du spesifisere navnet på LDAP-attributtene (fornavn, etternavn, e-post) som skal brukes til å opprette Easy Project-kontoer.

Her er et typisk eksempel ved bruk av Active Directory:

Navn = My Directory Host = host.domain.org Port = 389 LDAPS = ingen konto = MyDomain \ UserName (eller UserName @ MyDomain avhengig av AD-server) Passord = Base DN = CN = brukere, DC = vert, DC = domene, DC = org On-the-fly brukeroppretting = ja Attributter Pålogging = sAMAccountName Fornavn = gitt navn Etternavn = sN E-post = e-post

Her er et annet eksempel på Active Directory med et kompartmentert intranett:

Navn = Bare en beskrivelse for siden for godkjenningsmodus Host = DepartmentName.OrganizationName.local Port = 389 LDAPS = no Account = DepartmentName \ UserName (or UserName @ MyDomain avhengig av AD-server eller bind DN uid = Manager, cn = brukere, dc = MyDomain, dc = com) Passord = Base DN = DC = avdelingsnavn, DC = organisasjonsnavn, DC = lokal brukeroppretting på farten = ja Attributter Pålogging = sAMAccountName Fornavn = gitt navn Etternavn = sN E-post = e-post

Merk at LDAP-attributtnavn er store og små bokstaver.

Dynamisk bindekonto

Ovennevnte oppsett ville trenge en spesiell konto på katalogserveren som Easy Project bruker for å forhåndsautentisere. Det er mulig å bruke nøkkelordet $ innlogging i kontofeltet som deretter ville bli erstattet av gjeldende innlogging. Passordet kan stå tomt i dette tilfellet, for eksempel:

Konto: $login@COMPANY.DOMAIN.NAME

or

Konto: firma \ $ pålogging

Base DN-varianter

Selv om det er ganske mulig at Base DN ovenfor er standard for Active Directory, bruker Active Directory på min arbeidsgivers nettsted ikke brukerbeholderen for standardbrukere, så disse instruksjonene sendte meg ned en lang og smertefull bane. Jeg anbefaler også å prøve "DC = host, DC = domain, DC = org" hvis innlogging mislykkes med innstillingene der.

 

Gruppebasert LDAP-pålogging

Hvis du bare vil tillate innlogging til brukere som tilhører en bestemt LDAP-gruppe, bør du følge instruksjonene nedenfor. De er basert på OpenLDAP LDAP-server og Easy Project.

1. (OpenLDAP-server) Aktiver memberof overlay

1.1. Opprett en fil:

vim ~ / memberof_add.ldif

Med innhold under:

dn: cn = modul, cn = config
objectClass: olcModuleList
cn: modul
olcModulePath: / usr / lib / ldap
olcModuleLoad: memberof

1.2. Opprett en fil:

vim ~ / memberof_config.ldif

Med innhold under:

dn: olcOverlay = memberof, olcDatabase = {1} hdb, cn = config
objectClass: olcMemberOf
objectClass: olcOverlayConfig
objectClass: olcConfig
objectClass: topp
olcOverlay: memberof
olcMemberOfDangling: ignorere
olcMemberOfRefInt: SANN
olcMemberOfGroupOC: groupOfNames
olcMemberOfMemberAD: medlem
olcMemberOfMemberOfAD: memberOf

1.3. Last dem inn. Det vil avhenge av OpenLDAP-konfigurasjonen, så vi vil foreslå noen muligheter:

sudo ldapadd -c-Y EXTERNAL -H ldapi: /// -f memberof_add.ldif
sudo ldapadd -c-Y EXTERNAL -H ldapi: /// -f memberof_config.ldif

Eller:

ldapadd -D cn = admin, cn = config -w "passord" -H ldapi: /// -f memberof_add.ldif
ldapadd -D cn = admin, cn = config -w "passord" -H ldapi: /// -f memberof_config.ldif

En omstart er IKKE nødvendig hvis du bruker dynamisk runtime-konfigurasjonsmotor (slapd-config).

1.4. (Valgfritt) Test det:

ldapsearch -D cn = admin, dc = eksempel, dc = com -x -W -b 'dc = eksempel, dc = com' -H 'ldap: //127.0.0.1: 389 /' '(& (objectClass = posixAccount ) (memberOf = cn = ldapeasyproject, ou = grupper, dc = eksempel, dc = com)) '

2. (OpenLDAP-server) Opprett gruppen. I dette eksemplet er brukeren "ldap_user_1" og gruppen er "ldapeasyproject":

dn: cn = ldapeasyproject, ou = grupper, dc = eksempel, dc = com
cn: ldapeasyproject
beskrivelse: Ansatte tillater å logge inn på Easy Project billettsystem
medlem: cn = ldap_user_1, ou = personer, DC = eksempel, DC = com
objectclass: groupOfNames
objektklasse: topp

Juster "dn" og "cn" s for å passe til din DIT-struktur

3. (Easy Project) Rediger LDAP-autentiseringsmodus. I mitt tilfelle er "ldap_user_1" en "posixAccount" -objektklasse:

Base DN: dc = eksempel, dc = com
Filter: (& (objectClass = posixAccount) (memberOf = cn = ldapeasyproject, ou = grupper, dc = eksempel, dc = com))

 

Feilsøking

Hvis du vil bruke oppretting av brukervennlighet, må du sørge for at Easy Project kan hente all nødvendig informasjon fra LDAP for å opprette en gyldig bruker.
For eksempel vil oppretting av brukermiljøer ikke fungere hvis du ikke har gyldige e-postadresser i katalogen din (du får en feilmelding 'Ugyldig brukernavn / passord' når du prøver å logge på).
(Dette stemmer ikke med nyere Easy Project-versjoner; dialogboksen for oppretting av brukere fylles med alt den kan finne fra LDAP-serveren, og ber den nye brukeren om å fylle ut resten.)

Sørg også for at du ikke har noe tilpasset felt merket som påkrevd for brukerkontoer. Disse egendefinerte feltene vil forhindre at brukerkontoer opprettes når du er.

Feil i påloggingssystemet rapporteres ikke med noen reell informasjon i Easy Project-loggene, noe som gjør feilsøking vanskelig. Imidlertid kan du finne det meste av informasjonen du trenger å bruke Wireshark mellom Easy Project-verten og LDAP-serveren. Merk at dette bare fungerer hvis du har tillatelser til å lese nettverkstrafikk mellom disse to vertene.

Du kan også bruke verktøyet 'ldapsearch' til å teste om innstillingene dine er riktige. Logg inn på Linux-maskinen som er vert for ditt Easy Project (og eventuelt installer ldaputils) og kjør dette:

ldapsearch -x -b  "dc=example,dc=com" -H ldap://hostname/ -D "DOMAIN\USER" -w mypassword [searchterm]

Hvis det lykkes, vil du få en liste over innholdet i annonsen, samsvarende med søket ditt. Deretter vet du hvordan du fyller ut feltene i LDAP-konfigurasjonen i Easy Project.

Alternative måter å bekrefte funksjonaliteten

  • Prøv å fjerne LDAP-filtre som, hvis de er feil innstilt, kan slette brukerne du vil finne.
  • Ved siden av "Påloggingsattributtet" er et bokikon. Hvis du klikker på den og LDAP er satt riktig, blir "vanlige attributter" automatisk fylt ut av den faktiske LDAP-serveren. I stedet for tekstfelt vises markeringsbokser for en sak som brukeren ønsker å endre innstillingene. I de fleste tilfeller trenger ikke brukeren å fylle ut dette i det hele tatt. Hvis dette fungerer, vil sannsynligvis alt annet fungere.
  • For tilkoblingsproblemer kan du bruke "Test" -knappen på LDAP-serveroppføringen. Vær forsiktig, dette tjener bare til å teste om du kan koble til LDAP. Det vanlige problemet er at administratorer ikke fyller LDAP-systembrukeren selv når LDAP-innstillingene fortsatt er beskyttet. I dette tilfellet kjører testen OK fordi tilkoblingen fungerer, men ingen brukere kan legges til fordi LDAP ikke "ser" noen.
  • For å teste om LDAP virkelig fungerer, kan nummeret "Tilgjengelige brukere" også brukes - hvis verdien er 0, returnerer LDAP ingen data og er sannsynligvis feil innstilt. Hvis det er et tall, kan du klikke på det for å utvide og se hva LDAP viser (og justere filtrene deretter).

Logg inn verdi format

Brukernavnet for bindingsinformasjonen må kanskje spesifiseres som DN i stedet for som UPN (user@domain.com) eller som domene \ bruker, som påpekt av denne kommentaren i kilde: trunk / leverandør / plugg / rubin-net-LDAP-0.0.4 / lib / net / ldap.rb:

  # Som beskrevet under #bind, krever de fleste LDAP-servere at du leverer et komplett DN # som en bindende legitimasjon, sammen med en autentiserer som et passord.

Derfor bruker med MyDomain \ MyUserName eller MyUserName@MyDomain.com brukernavn kan bare angi MyUserName som et Easy Project påloggingsnavn.

Langsom LDAP-godkjenning

Hvis LDAP-godkjenningen går sakte og du har en AD-klynge, kan du prøve å spesifisere en av de fysiske AD-serverne i vertsfeltet. Det kan hjelpe.

OpenDS

Hvis du bruker OpenDS-serveren, kan det hende du har problemer med forespørselskontrollen "Søkeresultater" sendt med den opprinnelige spørringen som søker etter brukeren av det angitte innloggingsattributtet. Denne forespørselskontrollen 1.2.840.113556.1.4.319 er ikke tillatt for anonyme brukere som standard, og forhindrer dermed Easy Project i å finne brukeren i katalogen selv før bindingen finner sted.

Legg til en global ACI som dette

./dsconfig -h SERVER_IP -p 4444 -D cn = "Directory Manager" -w PASSWORD -n set-access-control-handler-prop --trustAll - legg til global-aci: \ (targetcontrol = \ "1.2.840.113556.1.4.319 \" \) \ \ (versjon \ 3.0 \; \ acl \ \ "Anonym \ kontroll \ tilgang \ til \ 1.2.840.113556.1.4.319 \" \; \ allow \ \ (lese \) \ userdn = \ "ldap: /// hvem som helst \" \ ; \)

Merk: Angi kommandoen på en linje, bruk rømming nøyaktig som indikert (\ etter "acl" er ment å være "\" for mellomrom).

Noen brukere kan ikke logge inn

problem: En spesifikk OU av brukere kan ikke logge på (ugyldig bruker eller passord) mens alle andre er det. Brukerne er på et eksternt nettsted, men brukere i de andre OU-ene på samme sted får ikke denne feilen.

Løsning: Problemet er sannsynligvis ikke relatert til feil innstillinger, men snarere et problem med Active Directory (AD). Brukerne som ikke klarte å koble til, hadde "Logg på" -feltet satt til en bestemt PC i AD-brukerens egenskaper (AD-administrasjon). Etter å ha endret den til "Pålogging fra overalt", skal den fungere. Mer spesifikt må dette feltet settes til: AD-bruker -> Egenskaper -> Konto -> Pålogging fra hvor som helst.

Problemer med pålogging når du bruker LDAPS uten gyldig sertifikat

Du kan komme over problemer med pålogging når du bruker LDAPS uten gyldig sertifikat. I Easy Project er LDAPS-sertifikat alltid validert. Med et ugyldig sertifikat vil ikke brukerne være i stand til å logge seg på. Selvfølgelig riktig og langsiktig løsning er å bruke et gyldig sertifikat. Men til du oppnår dette, er den midlertidige løsningen å gå til Administrasjon >> LDAP-godkjenning >> Redigere respektive godkjenningsmodus.

Endre innstillingen til LDAPS (uten sertifikatkontroll).

Med Easy Project Server-løsning kan du endre den i bulk fra skinnekonsoll
skinner r "AuthSource.update_all (verify_peer: false)" -e produksjon

eller via SQL
UPDATE auth_sources set verify_peer = 0;

 

Hjørnesituasjoner

  • Når du importerer / oppretter brukere automatisk fra LDAP, foretrekkes standardinnstillingen for brukertype som er angitt i skjemaet for brukeroppretting fremfor standard innstillingen for brukertype som er angitt på LDAP. Når brukeren er opprettet, kan ikke denne innstillingen endres senere (med mindre du oppretter en ny LDAP).

Prøv Easy Project i 30 dager gratis prøveversjon

Fulle funksjoner, SSL-beskyttet, daglige sikkerhetskopier, i din geoposisjon