Lightweight Directory Access Protocol (Dansk)

AddEdit

TILFØJ operation indsætter en ny post i directory-server-database. Hvis det distinguished name in the add re .uest allerede findes i mappen, tilføjer serveren ikke en duplikatindtastning, men indstiller resultatkoden i add-resultatet til decimal 68, “entryalreadye .ists”.

  • LDAP-kompatible servere vil aldrig dereference det distinguished name transmitteret i add re .uest når du forsøger at lokalisere posten, dvs.distinguished names are never de-aliased.,
  • LDAP-kompatible servere vil sikre, at distinguished name og alle attributter er i overensstemmelse med navnestandarder.
  • den post, der skal tilføjes, må ikke eksistere, og den nærmeste overordnede skal eksistere.

I ovenstående eksempel: uid=user,ou=people,dc=example,dc=com ikke må eksistere, og ou=people,dc=example,dc=com skal findes.

Bind (authenticate)Rediger

Når der oprettes en LDAP-session, det vil sige, når en LDAP-klient opretter forbindelse til serveren, er sessionens godkendelsestilstand indstillet til anonym. BIND-operationen fastlægger godkendelsestilstanden for en session.,

Simple BIND og SASL PLAIN kan sende brugerens DN og adgangskode i klartekst, så forbindelserne, der bruger enten Simple eller SASL Plain, skal krypteres ved hjælp af Transport Layer Security (TLS). Serveren kontrollerer typisk adgangskoden mod attributten userPasswordi den navngivne post. Anonym BIND (med Tom DN og adgangskode) nulstiller forbindelsen til anonym tilstand.

SASL (Simple Authentication and Security Layer) BIND leverer autentificeringstjenester gennem en lang række mekanismer, f.eks.,

BIND indstiller også LDAP-protokolversionen ved at sende et versionsnummer i form af et heltal. Hvis klienten anmoder om en version, som serveren ikke understøtter, skal serveren indstille resultatkoden i BIND-svaret på koden for en protokolfejl. Normalt skal klienter bruge LDAPv3, hvilket er Default i protokollen, men ikke altid i LDAP-biblioteker.

BIND skulle være den første operation i en session i LDAPv2, men er ikke påkrævet som i LDAPv3., I LDAPv3 ændrer hver vellykket BIND-anmodning sessionens godkendelsestilstand, og hver mislykket BIND-anmodning nulstiller sessionens godkendelsesstatus.

DeleteEdit

for at slette en post sender en LDAP-klient en korrekt dannet sletningsanmodning til serveren.,

  • slette En anmodning skal indeholde den udvalgte navn på indgang til at blive slettet
  • Anmodning kontrol kan også være knyttet til slet anmodning
  • Servere ikke-dereference-aliasser, når behandlingen af en slet anmodning
  • Kun blad poster (poster uden underordnede) kan blive slettet ved et slet anmodning., Nogle servere understøtter en operationel attribut hasSubordinates hvis værdi angiver, om en post er nogen underordnede poster, og nogle servere understøtter en operationel attribut numSubordinates, der angiver antallet af poster, der er underordnet den post, der indeholder numSubordinates attribut.
  • nogle servere understøtter undertree slet anmodning kontrol tillader sletning af DN og alle objekter underordnet DN, underlagt adgangskontrol., Sletningsanmodninger er underlagt adgangskontrol, det vil sige, om en forbindelse med en given godkendelsestilstand får tilladelse til at slette en given post, styres af serverspecifikke adgangskontrolmekanismer.

Search and CompareEdit

søgningen bruges til både at søge efter og læse poster. Dens parametre er:

baseObject navnet på basisobjektindgangen (eller muligvis roden) i forhold til hvilken søgningen skal udføres. omfang hvilke elementer under basisenobjekt at søge., Dette kan væreBaseObject(søg kun den navngivne indlæg, der typisk bruges til at læse en post),singleLevel(poster straks nedenfor base DN), ellerwholeSubtree(hele undertræ, der starter ved den base DN). filterkriterier, der skal bruges til at vælge elementer inden for rækkevidde., For eksempel, filter(&(objectClass=person)(|(givenName=John)(mail=john*)))vil vælge, at “personer” (elementer af objektklasseperson), hvor de tilsvarende regler forgivenNameogmailafgøre, om de værdier for disse attributter matcher filteret påstand. Bemærk, at en almindelig misforståelse er, at LDAP-data er store og små bogstaver, hvorimod matchende regler og bestillingsregler faktisk bestemmer matchning, sammenligninger og relative værdiforhold., Hvis eksempel filtre blev bedt om at matche tilfælde af attribut værdi, en extensible match filter skal anvendes, for eksempel:(&(objectClass=person)(|(givenName:caseExactMatch:=John)(mail:caseExactSubstringsMatch:=john*)))derefAliases, Om og hvordan der skal følges alias poster (poster, der refererer til andre poster), egenskaber, Som attributter til at vende tilbage i resultatet poster. si .elimit, tidsbegrænsning af maksimalt antal poster, der skal returneres, og maksimal tid til at tillade søgning at køre. Disse værdier kan dog ikke tilsidesætte nogen begrænsninger, som serveren placerer på størrelsesgrænse og tidsbegrænsning. typesOnly returnere attribut typer kun, ikke attributværdier.,

serveren returnerer de matchende poster og potentielt fortsættelse referencer. Disse kan returneres i enhver rækkefølge. Det endelige resultat vil indeholde resultatkoden.

Sammenligningsoperationen tager et DN, et attributnavn og en attributværdi og kontrollerer, om den navngivne post indeholder den attribut med den værdi.

ModifyEdit

