SSL.com Reseller-Partner kann jetzt generieren ACME Anmeldeinformationen für ihre Kunden mit dem SWS-API. Diese Anleitung beschreibt die API-Endpunkte, die ein Reseller erstellen muss, um diese Funktion nutzen zu können, und enthält eine schrittweise Anleitung zum Generieren eines neuen Satzes von Anmeldeinformationen.
Reseller-API-Endpunkte
Vor der Ausgabe von ACME-Anmeldeinformationen an Kunden wird von Resellern erwartet, dass sie zwei API-Endpunkte bereitstellen, die SSL.com zur Autorisierung und Zertifikatsausstellung aufrufen kann. Reseller müssen SSL.com außerdem eine Rückruf-URL (z. B. https://acme-hook.reseller.com
in den Beispielen unten), die die RA von SSL.com verwendet, wenn diese Anfragen gestellt werden.
reseller_authorization
SSL.com ruft den Händler an reseller_authorization
Endpunkt, um zu bestimmen, ob ein angefordertes Zertifikat ausgestellt werden soll (z. B. wenn das Konto des Kunden über ausreichende Deckung verfügt). Die Anfrage enthält die Angaben des Benutzers kid
, Art und Dauer des angeforderten Zertifikats sowie die verwendete Validierungsmethode:
POST https://acme-hook.reseller.com/reseller_authorization { "kid": '2378c85a2d9b', 'product': 'sslcom_dv', 'duration': '365', 'identifiers': { dns: ['example. com'] } }
Erfolgreiche Antwort (Bestellung kann fortgesetzt werden)
Eine erfolgreiche Antwort, bei der ein Wiederverkäufer angibt, dass eine Bestellung autorisiert ist und fortgeführt werden kann, muss den Statuscode . enthalten 200 OK
und einem success
Wert von true
im Antworttext:
{ "Erfolg": wahr }
Wenn ein Wiederverkäufer eine Bestellung wie oben gezeigt autorisiert, prüft die RA von SSL.com, ob dem Wiederverkäufer der Kauf in Rechnung gestellt werden kann, um festzustellen, ob die Bestellung ausgeführt werden kann. Wenn ein Wiederverkäufer eine Bestellung autorisiert, aber nicht über ausreichende Mittel zur Deckung des Zertifikats verfügt, wird den Kunden ein kostenloses 90-Tage-Zertifikat ausgestellt.
Fehlgeschlagene Antwort (Bestellung wird möglicherweise nicht fortgesetzt)
Eine fehlgeschlagene Antwort sollte eine angemessene Nicht-200
Statuscode, zum Beispiel:
403 Forbidden
wenn ein Kunde beim Wiederverkäufer nicht genügend Geld hat.401 Unauthorized
wenn diekid
nicht in den Unterlagen des Wiederverkäufers vorhanden ist.500 Internal Server Error
wenn auf Seiten des Wiederverkäufers etwas schief gelaufen ist.
Der Antworttext für eine fehlgeschlagene Bestellung sollte einen Wert von enthalten false
für success
, und kann auch ein . enthalten error_message
das wird dem Benutzer angezeigt:
{ "success": "false", "error_message": "unzureichendes Guthaben" }
If error_message
leer ist, wird dem Benutzer eine allgemeine Meldung mit der Aufschrift „Die Bestellung wurde nicht autorisiert“ angezeigt.
empfange_zertifikat
Die receive_certificate
endpoint wird für SSL.com verwendet, um das ausgestellte Fullchain-Zertifikat zusammen mit anderen Informationen zur Anfrage an den Reseller zu senden:
POST https://acme-hook.reseller.com/receive_certificate { "kid": "2378c85a2d9b", "product": "basicssl", "duration": "365", 'identifiers': { dns: ['example. com', 'www.example.com'] }, "cert": { "body": , "not_before"=>"2021-06-07T11:39:17.000-05:00", "not_after"=>"2021-09-19T11:36:24.000-05:00" } }
ACME-Anmeldeinformationen generieren
Nachdem ein Wiederverkäufer die oben beschriebenen API-Endpunkte bereitgestellt hat, kann er die folgenden schrittweisen Anweisungen befolgen, um ACME-Anmeldeinformationen für einen Kunden zu generieren:
- Zuerst benötigen Sie Ihre SSL.com API-Anmeldeinformationen. Melden Sie sich bei Ihrem SSL.com-Reseller-Dashboard an und klicken Sie auf API-Anmeldeinformationen Link.
- Verwenden Sie die Zwischenablage-Links, um die Konto / ACME-Schlüssel und Geheimer Schlüssel in Verbindung mit
account_admin
Rolle und fügen Sie sie in einen Texteditor ein. - Öffnen Sie ein Terminalfenster und geben Sie einen cURL-Befehl wie den folgenden ein. Ersetzen
ACCOUNT-KEY
undSECRET-KEY
mit den Werten, die Sie im vorherigen Schritt gesammelt haben. ErsetzenDESCRIPTION
mit beschreibendem Text zu Ihrem Kunden, wie z. B. dem Firmennamen oder der Benutzer-ID. Beachten Sie, dass jederDESCRIPTION
die Sie verwenden, sollte einzigartig sein. Bei wiederholten Anfragen mit derselben Beschreibung werden die Anmeldeinformationen zurückgegeben, die ursprünglich für die erste Anfrage mit dieser Beschreibung generiert wurden.curl --location --request POST 'https://sws.sslpki.com/acme/create_credentials' \ --header 'Content-Type: application/json' \ --data-raw '{"account_key": "ACCOUNT-KEY", "secret_key": "SECRET-KEY", "description ": "BESCHREIBUNG"}'
- Sie sollten ein JSON-Objekt erhalten mit
eab-kid
undeab-hmac
Werte, die Sie Ihrem Kunden beim Anfordern von Zertifikaten mit ACME zur Verfügung stellen können.{ "response_type": "ok", "eab-kid": "2378c85a2d9b", "eab-hmac": "qTs1vE6SMcX3UgK5DtYbc48IYUd7wUr109eCslCdY3N" }
- Die neu generierten Anmeldeinformationen werden auch zusammen mit den anderen API- und ACME-Anmeldeinformationen Ihres Reseller-Kontos angezeigt.