ACME Authorize Identifier REST API - dogtagpki/pki GitHub Wiki
This operation authorizes ACME identifiers as defined in RFC 8555 Section 7.5.
The identifier authorization process establishes the authorization of an account to manage certificates for a given identifier. This process assures the server of two things:
-
That the client controls the private key of the account key pair, and
-
That the client controls the identifier in question.
This process may be repeated to associate multiple identifiers with an account (e.g., to request certificates with multiple identifiers) or to associate multiple accounts with an identifier (e.g., to allow multiple entities to manage certificates).
Authorization resources are created by the server in response to
newOrder
or newAuthz
requests submitted by an account key holder;
their URLs are provided to the client in the responses to these
requests. The authorization object is implicitly tied to the account
key used to sign the request.
When a client receives an order from the server in reply to a
newOrder
request, it downloads the authorization resources by sending
POST-as-GET
requests to the indicated URLs. If the client initiates
authorization using a request to the newAuthz
resource, it will have
already received the pending authorization object in the response to
that request.
POST /acme/authz/PAniVnsZcis HTTP/1.1 Host: example.com Content-Type: application/jose+json { "protected": base64url({ "alg": "ES256", "kid": "https://example.com/acme/acct/evOfKhNU60wg", "nonce": "uQpSjlRb4vQVCjVYAyyUWg", "url": "https://example.com/acme/authz/PAniVnsZcis" }), "payload": "", "signature": "nuSDISbWG8mMgE7H...QyVUL68yzf3Zawps" }
HTTP/1.1 200 OK Content-Type: application/json Link: <https://example.com/acme/directory>;rel="index" { "status": "pending", "expires": "2016-01-02T14:09:30Z", "identifier": { "type": "dns", "value": "www.example.org" }, "challenges": [ { "type": "http-01", "url": "https://example.com/acme/chall/prV_B7yEyA4", "token": "DGyRejmCefe7v4NfDGDKfA" }, { "type": "dns-01", "url": "https://example.com/acme/chall/Rg5dV14Gh1Q", "token": "DGyRejmCefe7v4NfDGDKfA" } ] }