Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagebash
titleAanvraag van een server certificaat:
$ cat enroll.json 
{
  "orgId": 12345,
  "externalRequester": "you@example.edu",
  "csr": "-----BEGIN CERTIFICATE REQUEST-----\nMIICaDCCAVACAQAwIzEhMB8GA1UEAwwYdGVzdC5z ... 6rDasA=\n-----END CERTIFICATE REQUEST-----\n",
  "certType": 423,
  "comments": "enroll via API",
  "term": 365
}

$ curl -sH @headers https://cert-manager.com/api/ssl/v1/enroll -X POST -d @enroll.json
{"renewId":"AQIDBAUGBwgJCgsMDQ4P","sslId":1230789}

$ curl -sH @headers https://cert-manager.com/api/ssl/v1/collect/1230789/pem
-----BEGIN CERTIFICATE-----
MIIENjCCAx6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBvMQswCQYDVQQGEwJTRTEUMBIGA1UEChML
...
LsRwKb+Zf9rO7f967R+iOnkmNlTUjdxMDRs=
-----END CERTIFICATE-----

Opmerkingen:

  • De collect call ondersteunt verschillende encodings. De PEM encoding hierboven levert momenteel certificaten in omgekeerde volgorde (van root naar end entity). De PKCS#7 encoding levert wel de juiste volgorde (van end entity naar root). Om te converteren naar PEM encoding:
    curl -sH @headers https://cert-manager.com/api/ssl/v1/collect/NNNNNNN/base64 | openssl pkcs7 -print_certs
    waarbij NNNNNNN het sslId is.
  • Voor multi-domain certificaten kunnen Subject Alternate Names op verschillende manieren worden toegevoegd
    • in het CSR, bij voorbeeld middels openssl: openssl req -new -key key.pem -subj "/CN=example.edu" -addext "subjectAltName = DNS:www.example.edu"
    • in het request, via de subjAltNames key in de JSON body.

Libraries

...