MODIFICERINGSOPERATIONEN bruges af LDAP-klienter til at anmode om, at LDAP-serveren foretager ændringer i eksisterende poster. Forsøg på at ændre poster, der ikke findes, mislykkes. Ændre anmodninger er underlagt adgangskontrol som implementeret af serveren.,

ændringen kræver, at den distinguished name (DN) af posten angives, og en sekvens af ændringer. Hver ændring i rækkefølgen må være:

  • add (tilføj en ny værdi, der ikke allerede findes i den egenskab)
  • delete (slet en eksisterende værdi)
  • erstat (erstatte en eksisterende værdi med en ny værdi)

LDIF eksempel på tilføjelse af en værdi til en attribut:

dn: dc=example,dc=comchangetype: modifyadd: cncn: the-new-cn-value-to-be-added-

til At erstatte værdien af en eksisterende attribut, skal du Bruge erstatte søgeord., Hvis attributten er multivalent, skal klienten angive værdien af attributten, der skal opdateres.hvis du vil slette en attribut fra en post, skal du bruge nøgleordet slet og changetype designator Rediger. Hvis attributten er multi-værdsat, skal klienten angive værdien af attributten, der skal slettes.

Der er også en Modify-Increment forlængelse, som tillader en incrementable attribut værdi, der skal øges med et bestemt beløb., Det følgende eksempel bruger LDIF intervaller employeeNumber af 5:

dn: uid=user.0,ou=people,dc=example,dc=comchangetype: modifyincrement: employeeNumberemployeeNumber: 5-

Når LDAP-servere er i en replikeret topologi, LDAP-klienter bør overveje, hvordan du bruger post-læse-kontrol til at kontrollere opdateringer i stedet for søgning efter en opdatering. Post-read-kontrollen er designet således, at applikationer ikke behøver at udstede en søgeanmodning efter en opdatering – det er dårlig form at hente en post med det ene formål at kontrollere, at en opdatering fungerede på grund af replikationen eventuel konsistensmodel., En LDAP-klient bør ikke antage, at den opretter forbindelse til den samme mappeserver for hver anmodning, fordi arkitekter muligvis har placeret belastningsbalancere eller LDAP-fuldmagter eller begge mellem LDAP-klienter og servere.

Ændre DNEdit

Ændre DN (flyt/omdøb indtastning) tager den nye RDN (i Forhold Distinguished Name), eventuelt den nye forælder DN, og et flag, der angiver, om at slette værdien(s) i den post, der matcher det gamle RDN. Serveren kan understøtte omdøbning af hele katalogundertræer.,

en opdateringsoperation er atomisk: andre operationer vil se enten den nye post eller den gamle. På den anden side definerer LDAP ikke transaktioner af flere operationer: hvis du læser en post og derefter ændrer den, kan en anden klient have opdateret posten i mellemtiden. Servere kan gennemføre udvidelser, der understøtter dette, selv.

Udvidet operationsEdit

Den Udvidede Operation er der en generisk LDAP-betjening, der kan definere nye operationer, som ikke var en del af den oprindelige protokol-specifikationen. StartTLS er en af de mest markante udvidelser., Andre eksempler inkluderer Annuller og ændring af adgangskode.

StartTLSEdit

StartTLS-operationen etablerer Transportlagssikkerhed (efterkommeren af SSL) på forbindelsen. Det kan give data fortrolighed (for at beskytte data mod at blive overholdt af tredjeparter) og/eller beskyttelse af dataintegritet (som beskytter dataene mod manipulation). Under TLS-forhandling sender serveren sit certificate. 509-certifikat for at bevise sin identitet. Klienten kan også sende et certifikat for at bevise sin identitet. Efter at gøre det, klienten kan derefter bruge SASL / ekstern., Ved at bruge SASL / ekstern, klienten anmoder serveren udlede sin identitet fra legitimationsoplysninger leveres på et lavere niveau (såsom TLS). Selvom serveren teknisk set kan bruge alle identitetsoplysninger, der er etableret på et lavere niveau, bruger serveren typisk de identitetsoplysninger, der er oprettet af TLS.

servere understøtter også ofte den ikke-standard “LDAPS” (“Secure LDAP”, almindeligvis kendt som “LDAP over SSL”) protokol på en separat port, som standard 636., LDAPS adskiller sig fra LDAP på to måder:1) Ved tilslutning opretter klienten og serveren TLS, før LDAP-meddelelser overføres (uden en StartTLS-operation) og2) LDAPS-forbindelsen skal lukkes, når TLS lukkes.nogle” LDAPS ” – klientbiblioteker krypterer kun kommunikation; de kontrollerer ikke værtsnavnet mod navnet i det medfølgende certifikat.

AbandonEdit

Abandon-operationen anmoder om, at serveren afbryder en handling, der er navngivet af et meddelelsesid. Serveren behøver ikke at respektere anmodningen. Hverken opgive eller en vellykket forladt operation sende et svar., En lignende annullering udvidet operation sender svar, men ikke alle implementeringer understøtter dette.

UnbindEdit

Unbind-operationen opgiver alle udestående operationer og lukker forbindelsen. Det har intet svar. Navnet er af historisk oprindelse og er ikke det modsatte af Bindingsoperationen.

klienter kan afbryde en session ved blot at lukke forbindelsen, men de skal bruge Unbind. Unbind giver serveren mulighed for yndefuldt at lukke forbindelsen og gratis ressourcer, som den ellers ville beholde i nogen tid, indtil den opdagede, at klienten havde forladt forbindelsen., Det instruerer også serveren til at annullere operationer, der kan annulleres, og ikke sende svar til operationer, der ikke kan annulleres.

Share

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *