Page History
...
Code Block | ||||
---|---|---|---|---|
| ||||
$ 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
waarbijNNNNNNN
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.
- in het CSR, bij voorbeeld middels openssl:
Libraries
- Enkele scripts voor het automatiseren: https://gist.github.com/joostd/d2af94977b2bb53455b9146fbf2fb721
- Een python library die mogelijk interessant is voor het aanvragen van SSL certificaten: https://github.com/broadinstitute/python-cert_manager
...
Overview
Community Forums
Content Tools