SSL.com's Resellerpartners kan nu genereren ACME referenties voor hun klanten met de SWS-API. Deze how-to beschrijft de API-eindpunten die een reseller moet maken om van deze functie te profiteren, en biedt stapsgewijze instructies voor het genereren van een nieuwe set inloggegevens.
API-eindpunten voor wederverkopers
Voordat we beginnen met het uitgeven van ACME-inloggegevens aan klanten, wordt van resellers verwacht dat ze twee API-eindpunten leveren die SSL.com kan aanroepen voor autorisatie en certificaatuitgifte. Wederverkopers moeten SSL.com ook voorzien van een callback-URL (bijv https://acme-hook.reseller.com
in de onderstaande voorbeelden) die de RA van SSL.com zal gebruiken bij het doen van deze verzoeken.
reseller_autorisatie
SSL.com belt naar de reseller reseller_authorization
eindpunt om te bepalen of een aangevraagd certificaat moet worden uitgegeven (bijvoorbeeld of de rekening van de klant voldoende saldo heeft). Het verzoek bevat de gebruikers kid
, het type en de duur van het aangevraagde certificaat en de gebruikte validatiemethode:
POST https://acme-hook.reseller.com/reseller_authorization { "kid": '2378c85a2d9b', 'product': 'sslcom_dv', 'duration': '365', 'identifiers': { dns: ['example. com'] } }
Succesvolle reactie (bestelling kan doorgaan)
Een succesvolle reactie, waarbij een wederverkoper aangeeft dat een bestelling is geautoriseerd en kan doorgaan, moet een statuscode bevatten van: 200 OK
en success
waarde van true
in de reactietekst:
{ "succes": waar }
Als een wederverkoper een bestelling autoriseert zoals hierboven weergegeven, zal de RA van SSL.com vervolgens controleren of de wederverkoper kan worden gefactureerd voor de aankoop om te bepalen of de bestelling kan doorgaan. Als een wederverkoper een bestelling autoriseert, maar niet over voldoende saldo beschikt om het certificaat te dekken, wordt een gratis certificaat van 90 dagen aan de klanten verstrekt.
Mislukte reactie (bestelling kan niet doorgaan)
Een mislukte reactie moet een passende niet-200
statuscode, bijvoorbeeld:
403 Forbidden
als een klant onvoldoende saldo heeft bij de reseller.401 Unauthorized
indien dekid
is niet aanwezig in de administratie van de wederverkoper.500 Internal Server Error
als er iets mis is gegaan aan de kant van de wederverkoper.
De antwoordtekst voor een mislukte bestelling moet een waarde van . bevatten false
For success
, en kan ook een bevatten error_message
die aan de gebruiker wordt getoond:
{ "succes": "false", "error_message": "onvoldoende saldo" }
If error_message
leeg is, wordt een algemeen bericht met de tekst "De bestelling is niet geautoriseerd" aan de gebruiker gepresenteerd.
ontvangst_certificaat
De receive_certificate
endpoint wordt gebruikt voor SSL.com om het uitgegeven fullchain-certificaat naar de reseller te sturen, samen met andere informatie over het verzoek:
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-referenties genereren
Zodra een reseller de hierboven beschreven API-eindpunten heeft geleverd, kunnen ze de onderstaande stapsgewijze instructies volgen om ACME-inloggegevens voor een klant te genereren:
- Eerst heeft u uw SSL.com API-inloggegevens nodig. Log in op uw SSL.com-wederverkopersdashboard en klik op de api-gegevens link.
- Gebruik de klembordlinks om de . te kopiëren Account / ACME-sleutel en Geheime sleutel geassocieerd met de
account_admin
rol en plak ze in een teksteditor. - Open een terminalvenster en voer een cURL-opdracht in zoals hieronder. Vervangen
ACCOUNT-KEY
enSECRET-KEY
met de waarden die u in de vorige stap hebt verzameld. VervangenDESCRIPTION
met wat beschrijvende tekst over uw klant, zoals hun bedrijfsnaam of gebruikers-ID. Merk op dat elkeDESCRIPTION
die u gebruikt, moet uniek zijn. Als u herhaalde verzoeken doet met dezelfde beschrijving, worden de referenties geretourneerd die oorspronkelijk zijn gegenereerd voor het eerste verzoek met die beschrijving.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 ": "OMSCHRIJVING"}'
- U zou een JSON-object moeten ontvangen met:
eab-kid
eneab-hmac
waarden die u uw klant kunt geven om te gebruiken bij het aanvragen van certificaten bij ACME.{ "response_type": "ok", "eab-kid": "2378c85a2d9b", "eab-hmac": "qTs1vE6SMcX3UgK5DtYbc48IYUd7wUr109eCslCdY3N" }
- Nieuw gegenereerde inloggegevens verschijnen ook samen met de andere API- en ACME-inloggegevens van uw reselleraccount.