LDAP-tjeneste for sertifikatoppslag
Introduksjon
Buypass tilbyr en katalogtjeneste for å hente ut sertifikater utstedt fra Buypass CA. Dette kan være hensiktmessig i tilfeller der man trenger å finne sertifikatet til en part man skal kommunisere med, feks for å få tak i den offentlige nøkkelen for å kryptere en melding. Tjenesten kan også benyttes for å hente ut CA-sertifikater og CRL-er.
Katalogtjenesten benytter LDAP (v3) og benyttes kun til oppslag, dvs tjenesten kan kun brukes til å hente ut informasjon, ikke til å legge til eller endre informasjon. Tjenesten krever ikke klientautentisering.
Katalogtjenesten er basert på bruk av LDAP-protokollen med parametre som angitt i tabellen nedenfor.
Attributt | Parameter |
---|---|
Adresse | |
Port | 389 |
Søkebase | dc=Buypass,dc=NO,CN=<CA Name> |
Protokoll | LDAP v3 |
Tilgang | Anonymous |
Oppslag på sertifikater via LDAP
LDAP er en protokoll som benyttes for å aksessere elementer i en katalogstruktur som i vårt tilfelle består av CA-er og sertifikater. Vi kan se på CA-ene som noder i en slik katalogstruktur der det er mulig å søke etter attributter som sertifikater, CA-sertifikater og CRL-er.
I eksemplet nedenfor ser vi informasjon som returnes ved oppslag på CA = Buypass Class 3 CA G2 ST Business i vårt testmiljø. Attributtene til høyre er attributter som returneres fra CA-en som node i katalogstrukturen, dette inkluderer CA-sertifikat og CRL.
På venstre finner vi sertifikater utstedt under CA-en, i dette tilfellet resultat av søk med default søkeattributter begrenset i hht regler beskrevet nedenfor.
Vi kan se på disse elementene som attributter som brukes av LDAP tjenesten:
Attributter | Beskrivelse |
---|---|
userCertificate;binary | Sluttbrukersertifikat, dvs person- eller virksomhetssertifikat |
cacertificate;binary | CA-sertifikat for CA-en som utgjør noden i katalogstrukturen |
certificateRevocationList;binary | Gjeldende CRL for CA-en |
objectclass | Metainformasjon som sier noe om type node og innhold |
crldp | CRL Distribution Point - brukes for å hente ut CRL |
CA-er som det kan søkes på
LDAP kan brukes for å hente ut både personsertifikater og virksomhetssertifikater utstedt under CA-ene oppgitt i tabellen nedenfor.
CA | Personsertifikat | Virksomhetssertifikat | <CA Name> |
---|---|---|---|
Buypass Class 3 CA 3 | OK | OK | Buypass Class 3 CA 3 |
Buypass Class 3 CA G2 ST Business | N/A | OK | Buypass Class 3 CA G2 ST Business |
Buypass Class 3 CA G2 HT Business | N/A | OK | Buypass Class 3 CA G2 HT Business |
Buypass Class 3 CA G2 HT Person | OK | N/A | Buypass Class 3 CA G2 HT Person |
Se også Nye CA-er ('generasjon 2') for informasjon om hvilke CA-er som brukes for sertifikater utstedt med hhv SEID v1.0 og SEID v2.0 sertifikatprofiler.
I tillegg er det definert en generalisert søkebase som kan benyttes på tvers av alle CA-ene:
- <CA Name> = Buypass Class 3 CA - denne svarer for alle Class 3 CA-ene over.
For testsertifikater benyttes stammen "Buypass Class 3 Test4 CA" i stedet for "Buypass Class 3 CA" - ellers er tjenesten tilsvarende i test.
Bruk av tjenesten
Tjenesten brukes normalt for å søke etter sertifikater ved bruk av søkbare attributter via et søkefilter i en LDAP klient, disse er angitt i tabellen nedenfor sammen sammen med hvilke sertifikater disse kan brukes for.
Attributt | Beskrivelse | Personsertifikater | Virksomhetssertifikater | Kommentar |
---|---|---|---|---|
displayname | <se CN> | OK | OK | Samme som CommonName |
cn | CommonName (CN) | OK - navn på person | OK | |
ou | OrganizationalUnit (OU) | N/A | OK | |
o | OrganizationName (O) | OK | OK | |
sn | SerialNumber (SN) | OK - unik identifikator | OK - kun SEID 1.0 | |
organizationidentifier | OrganizationIdentifier | OK - kun for SEID 2.0 | OK - kun for SEID 2.0 | Inneholder virksomhetens organisasjonsnummer |
surname | surname | OK - kun for SEID 2.0 | N/A | |
givenname | givenName | OK - kun for SEID 2.0 | N/A | |
certificateSerialNumber | Sertifikatets unike identifikator | OK | OK | |
pssUniqueIdentifier | Buypass intern sertifikatidentifikator | OK | OK |
Søk kan konstrueres i hht rfc 4511 og rfc 4515 for å gjøre oppslag på sertifikater basert på spesifikke sertifikatattributter. Det er en 1:1 mapping mellom de søkbare attributtene i tabellen over og sertifikatattributter.
Feks:
- Søk på organisasjonsnummer kan gjøres ved å benytte et søkefilter av typen (sn=123456789) eller (organizationidentifier=*123456789)
- Søk på BuypassID for personsertifikater gjøres ved å benytte et søkefilter av typen (sn=*123456789)
Det er lagt inn en begrensning på antall sertifikater som returneres i hvert søk =20.
For sertifikatinnehavere som har mange sertifikater, kan dette være en utfordring, men det er de sist utstedte sertifikatene som blir returnert. Dette forutsetter imidlertid at søkefiltrene gir eksakt match (ikke wildcard).
Eksempler
Eksempler på LDAP søkestrenger for Virksomhetssertifikater Europa som er utstedt under ny Buypass Class 3 Test4 CA G2 ST Business:
- ldap://ldap.test4.buypass.no/dc=Buypass,dc=NO,cn=Buypass Class 3 Test4 CA G2 ST Business?userCertificate?(o=Buypass AS)
- ldap://ldap.test4.buypass.no/dc=Buypass,dc=NO,cn=Buypass Class 3 Test4 CA G2 ST Business?userCertificate?(organizationidentifier=NTRNO-983163327)
Eksempler på LDAP søkestrenger for Virksomhetssertifikater generelt for et gitt organisasjonsnummer og navn
- ldap://ldap.test4.buypass.no/dc=Buypass,dc=NO,cn=Buypass Class 3 Test4 CA?userCertificate?(|(organizationidentifier=NTRNO-983163327)(sn=983163327))
- ldap://ldap.test4.buypass.no/dc=Buypass,dc=NO,cn=Buypass Class 3 Test4 CA?userCertificate?(|(o=Buypass AS)(cn=Buypass AS))
Eksempel på virksomhetssertifikat til underenhet:
- ldap://ldap.test4.buypass.no/dc=Buypass,dc=NO,cn=Buypass Class 3 Test4 CA G2 ST Business?userCertificate?(ou=UE:NO-983163327-Buypass AS)
Eksterne referanser
- rfc 4510: LDAP Technical specification road map
- rfc 4511: LDAP - the protocol
- rfc 4515: LDAP - string representation of search filters
Alternative løsninger
I en del sammenhenger kan det være aktuelt å benytte den nye tjenesten CertPub (BCP/BCL) for å hente ut sertifikater. Les mer om denne her: https://certpub.com/.