Versions Compared

Key

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

...

Private key. Needed to create proof of possession (PoP)
MethodEndpointParameterReturned values


NameIs required?Transfer methodDescriptionNameAlways returned?Transfer methodDescription
GET

/v1/certificate/{caName}

CA nameYesPath parameterName of Certificate Authority which should sign sent CSR. Must match CertService's CMPv2 servers configuration.Error messageNo, only if error occurred on server sideBody (JSON)Verbose information what wrong happened on server side.
Base64 encoded CSR (Certificate Signing Request)YesHeaderCertificate Signing Request for given componentCertificate chainYesNo, only in success case. Body (JSON)Base64 encoded (question) signed certificate with whole certificate chain (intermediate CA certificates). Signed certificate should be returned first and then all intermediate certificates in following order: singer of previous certificate till certificate which is signed by root CA.
Base64 encoded CSR (Certificate Signing Request)private keyYesHeaderCertificate Signing Request for given componentPrivate key. Needed to create proof of possession (PoP)Trusted certificatesYesNo, only in success case.Body (JSON)Base64 encoded (question) list of trusted certificates. In other words list of root CAs which should be treated as trust anchors. Must contain root CA which was used to sign certificate and may contain other root CAs. Order doesn't matter.Base64 encoded private keyYesHeader. Order doesn't matter.


Return HTTP codes:

HTTP codeDescription
200 (OK)Everything is ok. Certificate chain and trusted certificates returned
400 (Bad Request)Incorrect/missing CSR and/or private key
401 (Unauthorized)Missing client certificate or presented certificate is not trusted
404 (Not found)Invalid CA name in REST API call or wrong endpoint called
500 (Internal Server Error)In case of exception on server side.

...

Input valueInput typeDescriptionUsage
CsrModelObjectPOJO which transfers sent CSR, plain fields extracted from CSR (like Common Name, Country, etc)
CsrModel:: csrorg.bouncycastle.pkcs.PKCS10CertificationRequest (question)Certificate Signing Request received via REST API
CsrModel:: subjectDNorg.bouncycastle.asn1.x500.X500NameSubjectDN retrieved from sent CSR
CsrModel:: privateKeyEither org.bouncycastle.util.io.pem.PemObject or java.security.PrivateKeyPrivate key received via REST API
CsrModel:: publicKeyEither org.bouncycastle.util.io.pem.PemObject or java.security.PublicKeyPublic key retrieved from sent CSR
CsrModel:: (question)(question)(question)(warning) Others (plain data extracted from sent CSR)  if needed (warning)(question)(question)(question)
CMPv2ServerDetailsObjectPOJO which transfers CMPv2 server properties
CMPv2ServerDetails:: CA nameStringCA name as configured in CMPv2 server properties
CMPv2ServerDetails:: URLURL or StringURL to CMPv2 server as configured in CMPv2 server details
CMPv2ServerDetails:: IssuerDNorg.bouncycastle.asn1.x500.X500NameIssuer DN as configured in CMPv2 server details
CMPv2ServerDetails:: CA modeENUMCA mode as configured in CMPv2 server details
CMPv2ServerDetails:: IAKStringIAK as configured in CMPv2 server details
CMPv2ServerDetails:: RVStringRV as configured in CMPv2 server details
CA nameStringCA name received via REST API

...

Run CertService as docker via following command: (warning) TBA (warning)

Code Block
docker run -it -p 8080:8080/tcp $CONTAINER_IMAGE --name cert-service $IMAGE_NAME


Kubernetes

For Kubernetes helm chart is provided. Just fill in all overwrite needed values and deploy helm chart using following command: (warning) TBA (warning)

...