SWS API на SSL.com - Въведение

Управлението на голям брой сертификати може да бъде доста неприятно. Случайно случващи се инциденти, като наскоро в цялата индустрия издание за ентропия на сериен номер, може да изисква от администраторите да отменят и преиздават стотици сертификати едновременно. Нашите собствени агенти за поддръжка и администратори също са преживели това в миналото, факт, който мотивира SSL.com да приложи по-практично решение: API на SSL.com Web Services (SWS).

SWS API може да се използва за автоматизиране на различни операции, свързани със сертификати, като издаване на сертификати, повторно клавиширане и повторна обработка на поръчки, управление на достъпа на потребителите и т.н., чрез всеки език за програмиране или скриптове. За да получите предварително генерирани API cURL команди за индивидуална поръчка, опитайте да добавите /developer в края на тази страница за поръчка на сертификати (напр https://www.ssl.com/certificate_orders/co-1234xyz/developer).

За да представите някои от функциите на API, този урок ще ви преведе през издаването на сертифициран за домейн сертификат за уеб сървър, В процеса ще засегнем много полезни теми, като например достъп до API, създаване на CSR, и подготовка на вашия сървър за проверка на домейн контрол. Нещо повече, ще видим как можем да оттеглим сертификати групово чрез API, което е особено полезно в случаи на инциденти със сигурност.

Пясъчната кутия

Всеки вид автоматизация изисква задълбочени тестове преди пускането в производствена система, особено когато има пари. Поради тази причина SSL.com внедри и поддържа пясък, Пясъчната кутия е клон за разработка на нашия продуктов API. Той съдържа цялата функционалност на оригинала, но не е свързан с производствената база данни. Това означава, че можете да създавате нови потребители и да експериментирате свободно, без да се страхувате да объркате нещо и да не бъдете таксувани за грешка.

Когато се убедите, че вашата автоматизация функционира правилно в Sandbox, след това можете да преместите кода си на производство и да сте сигурни, че вашите скриптове няма да се провалят.

ЗАБЕЛЕЖКА: Тази статия е разработена за Sandbox и можете да експериментирате с всяко от обажданията на API, съдържащи се в този документ.

API за производство можете да намерите в следния URL адрес:

https://sws.sslpki.com/

За да извършвате API обаждания към Sandbox, трябва само да промените името на домейна, както е показано в следния фрагмент:

https://sws-test.sslpki.com/

Подгответе околната среда

Преди да започнете да играете с API, първо трябва да подготвите работна среда. Инструментите, които ще използваме в този урок са Linux терминал и вашият надежден текстов редактор.

ЗАБЕЛЕЖКА: Тези инструкции са написани за ванилията Ubuntu Linux дистрибуция, която е типична среда за развитие, която човек може да срещне в реалния свят. Като каза това, скриптите, предоставени в този документ, също работят в Windows чрез Cygwin.

Първото нещо, от което ще се нуждаете, е директория за всички необходими файлове. За полезност ще наричаме тази директория като sslcom_api_test/ или „работната директория“. За да създадете и въведете директорията, моля, подайте следните команди в терминала.

$ mkdir ~ / sslcom_api_test $ cd ~ / sslcom_api_test

След това трябва да изтеглите Пакет междинни сертификати на SSL.com, представлява архивен файл, съдържащ всички необходими файлове със сертификат за сигурен достъп до API. По този начин всички данни, които обменяте с API сървъра, ще бъдат кодирани и можете да бъдете сигурни, че всяка чувствителна информация, като например ключовете на API, ще бъде защитена от подслушване.

Изтеглете ZIP архива от връзката по-горе и го разархивирайте в работната директория. (Уверете се, че сте се променили ~/Downloads в директорията, в която сте запазили ZIP файла, ако е необходимо). Файлът на сертификата, който ще използваме в тази статия е SSL_COM_RSA_SSL_SUBCA.crt.

ЗАБЕЛЕЖКА: В Windows ще трябва да намерите ZIP архива, щракнете двукратно върху него и да извлечете файловете в работната директория.
$ unzip ~ / Downloads / SSLcom_DV_CA_Zip.zip -d. Архив: ./SSLcom_DV_CA_Zip.zip извличане: ./SSL_COM_RSA_SSL_SUBCA.crt извличане: ./SSL_COM_ROOT_CERTIFICATION_AUTHORITY_RSA.crt извличане: ./CERTUM_TRUSTED_NETWORK_CA.

Ще използваме къдрица, типичен мрежов инструмент за Linux, за всички API извиквания в този урок. cURL може да изпълнява всяка HTTP операция и е инсталиран по подразбиране в повечето дистрибуции на Linux. Нещо повече, cURL може лесно да бъде инсталиран на Windows чрез двоичните изпълними файлове, предоставени на страницата на проекта cURL, или чрез избирането му в инсталатора на Cygwin. Моля, имайте предвид, че тъй като API се основава на отворени формати, можете да използвате почти всеки друг такъв мрежов инструмент или език за програмиране за достъп до него.

Нещо повече, ние ще използваме OpenSSL да подготвим нашата поръчка за сертификат. OpenSSL е набор от инструменти с отворен код, който може да изпълнява почти всяка криптографска операция, от която може да откриете нужда. Този инструмент също е включен в списъка с пакети на Cygwin, поради което можете да го изберете за инсталиране, докато настройвате вашия екземпляр на Cygwin, или да го инсталирате ръчно чрез двоичните файлове, предоставени в началната страница на проекта.

И накрая, ще ви трябват два API ключа, за да работите с Sandbox, които са свързани с вашия потребителски акаунт. Ако все още нямате акаунт в Sandbox, моля, регистрирайте се в Sandbox  регистрационна форма. Процесът е идентичен със създаването на нормален клиентски акаунт на SSL.com. Ако вече имате акаунт в пясъчника, можете спокойно да пропуснете тази стъпка.

Достъп до API

Нашият SWS API е базиран на HTTP (браузърите на протоколи, които се използват), и всички данни се обменят в JSON формат.

Повечето обаждания от API ще изискват да включите и account_key и secret_key параметър за целите на оторизацията. Винаги можете да намерите идентификационните данни на акаунта си на страницата на таблото за управление на пясъчника, въпреки че в този случай ще ги извлечем чрез API.

Командата, изброена в следващия фрагмент от код, ще ви влезе в портала и ще извлече информацията за вашия акаунт, включително тези API ключове. Ако копирате и поставяте командата в прозорец на терминала, моля, уверете се, че сте заменили USERNAME намлява PASSWORD с идентификационните данни на вашия акаунт.

$ 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": "enabled", "user_url": "https: //sws-test.sslpki.com / users / 1322857 "," available_funds ":" $ 0.00 "}

Въпреки че синтаксис на cURL е съвсем ясен, нека ви запознаем по-подробно, като разгледаме подробно предишното обаждане.

  • -L инструктира cURL да следва всички пренасочвания на HTTP. Трябва да включите тази опция във всички обаждания, за да избегнете проблеми.
  • --cacert SSL_COM_RSA_SSL_SUBCA.crt инструктира CURL за проверка на сертификата на API сървъра, със сертификата, който изтеглихме в пакета. Това ще позволи на CURL да криптира всички данни, изпратени до сървъра.
  • --request GET инструктира cURL да извърши HTTP GET заявка. Някои обаждания приемат само HTTP POST или PUT заявки. Тази опция е начинът да се справят с подобни искания.
  • --data-urlencode подготвя паролата на акаунта за предаване на сървъра. GET заявките могат да включват параметри в URL адреса, докато PUT и POST заявките включват само параметри в тялото. Тъй като паролата ще бъде предадена чрез URL, ние трябва да я кодираме, за да избягаме от всякакви символи (напр / , ? or # ), което може да обърка сървъра. Този процес се нарича Кодиране на URL адреси.
ЗАБЕЛЕЖКА: Обратна наклона (\) в края на първия ред принуждава терминала на Linux да игнорира нов ред и да продължи да анализира символите в следващия ред като част от оригиналната команда. Ще използваме този синтаксис, за да разделим дълги команди на няколко реда, в опит да ги направим по-представими.

Резултатът от призива на API е JSON обект, съдържащ информация за акаунта, включително account_key намлява secret_key, необходими при следващи повиквания в API.

Издайте сертификат за сървър

След като подготвихте работната среда и се хванете за ключовете на API, вече сте готови да започнете да играете с API. Като пример ще поискаме издаването на a Основен SSL сертификат за въображаем уеб сървър example.ssl.com, Независимо дали използвате API или потребителския портал, издаването на сертификат изисква да се спазват определени стъпки.

Тези стъпки включват генериране на двойка частен и публичен ключ, създаване на заявка за подписване на сертификат (CSR), създаване на поръчка за сертификат и извършване на проверка на контрола на домейна.

Генериране на CSR

Има няколко метода да се създаде CSR, но тъй като вече използваме терминала, нека разгледаме как да създадем CSR с OpenSSL. Ако вече имате CSR можете да използвате за тази цел, можете да пропуснете тази стъпка.

A CSR е кодиран файл base64, който съдържа по-голямата част от информацията, която ще бъде включена в окончателния файл на сертификата. Сред най-важните му съдържания са публичен ключ и име на домейн на сървъра сертификатът ще бъде издаден за.

Това означава, че ще се нуждаем от двойка с публичен ключ, преди да издадем a CSR, Следващата команда ще създаде нова PEM файл в работната директория, с име example.ssl.com.key, съдържащи двата ключа.

$ openssl genrsa -out example.ssl.com.key 2048 Генериране на RSA частен ключ, 2048 битов дълъг модул ................... +++ ...... .................................................. ...... +++ e е 65537 (0x010001)

Използвайки двойката ключове, OpenSSL вече може да генерира a CSR за теб. За да направите това, моля използвайте командата, показана в следния фрагмент на код.

$ openssl req -нов -ключ example.ssl.com.key -out example.ssl.com.csr

Предстои ви да бъдете помолени да въведете информация, която ще бъде включена в заявката ви за сертификат. Това, което ще въведете, е това, което се нарича отличено име или DN. Има доста полета, но можете да оставите някои празни За някои полета ще има стойност по подразбиране, Ако въведете '.', Полето ще остане празно. ----- Име на държава (двубуквен код) [AU]: Име на щат или провинция (пълно име) [Някои щати]: Име на местността в Тексас (напр. Град) []: Име на организацията в Хюстън (напр. Компания) [Internet Widgits Pty Ltd]: Примерно име на организационна единица (напр. Раздел) []: Примерно общо име на отдел (напр. FQDN на сървъра или ВАШЕТО име) []: example.ssl.com Имейл адрес []: admin@example.ssl. com Моля, въведете следните „допълнителни“ атрибути, които да бъдат изпратени с вашата заявка за сертификат Парола за предизвикателство []: Незадължително име на фирма []:

OpenSSL ще ви попита за вашата основна информация за контакт и Често срещано име на сертификата. За SSL сертификатите Common Name е името на домейна на сървъра (в този случай example.ssl.com). Изпълняването на командата по-горе ще създаде файл с име example.ssl.com.csr, в текущата директория, съдържаща кодирания base64 CSR.

$ котка example.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-----

Създайте поръчката за сертификат

След като получи CSR, вече сте готови да създадете поръчка на сертификат чрез API. Първото API извикване, което разгледахме, беше GET заявка, докато това е POST. POST заявките трябва да включват всички параметри в техните тела като JSON обекти. Следователно трябва да форматирате параметрите на поръчката на сертификата в JSON. JSON конфигурация за този пример може да бъде намерена в следния фрагмент.

{"account_key": "4497618e5c98", "secret_key": "FY + s9 / ghUrv7SQ ==", "product": "106", "period": "365", "server_software": "15", "organization_name" : "Example", "street_address_1": "Example st", "locality_name": "Houston", "state_or_province_name": "Texas", "postal_code": "77777", "country_name": "US", "duns_number": "1234567", "company_number": "Примерен номер", "registered_country_name": "US", "unique_value": "1ed1c72baf", "csr":" ----- НАЧАЛО НА ЗАЯВКА ЗА СЕРТИФИКАТ ----- MIIDIjCCAgwaRlkPnuD ... 0QQ3JKQqJbii3760Rgon8hZmbkiE = ----- КРАЙ ЗАЯВКА ЗА СЕРТИФИКАТ ----- "}

Вече сме виждали ключовете на API. За да поръчаме сертификати обаче, трябва да включим и допълнителни параметри като product ИД и валидност period, Можете да намерите списък с идентификатори на продукти в Документация за SWS API. В този пример поръчката се прави за основен SSL сертификат със срок на валидност 1 година. Следващата група параметри съхранява информация за връзка с регистранта (това сте вие). The unique_value параметър (по избор), съдържа буквено-цифров низ, който осигурява уникалността на заявката. Ако не предоставите уникална стойност, ще бъде генерирана произволна за вас. Посочването на уникална стойност по този начин е полезно, ако искате да генерирате DCV файлове или записи CNAME извън потребителския портал на SSL.com. И накрая, csr параметърът трябва да съдържа кодиран валиден base64 CSR, като тази, която спасихме example.ssl.com.csr.

Заменете параметрите със собствените си стойности данни за контакт намлява CSRи запазете тази конфигурация JSON във файл с име example.ssl.com.json.

Забележка: Моля, уверете се, че сте премахнали всички знаци от нов ред от CSR преди да го добавите към командата. Новите редове се използват за инструктиране на терминала за обработка на въведения текст до новия ред. Оставянето на символите може да доведе до неуспех на вашите CURL команди.

С всичко настроено вече сте готови да създадете вашата поръчка. cURL приема параметрите JSON или като вграден низ, или чрез име на файл. Тъй като първата опция е твърде подробна, нека вместо това предадем името на файла.

Моля, обърнете внимание на --data-binary превключвател cURL, който инструктира cURL да включва съдържанието на файла в тялото на заявката POST.

$ 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 / сертификати '{"ref": "co-ac1ecm200", "registrant": {"organization": "Example", "organization_unit": null, "street_address_1": "Example 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": "изисква се валидиране", "валидиране": null, "order_amount": "$ 49.00", "certificate_url": "https://sandbox.ssl.com/team/abc-1ec6012/certificate_orders/co-ac1ecm200 "," receive_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 ": нула," сертификати ": нула }

Резултатът от операцията е друг JSON обект, който съдържа подробности за новосъздадената поръчка на сертификат. Можем да го видим order_status, и референтния му номер в ref параметър, който се използва за препратка към този ред във всички следващи повиквания на API. Освен това, изходът съдържа различни URL адреси, като например certificate_url, което сочи към подробностите за поръчката в портала и в validation_url, която сочи страницата за валидиране на поръчката.

И накрая, certificates ще съдържа всички сертификати, свързани с поръчката. Тъй като поръчката все още не е валидирана, не са създадени сертификати.

Проверка на контрола на домейна

Както е посочено в поръчките за сертификати order_status of validation required, трябва да извършите валидирането преди издаване на сертификат.

Публично доверените CA (като например SSL.com) са длъжни да проверят дали купувачът на сертификат наистина контролира сървъра, за който ще бъде издаден сертификатът, преди да им издаде сертификати. Това може да се постигне чрез множество методии можете да прегледате всички налични методи за валидиране за конкретна поръчка чрез следващото обаждане в API.

Моля, уверете се, че сте сменили референтния номер ко-ac1ecm200 в URL адреса с референтния номер на вашата поръчка, който е генериран при предишното извикване на API.

$ 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 / certificate / co-ac1ecm200 / validations / methods '{"инструкции": "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 "," администратор @ 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-validation / 29BD4C00B65613CCEC04C19C0050D931.txt "," allow_https ":" true "," contents ":" BF340FDFD9C43D45B8310FC4A400E4D4B61CAF8D2002BAAF0945252E35F9d751 \ n167 \ n8 \ n5 \ n49 \ nXNUMXcsr_hash ": {" cname ":" _29BD4C00B65613CCEC04C19C0050D931.example.ssl.com. CNAME ff8716e0fd.ssl.com. "," Name ":" _29BD4C00B65613CCEC04C19C0050D931.example.ssl.com "," value ":" BF340FDFD9C43D45B8310FC4A400E4D4.B61CAF8D2002BAAff} com "}

Върнатият изход ще включва цялата информация, която ви е необходима за извършване на проверка на контрола на домейна. Например, ако искате да използвате http_csr_hash  метод за валидиране, трябва да създадете файл на сървъра, за който ще бъде издаден сертификатът, наречен .well_known/pki-validation/29BD4C00B65613CCEC04C19C0050D931.txt, Файлът трябва точно съдържат стойността на contents параметър.

След това можете да посетите validation_url намерени в предишното обаждане, създало поръчката, и продължете с валидирането, както обикновено с поръчка, която сте създали чрез вашия портал за клиенти. (Винаги можете да посетите Проверки страница и намерете URL адреса за конкретната поръчка).

След успешна проверка на контрола на домейна сертификатът ще бъде издаден и вие ще можете да го изтеглите.

Изтеглете сертификата

Можете да намерите сертификата си в уеб портала или да го изтеглите чрез API. За нашите цели ще използваме API. Както се вижда в предишния раздел, при създаването на нова поръчка за сертификат, отговорът съдържа референтен номер. Този номер може да се използва за извличане на данните за поръчката, включително действителните данни за сертификата.

$ 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 / certificate / co-ac1ecm200? response_type = individual & response_encoding = base64 '{"description": "1 Year Basic SSL", "product": "106", "product_name": "basicssl", "order_status": "published" , "order_date": "2019-05-02T10: 08: 48.000-05: 00", "регистрант": {"organization": "Example", "organization_unit": null, "street_address_1": "Example st", " street_address_2 ": null," street_address_3 ": null," locality ":" Houston "," state_or_province ":" Texas "," post_office_box ": null," postal_code ":" 77777 "," country ":" US "," имейл ": null}," сертификати ":" \ nMIIE1TCCA72gAwIBAgIRANsjhF + t ... 4CAw5Egg73IgIHggE1QEZiYQRu + 0wDQY \ n "," common_name ":" example.ssl.com "," domains_qty_purchased ":" 1 "карта, wild_purchased": "0" 2019 "," subject_alternative_names ": [" example.ssl.com "," www.example.ssl.com "]," валидации ": null," effect_date ":" 05-03-11T22: 37.000: 05-00: 2020 "," датата на изтичане ":" 05-02-11T22: 37.000: 05-00: 256 "," алгоритъм ":" SHA15 "," external_order_number ": нула," домейни ": нула," site_seal_code ": null," subscriber_agreement ": null," server_software ": XNUMX," contacts ": [{...}, {...}]}

Тъй като API е предназначен да се използва програмно, трябва да анализирате JSON отговора, за да изолирате сертификата и да го запишете във файл. JSON разборът е извън обхвата на този член; въпреки това, това е проста задача, която може лесно да се приложи в повечето съвременни езици за скрипт или програмиране.

Ако нямате референтен номер под ръка, можете да отправите API извикване, за да извлечете всички поръчки за сертификати на вашия акаунт. Това обаждане ви позволява да филтрирате поръчките, както и коя информация ще бъде показана.

$ 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 / сертификати? полета = домейни, ref, status_status '[{"ref": "co-ac1ecm200", "order_status": "published", "domains": ["example.ssl.com"]}, {" ref ":" co-581eclsap "," order_status ":" валидиране, моля, изчакайте "," домейни ": [" example.ssl.com "]}, {" ref ":" co-6f1ecm1of "," order_status ": "изчакване на информация за контакти от клиент", "домейни": ["test.ssl.com"]}}

- fields Параметърът URL ви позволява да контролирате кои данни за сертификата ще бъдат показани в изхода. Можете допълнително да страницирате чрез per_page намлява page параметри на заявката За да ограничите броя на сертификатите въз основа на датите на тяхното издаване, можете да използвате start намлява end параметри. И накрая, можете да филтрирате и търсите поръчките, като използвате критерии като идентификационен номер на продукта, срок на годност или всяко друго поле, съдържащо се в сертификата. За повече информация вижте Документация за API на SSL.com.

Анулиране на сертификата

Последната функция, която ще разгледаме в това ръководство, е групово оттегляне на сертификати. Сертификатите могат да ви защитят, стига само вие (или хора, на които имате доверие) да държите частния ключ, свързан с тях. В случай, че частен ключ се компрометира или е необходимо да се промени каквато и да е информация в сертификата, сертификатът трябва незабавно да бъде отменен и да бъде издаден нов.

В случаите, когато се подозира, че личният ключ е откраднат, е наложително клиентският софтуер (като браузъри или операционни системи) да спре да го приема за валиден възможно най-скоро. Поради тази причина горещо препоръчваме да внедрите автоматизирана система за оттегляне, преиздаване, извличане и инсталиране на сертификати на вашите сървъри.

SWS API на SSL.com ви позволява програмно да оттеглите един, повече или всички сертификати под някоя от вашите поръчки за сертификати. Следващото извикване на API ще отмени всички сертификати по реда на сертификата ко-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 = = "," причина ":" откраднато "} '\' https: //sws.sslpki.com / certificate / co-ac1ecm200 '{"статус": "отменен"}

Тази команда cURL издава DELETE HTTP заявка (вместо GET или POST като предишните команди) и осигурява конфигурацията на JSON inline. Също така е валидно да създадете файл със съдържанието на JSON и да го предадете на cURL чрез име на файл по същия начин като командата, издала заповедта за сертификат.

Можете да посочите каквато и да е причината, която желаете в reason  параметър и по желание може да включва списък на серийни номера на сертификати в JSON, за да оттегли само сертификатите, съответстващи на тези сериали. Ако не са включени серийни номера, всички сертификати, принадлежащи към определената поръчка на сертификати, ще бъдат оттеглени.

За повече информация относно това обаждане към API, моля, разгледайте нашето Документация за API.

Заключение

Тази статия описва лесен процес за издаване и отнемане на сертификат за DV сървър, като опростен пример за операциите, които можете да извършвате чрез SWS API на SSL.com. Ние от SSL.com насърчаваме използването на автоматизация, когато е възможно, защото премахва неприятностите при ръчно изпълнение на едни и същи повтарящи се задачи и по-важното позволява по-бързо време за реакция в случай на извънредна ситуация (вижте издание за ентропия на сериен номер).

Моля, не се колебайте да експериментирате с нашите пясък намлява SWS API, и не се колебайте да се свържете с нашите агенти за поддръжка, ако срещнете някакви проблеми.

Благодарим ви, че избрахте SSL.com! Ако имате някакви въпроси, моля свържете се с нас по имейл на Support@SSL.com, обадете се 1-877-SSL-SECUREили просто щракнете върху връзката за чат в долната дясна част на тази страница. Можете също така да намерите отговори на много общи въпроси за поддръжка в нашето знание.
Twitter
Facebook
LinkedIn
Reddit
Имейл

Бъдете информирани и защитени

SSL.com е глобален лидер в киберсигурността, PKI и цифрови сертификати. Регистрирайте се, за да получавате най-новите новини от индустрията, съвети и съобщения за продукти от SSL.com.

Ще се радваме на вашите отзиви

Попълнете нашата анкета и ни кажете какво мислите за скорошната си покупка.