Å administrere et stort antall sertifikater kan være ganske vanskelig. Tilfeldige hendelser, for eksempel den siste bransjen serienummer entropiproblem, kan kreve at administratorer manuelt tilbakekaller og utsteder hundrevis av sertifikater på en gang. Våre egne supportagenter og administratorer har også opplevd dette tidligere, et faktum som motiverte SSL.com til å implementere en mer praktisk løsning: SSL.com Web Services (SWS) API.
SWS API kan brukes til å automatisere forskjellige sertifikatrelaterte operasjoner, for eksempel å utstede sertifikater, re-keying og reprocessing orders, administrere brukertilgang, og så videre via et hvilket som helst programmerings- eller skriptspråk. For å få forhåndsregulerte API-CURL-kommandoer for en individuell ordre, kan du prøve å legge ved /developer
på slutten av den sertifikatbestillingssiden (f.eks https://www.ssl.com/certificate_orders/co-1234xyz/developer
).
For å introdusere noen av API-funksjonene, vil denne opplæringen lede deg gjennom utstedelsen av en domenevalideret (DV) webserveren sertifikat. I prosessen vil vi berøre mange nyttige emner, som å få tilgang til API, opprette en CSR, og forberede serveren din for validering av domenekontroll. I tillegg vil vi se hvordan vi kan tilbakekalle sertifikater i bulk via API, noe som er spesielt nyttig i tilfeller av sikkerhetshendelser.
Sandkassen
Enhver form for automatisering krever omfattende tester før lansering i et produksjonssystem, spesielt når det er penger involvert. Av denne grunn har SSL.com implementert og vedlikeholder sandkasse. Sandbox er en utviklingsklon av vår produksjons API. Den inneholder all funksjonaliteten til originalen, men er ikke koblet til produksjonsdatabasen. Dette betyr at du kan opprette nye brukere og eksperimentere fritt uten frykt for å rote noe og bli siktet for en feil.
Når du er fornøyd med at automatiseringen din fungerer som den skal i sandkassen, kan du deretter flytte koden til produksjon og være sikker på at skriptene dine ikke vil mislykkes.
Produksjons-API-en finner du i følgende URL:
https://sws.sslpki.com/
For å utføre API-anrop til sandkassen, trenger du bare å endre domenenavnet som vist i følgende kodebit:
https://sws-test.sslpki.com/
Forbered miljøet
Før du begynner å leke med API, må du først forberede et arbeidsmiljø. Verktøyene vi skal bruke i løpet av denne opplæringen er en Linux-terminal og din pålitelige tekstredigerer.
Det første du trenger er en katalog for alle nødvendige filer. For verktøyets skyld vil vi referere til denne katalogen som sslcom_api_test/
eller “arbeidskatalogen”. For å opprette og gå inn i katalogen, vennligst send følgende kommandoer til terminalen.
$ mkdir ~ / sslcom_api_test $ cd ~ / sslcom_api_test
Deretter må du laste ned SSL.coms mellomsertifikatpakke, som er en arkivfil som inneholder alle nødvendige sertifikatfiler for å få sikker tilgang til APIen. På den måten blir all data du utveksler med API-serveren kryptert, og du kan være trygg på at all sensitiv informasjon, for eksempel API-nøkler, vil være beskyttet mot avlytting.
Last ned ZIP-arkivet fra lenken over, og pak det ut til arbeidskatalogen. (Forsikre deg om at du endrer ~/Downloads
til katalogen der du lagret ZIP-filen, hvis nødvendig). Sertifikatfilen vi skal bruke i hele denne artikkelen er SSL_COM_RSA_SSL_SUBCA.crt
.
$ unzip ~ / Nedlastinger / SSLcom_DV_CA_Zip.zip -d. Arkiv: ./SSLcom_DV_CA_Zip.zip ekstrahering: ./SSL_COM_RSA_SSL_SUBCA.crt ekstrahering: ./SSL_COM_ROOT_CERTIFICATION_AUTHORITY_RSA.crt ekstrahering: ./CERTUM_TRUSTED_NETWORK_CA.crt
Vi bruker cURL, et typisk Linux-nettverksverktøy, for alle API-anrop i denne opplæringen. cURL kan utføre hvilken som helst HTTP-operasjon og er installert som standard i de fleste Linux-distribusjoner. I tillegg kan cURL enkelt installeres på Windows via binære kjørbare filer på cURL-prosjektsiden, eller ved å velge den i Cygwin-installasjonsprogrammet. Vær imidlertid oppmerksom på at siden API er basert på åpne formater, kan du bruke nesten hvilket som helst annet nettverksverktøy eller programmeringsspråk for å få tilgang til det.
Dessuten kommer vi til å bruke OpenSSL å forberede sertifikatordren vår. OpenSSL er et verktøy med åpen kildekode som kan utføre nesten hvilken som helst kryptografisk operasjon du måtte finne behov for. Dette verktøyet er også inkludert i Cygwin-pakkelisten, og derfor kan du enten velge det for installasjon mens du konfigurerer Cygwin-forekomsten, eller installere det manuelt via de binære filene som er gitt på prosjektets hjemmeside.
Til slutt trenger du to API-nøkler for å kunne jobbe med Sandbox, som er tilknyttet brukerkontoen din. Hvis du ikke allerede har en konto i Sandkassen, kan du registrere deg via Sandkassens registreringsskjema. Prosessen er identisk med å opprette en vanlig SSL.com-kundekonto. Hvis du allerede har en konto i Sandbox, kan du trygt hoppe over dette trinnet.
Få tilgang til API
SWS APIet vårt er basert på HTTP (protokoll nettlesere bruker), og alle data blir utvekslet i JSON-format.
De fleste API-anrop krever at du inkluderer en account_key
og en secret_key
parameter for autorisasjonsformål. Du finner alltid kontoens legitimasjon på Sandbox's Dashboard-side, men i dette tilfellet skal vi hente dem via API.
Kommandoen som er oppført i neste kodebit, vil logge deg på portalen og hente kontoinformasjonen din inkludert disse API-nøklene. Hvis du kopierer og limer inn kommandoen i et terminalvindu, må du sørge for at du bytter ut USERNAME
og PASSWORD
med påloggingsinformasjonen til kontoen din.
$ curl -L --cacert SSL_COM_RSA_SSL_SUBCA.crt --request GET --data-urlencode 'password = PASSWORD' \ 'https: //sws-test.sslpki.com / user / USERNAME '{"login": "JDemo", "email": "jdemo@mailinator.com", "account_number": "abc-1ec6012", "account_key": "4497618e5c98", "secret_key": "FY + s9 / ghUrv7SQ ==", "status": "aktivert", "user_url": "https: //sws-test.sslpki.com / brukere / 1322857 "," available_funds ":" $ 0.00 "}
Selv cURLs syntaks er ganske grei, la oss bli mer kjent med det ved å se nærmere på forrige samtale.
-L
instruerer CURL til å følge alle HTTP-viderekoblinger. Du bør inkludere dette alternativet i alle samtaler for å unngå problemer.--cacert SSL_COM_RSA_SSL_SUBCA.crt
instruerer CURL for å validere API-serverens sertifikat, med sertifikatet vi lastet ned i bunten. Dette vil la CURL kryptere all data som sendes til serveren.--request GET
instruerer CURL til å utføre en HTTP GET-forespørsel. Noen samtaler godtar bare HTTP POST- eller PUT-forespørsler. Dette alternativet er måten å håndtere slike forespørsler på.--data-urlencode
forbereder kontopassordet som skal overføres til serveren. GET-forespørsler kan inkludere parametere i URL-en, mens PUT- og POST-forespørsler bare inkluderer parametere i kroppen. Siden passordet vil bli gitt via URL, må vi kode det for å unnslippe symboler (f.eks/
,?
or#
) som kan forvirre serveren. Denne prosessen kalles URL-koding.
\
) på slutten av den første linjen tvinger Linux terminal til å ignorere et nytt linjetegn og fortsette å analysere tegn på neste linje som en del av den opprinnelige kommandoen. Vi bruker denne syntaks for å dele lange kommandoer i flere linjer, i et forsøk på å gjøre dem mer presentable.Resultatet av API-anropet er et JSON-objekt som inneholder kontoinformasjon, inkludert account_key
og secret_key
, kreves i påfølgende API-anrop.
Utsted et serversertifikat
Etter å ha forberedt arbeidsmiljøet og fått tak i API-tastene er du nå klar til å begynne å leke med API. Som et eksempel vil vi be om utstedelse av en Grunnleggende SSL-sertifikat for en tenkt webserver som heter example.ssl.com
. Uansett om du bruker API eller kundeportal, krever utstedelse av et sertifikat at visse trinn følges.
Disse trinnene inkluderer å generere et privat og offentlig nøkkelpar, opprette en sertifikatsigneringsforespørsel (CSR), opprette en sertifikatordre og utføre validering av domenekontroll.
Generer CSR
Det finnes flere metoder å lage en CSRMen siden vi allerede bruker terminalen, la oss se på hvordan du lager en CSR med OpenSSL. Hvis du allerede har en CSR du kan bruke til dette formålet, kan du hoppe over dette trinnet.
A CSR er en base64-kodet fil som inneholder mesteparten av informasjonen som vil bli inkludert i den endelige sertifikatfilen. Blant det viktigste innholdet er offentlig nøkkel og domenenavnet til serveren sertifikatet vil bli utstedt for.
Det betyr at vi trenger et offentlig nøkkelpar før vi utsteder en CSR. Følgende kommando oppretter en ny PEM fil i arbeidskatalogen, navngitt example.ssl.com.key
, som inneholder de to tastene.
$ openssl genrsa -out eksempel.ssl.com.key 2048 Genererer RSA privat nøkkel, 2048 bit lang modul ................... +++ ...... .................................................. ...... +++ e er 65537 (0x010001)
Ved hjelp av nøkkelparet kan OpenSSL nå generere en CSR for deg. For å oppnå dette, bruk kommandoen som vises i følgende kodebit.
$ openssl req -nye -nøkkel eksempel.ssl.com.key -out eksempel.ssl.com.csr Du er i ferd med å bli bedt om å legge inn informasjon som vil bli innlemmet i sertifikatforespørselen din. Det du er i ferd med å skrive inn er det som kalles et fremtredende navn eller en DN. Det er ganske mange felt, men du kan la det være tomt. For noen felt vil det være en standardverdi. Hvis du skriver inn '.', Vil feltet være tomt. ----- Landnavn (2 bokstavskode) [AU]: Navn på stat eller provins i USA (fullt navn) [Noen stat]: Texas lokalitetsnavn (f.eks. By) []: Houston organisasjonsnavn (f.eks. Selskap) [Internet Widgits Pty Ltd]: Eksempel på organisasjonsenhetsnavn (f.eks. Seksjon) []: Eksempel på avdelingens fellesnavn (f.eks. Server FQDN eller DITT navn) []: eksempel.ssl.com E-postadresse []: admin@eksempel.ssl. com Vennligst skriv inn følgende "ekstra" attributter som skal sendes sammen med sertifikatforespørselen. Et utfordringspassord []: Et valgfritt firmanavn []:
OpenSSL vil spørre deg om din grunnleggende kontaktinformasjon og Vanlig navn av sertifikatet. For SSL-sertifikater er Common Name serverens domenenavn (i dette tilfellet example.ssl.com
). Hvis du kjører kommandoen ovenfor, vil du opprette en fil med navnet example.ssl.com.csr
, i den gjeldende katalogen som inneholder base64-kodet CSR.
$ cat eksempel.ssl.com.csr -----BEGIN CERTIFICATE REQUEST----- MIIC5DCCAcwCAQAwgZ4xCzAJBgNVBAYTAlVTMQ4wDAYDVQQIDAVUZXhhczEQMA4G A1UEBwwHSG91c3RvbjEQMA4GA1UECgwHRXhhbXBsZTEbMBkGA1UECwwSRXhhbXBs ZSBEZXBhcnRtZW50MRgwFgYDVQQDDA9leGFtcGxlLnNzbC5jb20xJDAiBgkqhkiG 9w0BCQEWFWFkbWluQGV4YW1wbGUuc3NsLmNvbTCCASIwDQYJKoZIhvcNAQEBBQAD ggEPADCCAQoCggEBAN7XMG7+zhaGfimdD1F0P3xxUS8dC6knKId3ONEt14Wa5E62 ZIUkyNgQC7gd3Be31jBhcuzJKn8UbTcWnPXd3OCbznbkqXtnljiF3yN9cRnj2f7y 89Hfmje8C07xe6AsoUMSTYzwsoo3zai1bxOUhy+uDU8FzxcSHunepdx/naHXY1Md waQwzBCp668hFeIOslEjkTCNle3HK1LrgjZCIg0tyHBuZTNuUcQOyXrrDSrtOxx8 dqOD7sYqJie2xiCC9kkpNGYYTEuCuVKidgiC3e/DuLUNbhoUMfSENv64TGA7lRIj nEBrrEm6FOSgPEGgEsM78cexVaqNCavNXNy49ysCAwEAAaAAMA0GCSqGSIb3DQEB CwUAA4IBAQAV1Ac9nYH64BrB4OHlOYPkZbK6qCKfipTg7s4Xdcc3TponjTnMJyaQ NNh0koCUOFJaYPjWIk/YkCeGNv/fbce+sddNbh0jtcVTPw8EFvs53IaUAE99zDvn 577Azj+OXfmaLQXjK15BtnT5hbmRKsrpPxnAdk4NOohM7QKWNEdBrcfTuH1q3WpD 6jSD35FlIFUfMgNi34mxF4vYamGrWgdURIb7DCk2h7B2LQK+vRNx1uPm9FVSeYZc tHZWTiw2xEExw2Qco6lqXYl8t0Eo07gYl4gAEx9bibvVqYMo3Zss1mRg6+WEB8Xs G+Hn1TG3XIaIbmvlpRNma/l766KZwLXG -----END CERTIFICATE REQUEST-----
Opprett sertifikatbestillingen
Etter å ha oppnådd CSR, er du nå klar til å opprette en sertifikatordre via API. Den første API-samtalen vi så på var en GET-forespørsel, mens denne er en POST. POST-forespørsler må inneholde alle parametere i kroppene sine som JSON-objekter. Derfor må du formatere sertifikatordrenes parametere i JSON. En JSON-konfigurasjon for dette eksemplet finner du i følgende kodebit.
{"account_key": "4497618e5c98", "secret_key": "FY + s9 / ghUrv7SQ ==", "product": "106", "period": "365", "server_software": "15", "organization_name" : "Eksempel", "street_address_1": "Eksempel st", "lokalitetsnavn": "Houston", "state_or_province_name": "Texas", "postal_code": "77777", "country_name": "US", "duns_number": "1234567", "company_number": "Eksempelnummer", "registered_country_name": "US", "unique_value": "1ed1c72baf", "csr":" ----- BEGIN SERTIFIKAT FORESPØRSEL ----- MIIDIjCCAgwaRlkPnuD ... 0QQ3JKQqJbii3760Rgon8hZmbkiE = ----- SLUT SERTIFIKAT FORESPØRSEL ----- "}
Vi har allerede sett API-nøklene før. For å bestille sertifikater må vi imidlertid også inkludere tilleggsparametere som product
ID og gyldigheten period
. Du finner en liste over produkt-IDer i SWS API-dokumentasjon. I dette eksemplet bestilles et grunnleggende SSL-sertifikat med en gyldighetsperiode på 1 år. Den neste gruppen parametere lagrer kontaktinformasjon om registranten (det er deg). De unique_value
parameter (valgfritt), inneholder en alfanumerisk streng som sørger for at forespørselen er unik. Hvis du ikke oppgir en unik verdi, genereres en tilfeldig verdi for deg. Å spesifisere en unik verdi på denne måten er nyttig hvis du vil generere DCV-filer eller CNAME-oppføringer utenfor SSL.coms brukerportal. Til slutt, csr
parameteren må inneholde en gyldig base64-kodet CSR, som den vi lagret i example.ssl.com.csr
.
Bytt ut parametrene med dine egne verdier Kontaktinformasjon og CSR, og lagre denne JSON-konfigurasjonen i en fil som heter example.ssl.com.json
.
Med alt satt opp, er du nå klar til å opprette bestillingen. cURL godtar JSON-parametrene enten som en innebygd streng eller via et filnavn. På grunn av at det første alternativet er for ordentlig, la oss sende filnavnet i stedet.
Vær oppmerksom på --data-binary
cURL-bryter, som instruerer cURL om å inkludere filens innhold i brødteksten til POST-forespørselen.
$ curl -L --cacert SSL_COM_RSA_SSL_SUBCA.crt --request POST --header "Content-Type: application / json" \ --data-binary "@ example.ssl.com.json" 'https: // sws-test .sslpki.com / sertifikater '{"ref": "co-ac1ecm200", "registrant": {"organization": "Eksempel", "organization_unit": null, "street_address_1": "Eksempel st", "street_address_2": null, "street_address_3": null, "locality": "Houston", "state_or_province": "Texas", "post_office_box": null, "postal_code": "77777", "country": "US", "email": null} , "order_status": "validering kreves", "validations": null, "order_amount": "$ 49.00", "certificate_url": "https://sandbox.ssl.com/team/abc-1ec6012/certificate_orders/co-ac1ecm200 "," receipt_url ":" https://sandbox.ssl.com/team/abc-1ec6012/orders/fe3b-1ecm201 "," smart_seal_url ":" https://sandbox.ssl.com/team/abc-1ec6012 / Certificate_orders / co-ac1ecm200 / site_seal "," validation_url ":" https://sandbox.ssl.com/team/abc-1ec6012/certificate_orders/co-ac1ecm200/validation "," external_order_number ": null," Certificate ": null }
Resultatet av operasjonen er et annet JSON-objekt som inneholder detaljene i den nylig opprettede sertifikatordren. Vi kan se dens order_status
, og referansenummeret i ref
parameter som brukes til å referere til denne ordren i alle påfølgende API-anrop. Dessuten inneholder utdata forskjellige nettadresser, for eksempel certificate_url
, som peker på bestillingens detaljer i portalen og validation_url
, som peker til valideringssiden for ordren.
Endelig, certificates
vil inneholde alle sertifikater tilknyttet bestillingen. Siden bestillingen ikke er validert ennå, har ingen sertifikater blitt opprettet.
Validering av domenekontroll
Som angitt i sertifikatordren order_status
of validation required
, må du utføre valideringen før du har utstedt et sertifikat.
Offentlige klarerte CAer (for eksempel SSL.com) er pålagt å verifisere at sertifikatkjøperen faktisk kontrollerer serveren sertifikatet vil bli utstedt for før de utsteder sertifikater. Dette kan oppnås gjennom flere metoder, og du kan se alle tilgjengelige valideringsmetoder for en bestemt ordre via dette neste API-anropet.
Forsikre deg om at du bytter ut referansenummeret co-ac1ecm200 i URL-en med bestillingens referansenummer, som ble generert i forrige API-anrop.
$ curl --cacert SSL_COM_RSA_SSL_SUBCA.crt --request GET \ --data-urlencode 'secret_key = FY + s9 / ghUrv7SQ ==' --data-urlencode 'account_key = 4497618e5c98' \ 'https: //sws-test.sslpki.com / sertifikat / co-ac1ecm200 / valideringer / metoder '{"instruksjoner": "https://www.ssl.com/faqs/ssl-dv-validation-requirements/", "md5_hash": "29BD4C00B65613CCEC04C19C0050D931", " sha2_hash ": "BF340FDFD9C43D45B8310FC4A400E4D4B61CAF8D2002BAAF0945252E35F9D751", "dns_sha2_hash": "BF340FDFD9C43D45B8310FC4A400E4D4.B61CAF8D2002BAAF0945252E35F9D751.167c8a5c49", "dcv_methods": { "example.ssl.com": { "EMAIL_ADDRESSES": [ "admin@ssl.com"," administrator @ ssl .com "," webmaster@ssl.com "," hostmaster@ssl.com "," postmaster@ssl.com "," admin@example.ssl.com "," administrator@example.ssl.com "," webmaster @ example.ssl.com "," hostmaster@example.ssl.com "," postmaster@example.ssl.com "]," http_csr_hash ": {" http ":" http://example.ssl.com/.well-known/pki-validering / 29BD4C00B65613CCEC04C19C0050D931.txt "," allow_https ":" true "," contents ":" BF340FDFD9C43D45B8310FC4A400E4D4B61CAF8D2002BAAF0945252E35F9d751 \ ncsr_hash ": {" cname ":" _29BD4C00B65613CCEC04C19C0050D931.example.ssl.com. CNAME ff8716e0fd.ssl.com. "," Name ":" _29BD4C00B65613CCEC04C19C0050D931.example.ssl.com "," value ":" BF340FDFD9C43D45B8310FC4A400E4D4.B61CAF8D2002BAAF0945252 .ff. com "}
Den returnerte utdataene vil inneholde all informasjonen du trenger for å utføre domenekontrollvalidering. Hvis du for eksempel vil bruke http_csr_hash
valideringsmetode, må du opprette en fil på serveren dette sertifikatet vil bli utstedt for, navngitt .well_known/pki-validation/29BD4C00B65613CCEC04C19C0050D931.txt
. Filen skal nøyaktig inneholder verdien av contents
parameter.
Etterpå kan du besøke validation_url
funnet i forrige samtale som opprettet ordren og fortsett med valideringen slik du normalt ville gjort med en ordre du har opprettet via kundeportalen din. (Du kan alltid besøke valideringer og finn URL for den bestemte ordren).
Etter at en vellykket validering av domenekontroll har funnet sted, vil sertifikatet bli utstedt, og du vil kunne laste ned det.
Hent sertifikatet
Du kan finne sertifikatet ditt i nettportalen eller hente det via API. For våre formål vil vi bruke API. Som det fremgår av forrige avsnitt, inneholder svaret et referansenummer når du oppretter en ny sertifikatordre. Dette nummeret kan brukes til å hente ordens detaljer inkludert de faktiske sertifikatdataene.
$ curl --request GET -L --cacert SSL_COM_RSA_SSL_SUBCA.crt \ --data-urlencode 'secret_key = FY + s9 / ghUrv7SQ ==' --data-urlencode 'account_key = 4497618e5c98' \ 'https: // sws-test .sslpki.com / sertifikat / co-ac1ecm200? response_type = individuelt & response_encoding = base64 '{"beskrivelse": "1 års grunnleggende SSL", "produkt": "106", "produktnavn": "basicssl", "order_status": "utstedt" , "order_date": "2019-05-02T10: 08: 48.000-05: 00", "registrant": {"organization": "Eksempel", "organization_unit": null, "street_address_1": "Eksempel st", " street_address_2 ": null," street_address_3 ": null," locality ":" Houston "," state_or_province ":" Texas "," post_office_box ": null," postal_code ":" 77777 "," country ":" US "," e-post ": null}," sertifikater ":" \ nMIIE1TCCA72gAwIBAgIRANsjhF + t ... 4CAw5Egg73IgIHggE1QEZiYQRu + 0wDQY \ n "," common_name ":" eksempel.ssl.com "," domains_qty_purchased ":" 1 "," wild_purchased ":" q " 0 "," subject_alternative_names ": [" example.ssl.com "," www.example.ssl.com "]," validations ": null," effective_date ":" 2019-05-03T11: 22: 37.000-05: 00 "," expiration_date ":" 2020-05-02T11: 22: 37.000-05: 00 "," algoritme ":" SHA256 "," external_order_number ": null," domener ": null," site_seal_code ": null," subscriber_agreement ": null," server_software ": 15," kontakter ": [{...}, {...}]}
Siden API er ment å brukes programmatisk, må du analysere JSON-svaret for å isolere sertifikatet og lagre det i en fil. Analyse av JSON er utenfor rammen for denne artikkelen; det er imidlertid en enkel oppgave som enkelt kan implementeres i de fleste moderne skript- eller programmeringsspråk.
Søk på sertifikatbestillinger
Hvis du ikke har referansenummeret for hånden, kan du sende en API-samtale for å hente alle sertifikatordrene til kontoen din. Denne samtalen lar deg filtrere ordrene, samt hvilken informasjon som vises.
$ curl --cacert SSL_COM_RSA_SSL_SUBCA.crt --request GET \ --data-urlencode 'secret_key = FY + s9 / ghUrv7SQ ==' --data-urlencode 'account_key = 4497618e5c98' \ 'https: //sws-test.sslpki.com / sertifikater? felt = domener, ref, order_status '[{"ref": "co-ac1ecm200", "order_status": "utstedt", "domener": ["eksempel.ssl.com"]}, {" ref ":" co-581eclsap "," order_status ":" validering, vent litt "," domains ": [" example.ssl.com "]}, {" ref ":" co-6f1ecm1of "," order_status ": "venter på kontaktinformasjon fra kunde", "domener": ["test.ssl.com"]}}
De fields
URL-parameter lar deg kontrollere hvilke sertifikatdetaljer som skal vises i utdataene. Du kan i tillegg paginere via per_page
og page
forespørsel parametere. For å begrense antall sertifikater basert på utstedelsesdatoene du kan bruke start
og end
parametre. Til slutt kan du filtrere og søke i ordrene ved å bruke kriterier som produkt-ID, utløpsdato eller et hvilket som helst annet felt i sertifikatet. For mer informasjon, ta en titt på SSL.coms API-dokumentasjon.
Inndra sertifikatet
Den endelige funksjonen vi skal se på i denne guiden er tilbakekall av bulk sertifikater. Sertifikater kan beskytte deg så lenge bare du (eller personer du stoler på) har den private nøkkelen som er tilknyttet dem. I tilfelle en privat nøkkel blir kompromittert, eller informasjon om sertifikatet må endres, må sertifikatet øyeblikkelig tilbakekalles og en ny skal utstedes.
I tilfeller hvor det mistenkes at den private nøkkelen er stjålet, er det viktig at klientprogramvare (for eksempel nettlesere eller operativsystemer) slutter å godta den så gyldig så snart som mulig. Av denne grunn anbefaler vi på det sterkeste at du implementerer et automatisert system for tilbakekall, gjenutstedelse, gjenfinning og installering av sertifikater på serverne dine.
SSL.coms SWS API lar deg programmatisk tilbakekalle ett, flere eller alle sertifikatene under noen av sertifikatordrene dine. Følgende API-anrop vil tilbakekalle alle sertifikater under sertifikatordre co-ac1ecm200:
curl --cacert SSL_COM_RSA_SSL_SUBCA.crt --request DELETE --header "Content-Type: application / json" \ --data-binary '{"account_key": "4497618e5c98", "secret_key": "FY + s9 / ghUrv7SQ = = "," reason ":" stjålet "} '\' https: //sws.sslpki.com / certificate / co-ac1ecm200 '{"status": "tilbaketrukket"}
Denne CURL-kommandoen gir en SLETT HTTP-forespørsel (i stedet for en GET eller POST som tidligere kommandoer) og gir JSON-konfigurasjonen inline. Det er også gyldig å opprette en fil med JSON-innholdet og gi den til CURL via filnavn på samme måte som kommandoen som utstedte sertifikatordren.
Du kan angi hvilken grunn du ønsker i reason
parameter, og kan eventuelt inkludere en liste over sertifikatserienummer i JSON for bare å tilbakekalle sertifikatene som samsvarer med disse seriene. Hvis ingen serienumre er inkludert, vil alle sertifikater som tilhører den spesifiserte sertifikatordren bli opphevet.
For mer informasjon om dette API-anropet, ta en titt på vår API dokumentasjon.
konklusjonen
Denne artikkelen beskriver en enkel prosess for å utstede og tilbakekalle et DV-serversertifikat, som et forenklet eksempel på operasjonene du kan utføre via SSL.coms SWS API. Vi på SSL.com oppfordrer til bruk av automatisering der det er mulig, fordi det fjerner bryet med å utføre de samme repeterende oppgavene manuelt, og enda viktigere, gir raskere responstider i nødstilfeller (se serienummer entropiproblem).
Forsøk gjerne å eksperimentere med vårt sandkasse og SWS API, og ikke nøl med å kontakte supportagentene våre hvis du får problemer.
- SSL.com-kontoen din - sender inn en CSR
- Mislykket forhånds-test ?!
- SSL.com-kontoen din - valideringer
- SSL.com-kontoen din - Bestillinger
- Din SSL.com-konto - Domener
- SSL /TLS Sertifikatutstedelse og tilbakekalling med ACME
- Støttede Cloud HSM-er for dokumentsignering og EV-kodesignering