DB2 - LDAP


Innledning

LDAP er Lightweight Directory Access Protocol. LDAP er en global katalogtjeneste, industri-standard protokoll, som er basert på klient-tjener og kjører på et lag over TCP /IP-stakken. LDAP gir et anlegg for å koble til, tilgang, endre og søke på internett katalogen.

LDAP-servere inneholde informasjon som er organisert i form av en katalogtreet. Kundene spør server for å gi informasjon eller for å utføre noen operasjon på en bestemt informasjon. Serveren svarer klienten ved å gi nødvendig informasjon om den har en, eller den henviser kunden til en annen server for handling på nødvendig informasjon. Klienten deretter overtar ønsket informasjon fra en annen server.

trestruktur av katalogen er opprettholdt samme i alle de deltakende servere. Dette er et fremtredende trekk ved LDAP katalogtjeneste. Derfor, uansett hvilken server er referert til av klienten, klienten alltid får nødvendig informasjon i en feilfri måte. Her bruker vi LDAP til å autentisere IBM DB2 som en erstatning av operativsystemet autentisering

Det finnes to typer LDAP.

  • Transparent

    Plug-in

    La oss se hvordan du konfigurerer en gjennomsiktig LDAP.

    Konfigurering gjennomsiktig LDAP

    Til å begynne med konfigurasjonen av gjennomsiktig LDAP, må du konfigurere LDAP-serveren.
    < h3> LDAP-serverkonfigurasjon

    Lag en SLAPD.conf fil som inneholder all informasjon om brukere og gruppeobjekt i LDAP. Når du installerer LDAP-server, som standard er det konfigurert med grunnleggende LDAP katalogtreet på din maskin.

    I tabellen nedenfor viser filen konfigurasjon etter modifisering.

    Teksten uthevet med gult koden boks betyr for følgende:.

    DBA bruker-id = "db2my1", group = "db1my1adm", passord = "db2my1" Admin bruker-id = "my1adm", group = "dbmy1ctl" Anmeldelser # basen dn: example.com dn: dc = eksempel, dc = com st: eksempel o: eksempel object: organisasjon object: dcObject # pc boks db dn: dc = db697, dc = eksempel, dc = com st: db697 o: db697 object: organisasjon object: dcObject # # Gruppe: db adm # dn: cn = dbmy1adm, dc = db697, dc = eksempel, dc = com cn: dbmy1adm object: top object: posixGroup gidNumber: 400 object: groupOfNames medlem : uid = db2my1, cn = dbmy1adm, dc = db697, dc = eksempel, dc = com memberUid: db2my1 # # Bruker: db2 # dn: uid = db2my1, cn = dbmy1adm, dc = db697, dc = eksempel dc = com cn: db2my1 Sn: db2my1 uid: db2my1 object: top object: inetOrgPerson object: posixAccount uidNumber: 400 gidNumber: 400 loginShell: /bin /csh homeDirectory: /db2 /db2my1 # # Gruppe: db CTL # dn : cn = dbmy1ctl, dc = db697, dc = eksempel, dc = com cn: dbmy1ctl object: top object: posixGroup gidNumber: 404 object: groupOfNames medlem: uid = my1adm, cn = dbmy1adm, dc = db697, dc = eksempel, dc = com memberUid: my1adm # # Bruker: adm # dn: uid = my1adm, cn = dbmy1ctl, dc = db697, dc = eksempel, dc = com cn: my1adm sn: my1adm uid: my1adm object: top object: inetOrgPerson object: posixAccount uidNumber: 404 gidNumber: 404 loginShell: /bin /csh homeDirectory: /home /my1adm

    Lagre filen ovenfor med navn '/var/lib/slapd.conf', deretter utføre denne filen ved følgende kommando for å legge disse verdiene inn LDAP-server. Dette er en linux kommando; ikke en db2 kommando.
    ldapadd r- -D "cn = sjef, dc = eksempel, dc = com" -W -f /var/lib/slapd.conf

    Etter registrering av DB2-brukere og DB2-gruppen på LDAP-server, pålogging til den aktuelle brukeren hvor du har installert forekomst og database. Du må konfigurere LDAP-klient for å bekrefte overfor klienten der serveren er plassert, det være seg ekstern eller lokal.

    LDAP-klient konfigurasjon

    LDAP-klienten konfigurasjonen er lagret i filen 'ldap.conf '. Det er to filer som er tilgjengelige for konfigurasjonsparametere, er en vanlig og den andre er spesifikke. Du bør finne den første på '/etc/ldap.conf' og sistnevnte ligger på '/etc/openldap/ldap.conf'.

    Følgende data er tilgjengelig i felles LDAP-klient konfigurasjonsfilen
    # Fil: /etc/ldap.conf # Filen inneholder mange flere oppføringer og mange av dem # er kommentarer. Du viser bare de interessante verdier for nå vert localhost basen dc = eksempel, dc = com ldap_version 3 pam_password krypten pam_filter object = posixAccount nss_map_attribute uniqueMember medlem nss_base_passwd dc = eksempel, dc = com nss_base_shadow dc = eksempel, dc = com nss_base_group dc = eksempel dc = no

    Du må endre plasseringen av server og domene informasjon i henhold til DB2-konfigurasjon. Hvis vi bruker server i samme system da nevne det som "localhost" på "vert" og "base" kan du konfigurere som er nevnt i "SLAPD.conf 'fil for LDAP-serveren.

    Pluggable Authentication Model (PAM) er en API for autentiseringstjenester. Dette er felles grensesnitt for LDAP-godkjenning med en kryptert passord og spesial LDAP objekt av typen posixAccount. Alle LDAP objekter av denne typen representerer en abstraksjon av en konto med bærbar Operating System Interface (POSIX) attributter.

    Network Security Services (NSS) er et sett med biblioteker for å støtte kryssplattform utvikling av sikkerhetsaktivert klient og serverprogrammer. Dette omfatter bibliotekene som SSL, TLS, PKCS S /MIME og andre sikkerhetsstandarder.

    Du må angi basen DN for dette grensesnittet, og ytterligere to kartlegging attributter. OpenLDAP klient konfigurasjonsfilen inneholder oppføringene nedenfor:.
    Vert localhost basen dc = eksempel, dc = no

    Till dette du bare definerer vert for LDAP tjener og basen DN

    Validating OpenLDAP miljø

    Etter at du har konfigurert LDAP Server og LDAP-klient, bekrefter både for kommunikasjon

    Trinn 1 Bilde:. Sjekk din lokale LDAP-serveren kjører. Ved hjelp av kommandoen nedenfor:
    ps -ef | grep-ldap

    Denne kommandoen bør listen LDAP deamon som representerer din LDAP-serveren: Twitter /usr /lib /openladp /slapd -h ldap: ///-u ldap -g ldap -o slp = på < p> Dette indikerer at du LDAP-serveren kjører og venter på forespørsel fra kunder. Hvis det ikke er slik prosess for tidligere kommandoer du kan begynne LDAP-server med "rcldap 'kommando.
    Rcldap starte

    Når serveren starter, kan du overvåke dette i filen' /var /log /meldinger /etter utstede følgende kommando.
    tail -f /var /log /meldinger
    Testing tilkobling til LDAP-serveren med ldapsearch

    ldapsearch kommandoen åpner en forbindelse til en LDAP-server, binder seg til det og utfører en søket som kan spesifiseres ved hjelp av spesielle parametre '-x' koble til LDAP-serveren med en enkel autentiseringsmekanisme ved hjelp av -x parameter i stedet for en mer kompleks mekanisme som Simple Authentication and Security Layer (SASL) Anmeldelser ldapsearch - x

    LDAP-serveren skal svare med et svar gitt nedenfor, som inneholder alle dine LDAP oppføringer i en LDAP Data Interchange Format (LDIF)
    # utvidet LDIF # # LDAPv3 # basen. < > med omfanget treet # filter: (object = *) # ber: ALL # example.com dn: dc = eksempel, dc = com st: eksempel o: eksempel object: organisasjon object: dcObject # søkeresultat søk: 2 resultat: 0 Suksess # numResponses: 2 # numEntries: 1
    Konfigurering av DB2

    Etter å ha jobbet med LDAP server og klient, må du konfigurere vår DB2-database for bruk med LDAP. La oss diskutere hvordan du kan installere og konfigurere databasen for å bruke vår LDAP miljø for DB2 brukergodkjenningsprosessen.
    Plug-ins
    Konfigurere DB2 og LDAP interaksjons

    IBM gir en gratis pakke med LDAP plug-ins for DB2. DB2-pakken inkluderer tre DB2 sikkerhets plug-ins for hver av følgende:

    server side autentisering

    klientsiden autentisering

    gruppeoppslag

    Avhengig av dine behov, kan du bruke noen av de tre plug-ins eller alle av dem. Dette tillegget støtter ikke miljøer der noen brukere er definert i LDAP og andre i operativsystemene. Hvis du velger å bruke LDAP-plug-ins, må du definere alle brukere knyttet til databasen i LDAP-serveren. Det samme prinsippet gjelder for gruppen plug-in.

    Du må bestemme hvilken plug-ins er obligatoriske for vårt system. Klientautentiserings plug-ins som brukes i situasjoner hvor bruker-ID og passord validering levert på en CONNECT eller legge uttalelse skjer på klientsystemet. Så databasesystemet konfigurasjonsparametere SRVCON_AUTH eller autentisering må settes til verdien kunden. Klienten autentisering er vanskelig å sikre og anbefales vanligvis ikke. Server plug-in er generelt anbefalt fordi den gir en server side validering av bruker-ID og passord, hvis klienten utfører en CONNECT eller ATTACH utsagn, og dette er sikker måte. Serveren plug-in gir også en måte å kartlegge LDAP bruker-ID for DB2 risasjons-IDer.

    Nå kan du starte installasjon og konfigurering av DB2 tilleggsmoduler for sikkerhet, trenger du å tenke på den nødvendige kataloginformasjon treet for DB2. DB2 benytter indirekte autorisasjon som betyr at en bruker tilhører en gruppe, og denne gruppen ble gitt med færre myndigheter. Du må definere alle DB2-brukere og DB2-grupper i LDAP-katalogen

    Bilde

    LDIF fil openldap.ldif bør inneholde koden under.
    # # LDAP root objekt # eksempel. com # dn: dc = eksempel, dc = com st: eksempel o: eksempel object: organisasjon object: dcObject # # DB2 grupper # dn: cn = dasadm1, dc = eksempel, dc = com cn: dasadm1 object: top object: posixGroup gidNumber: 300 object: groupOfNames medlem: uid = dasusr1, cn = dasadm1, dc = eksempel, dc = com memberUid: dasusr1 dn: cn = db2grp1, dc = eksempel, dc = com cn: db2grp1 object: top object: posixGroup gidNumber: 301 object: groupOfNames medlem: uid = db2inst2, cn = db2grp1, dc = eksempel, dc = com memberUid: db2inst2 dn: cn = db2fgrp1, dc = eksempel, dc = com cn: db2fgrp1 object: top object: posixGroup gidNumber: 302 object : groupOfNames medlem: uid = db2fenc1, cn = db2fgrp1, dc = eksempel, dc = com memberUid: db2fenc1 # # DB2-brukere # dn: uid = dasusr1, cn = dasadm1, dc = eksempel, dc = com cn: dasusr1 sn: dasusr1 uid: dasusr1 object: top object: inetOrgPerson object: posixAccount uidNumber: 300 gidNumber: 300 loginShell: /bin /bash homeDirectory: /home /dasusr1 dn: uid = db2inst2, cn = db2grp1, dc = eksempel, dc = com cn: db2inst2 sn: db2inst2 uid: db2inst2 object: top object: inetOrgPerson object: posixAccount uidNumber: 301 gidNumber: 301 loginShell: /bin /bash homeDirectory: /home /db2inst2 dn: uid = db2fenc1, cn = db2fgrp1, dc = eksempel, dc = com cn: db2fenc1 sn: db2fenc1 uid: db2fenc1 object: top object: inetOrgPerson object: posixAccount uidNumber: 303 gidNumber: 303 loginShell: /bin /bash homeDirectory: /home /db2fenc1

    Lag en fil som heter "db2.ldif 'og lim eksempelet ovenfor inn i den. Ved hjelp av denne filen, legge de definerte strukturer til LDAP-katalogen.

    Hvis du vil legge til DB2-brukere og DB2-grupper til LDAP-katalog, må du binde brukeren som "rootdn 'til LDAP-serveren for å få den eksakte privilegier.

    Utfør følgende syntaxes å fylle LDAP informasjon katalog med alle våre objekter definert i LDIF filen 'db2.ldif'
    ldapadd -x -D "cn = sjef, dc = eksempel , dc = com "-W -f < banen > /db2.ldif

    Utfør søkeresultat med mer parameter
    ldapsearch -x | mer
    Klar filsystemet for DB2 bruk

    Opprette eksempel for våre LDAP brukeren db2inst2. Denne brukeren krever hjemmeområde med to tomme filer inne i hjemmekatalogen. Før du oppretter en ny forekomst, må du opprette en bruker som vil være eier av forekomsten.

    Etter å skape forekomsten bruker, bør du ha for å opprette filen '.profile' og '.login' i brukerens hjemmekatalog, vil som endres av DB2. For å opprette denne filen i katalogen, utføre følgende kommando:
    mkdir /home /db2inst2 mkdir /home/db2inst2/.login mkdir /home/db2inst2/.profile

    Du har registrert alle brukere og grupper relatert med DB2 i LDAP-katalogen, nå kan du opprette en forekomst med navnet 'db2inst2 "med forekomsteier id' db2inst2" og bruke den beskyttede bruker-id 'db2fenc1', som er nødvendig for å kjøre brukerdefinerte funksjoner (UDFer) eller lagrede prosedyrer.
    /opt/ibm/db2/V10.1/instance/db2icrt -u db2fenc1 db2inst2 DBI1070I Program db2icrt fullført.

    Nå sjekke forekomsten hjemmekatalog. Du kan se ny underkatalog kalt "sqllib 'og .profile og .login filer tilpasset for DB2-bruk.

    Konfigurering autentiseringsfelles-ins for LDAP-støtte i DB2

    Kopier den nødvendige LDAP plug-ins til den aktuelle DB2 katalogen:
    cp ///v10/IBMLDAPauthserver.so /home /db2inst2 /sqllib /sikkerhet /plugin /server /. cp ///v10/IBMLDAPgroups.so /home/db2inst2/sqllib/security/plugin/group/.

    Once plug-ins er kopiert til den angitte katalogen, du tonet å logge inn på DB2 forekomsteier og endre konfigurasjonen databasesystemet til å bruke disse plug-ins Anmeldelser Su -. db2inst2 db2inst2> db2 update dbm cfg hjelp svrcon_pw_plugin IBMLDAPauthserver db2inst2> db2 update dbm cfg hjelp group_plugin IBMLDAPgroups db2inst2> db2 update dbm cfg hjelp autentisering SERVER_ENCRYPT db2inst2> db2stop db2inst2> db2start

    Denne endringen trer i kraft etter at du starter DB2-forekomst. Når du har startet eksempel, må du installere og konfigurere hoved DB2 LDAP konfigurasjon fil som heter "IBMLDAPSecurity.ini" for å gjøre DB2 plug-ins jobbe med gjeldende LDAP konfigurasjon.

    IBMLDAPSecurity.ini filen inneholder Anmeldelser; ------------------------------------------------- ----------; SERVEREN messige verdier; ---------------------------------------------- -------------; Navn på din LDAP server (e).; Dette er en plass separert liste over LDAP-serveradresser,; med et valgfritt portnummer for hver en:; host1 [: port] [vert2: [port2] ...]; Standard portnummer er 389 eller 636 hvis SSL er aktivert. LDAP_HOST = my.ldap.server; ------------------------------------------ -----------------; BRUKERmessige verdier; ---------------------------------------------- ------------- rs; LDAP objekt klasse brukes for bruk USER_OBJECTCLASS = posixAccount; LDAP-bruker attributt som representerer "brukerid"; Dette attributtet er kombinert med USER_OBJECTCLASS og; USER_BASEDN (hvis spesifisert) å konstruere et LDAP-søk; filtrere når en bruker utsteder en DB2 CONNECT uttalelse med en; ukvalifisert brukerid. For eksempel bruker standardverdiene; i denne konfigurasjonsfilen (db2 koble til mydb brukeren bob, ved hjelp bobpass) resulterer i følgende søkefilter: OrgPerson) (uid = bob); &(object = inet USERID_ATTRIBUTE = uid representerer DB2 autorisasjon ID, LDAP bruker attributt, AUTHID_ATTRIBUTE = uid; ---------------------------- -------------------------------; GROUP messige verdier; -------------- --------------------------------------------- ps; LDAP objektklassen brukes for grou GROUP_OBJECTCLASS groupOfNames på = representerer navnet på gruppen; LDAP-gruppe attributt th GROUPNAME_ATTRIBUTE = cn; Bestemmer metoden som brukes for å finne gruppemedlemskap, for en bruker Mulige verdier er:; SEARCH_BY_DN - Søk etter grupper som liste brukeren. . som, et medlem Medlemskap er indikert av; gruppe attributtet definert som; GROUP_LOOKUP_ATTRIBUTE; USER_ATTRIBUTE - En brukers grupper er oppført som attributter;... av brukerobjektet selv Søk etter den, bruker attributtet definert som TRIBUTE å få grupper; GROUP_LOOKUP_AT GROUP_LOOKUP_METHOD = SEARCH_BY_DN; GROUP_LOOKUP_ATTRIBUTE; Navn på attributtet brukes til å bestemme gruppemedlemskap, slik det er beskrevet ovenfor. llGroups; GROUP_LOOKUP_ATTRIBUTE = ibm-a GROUP_LOOKUP_ATTRIBUTE = medlem

    Nå finne filen IBMLDAPSecurity.ini fil i gjeldende forekomstkatalogen. Kopiere prøve innholdet over i samme
    Cp //db2_ldap_pkg/IBMLDAPSecurity.ini /home /db2inst2 /sqllib /cfg /

    Nå må du starte DB2-forekomst, ved hjelp av to syntaxes gitt nedenfor.
    db2inst2 > db2stop db2inst2 > db2start

    På dette punktet, hvis du prøver 'db2start' kommando, du vil få sikkerhet feilmelding. Fordi, er ikke DB2 sikkerhetskonfigurasjonen ennå konfigurert riktig for din LDAP miljøet.

    Tilpasse begge konfigurasjoner

    Hold LDAP_HOST navn hendig, som er konfigurert i slapd.conf fil.

    Nå redigere IMBLDAPSecurity.ini fil og skriv inn LDAP_HOST navn. Den LDAP_HOST navn i begge de nevnte filene må være identisk

    Innholdet i filen som vist nedenfor.
    ; ------------------- ----------------------------------------; SERVEREN messige verdier; ---------------------------------------------- ------------- LDAP_HOST = localhost; --------------------------------- --------------------------; BRUKERmessige verdier ----------------------------; ------------------ ------------- USER_OBJECTCLASS = posixAccount USER_BASEDN = dc = eksempel, dc = com USERID_ATTRIBUTE = uid AUTHID_ATTRIBUTE = uid; ------------------ -----------------------------------------; GROUP messige verdier; ---------------------------------------------- ------------- GROUP_OBJECTCLASS = groupOfNames GROUP_BASEDN = dc = eksempel, dc = com GROUPNAME_ATTRIBUTE = cn GROUP_LOOKUP_METHOD = SEARCH_BY_DN GROUP_LOOKUP_ATTRIBUTE = medlem

    Når du har endret disse verdiene, tar LDAP umiddelbart effekt og DB2-miljøet med LDAP fungerer perfekt.

    Du kan logge ut og logge inn igjen til "db2inst2 'bruker.

    Nå forekomsten arbeider med LDAP-katalogen.




    Previous:
    Next Page:No