ACME.js attempts to POST challenges repeatedly rather than GET the authorization status #9
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Noticed that when testing Greenlock.js against the Pebble ACME server (official testing server for ACME protocol), I received the following error repeatedly:
It appears as though another ACME client had the same issue: https://github.com/letsencrypt/pebble/issues/133
Works without errors when used against live / staging, but the speed of localhost demonstrates the issue. The issue above explains the correct flow for these requests to avoid errors.
--
BTW, relative novice here w.r.t ACME & Greenlock
Seems like this issue can be solved in
ACME._postChallenge
in thecheckResult
function by adding 'pending' to the possible states that result inpollStatus
getting called. I'll submit a patch for this soon.Subsequent error is that the finalize URL is called twice - if the ACME server validates the challenge in the initial call then any further calls will error with a 403 because you can't finalize an already valid certificate. Trying to determine whether there's a POST-as-GET alternative for
ACME._pollOrderStatus
- looking at other implementationsSO
ACME._pollOrderStatus
should use the same GET onorder._orderUrl
as was used inACME._postChallenge
. I've made a patch for this locally and it works great.I'll tidy it up a bit and create a PR.