Richard Körber
2b61478f13
Remove oob-01 challenge
...
It is not part of the ACME specs any more
2017-12-14 00:03:13 +01:00
Richard Körber
4c4cf5b5cf
Connect to Pebble via https
2017-12-06 22:55:00 +01:00
Richard Körber
827e1277ef
Use an OrderBuilder for collecting order parameters
2017-12-05 22:26:28 +01:00
Richard Körber
e0673c93bd
Implement new order finalization
...
Replaces the "CSR first" new-order flow, see ietf-wg-acme/acme#342
2017-12-05 22:26:27 +01:00
Richard Körber
e386994fe5
Fix detail key in sub-problem
2017-12-01 00:09:15 +01:00
Richard Körber
d6fb218a27
Add support for sub-problems
2017-11-29 01:28:14 +01:00
Richard Körber
1eedc755ea
Remove Authorization scope
2017-11-29 00:36:59 +01:00
Richard Körber
ed543bc0b7
Sonar fixes
2017-11-04 13:26:41 +01:00
Richard Körber
529eb13e3f
Don't fail if version.properties is unreadable
...
Fixes issue #42
2017-11-04 13:18:52 +01:00
Richard Körber
e9a330b3a2
Avoid URI to URL conversion
2017-11-04 11:40:20 +01:00
Richard Körber
42541ac299
Accept Content-Type header with charset parameter
2017-11-02 23:19:31 +01:00
Richard Körber
a32c7bac03
Do not accept contacts with multiple email addresses
2017-11-01 17:42:09 +01:00
Richard Körber
f36294eabd
Rename internal util package in client module
...
Avoids a split package in Java 9.
2017-10-07 18:08:16 +02:00
Richard Körber
2a5075dd5a
Fix unit tests for Java 9
2017-10-07 18:08:04 +02:00
Richard Körber
148c98d673
Remove local truststore for Let's Encrypt servers
2017-09-20 20:58:52 +02:00
Richard Körber
e15abb0ca0
Remove Pebble workarounds
2017-08-29 00:04:47 +02:00
Richard Körber
b708b2f199
Build json string in order of entry appearance
2017-08-17 22:39:30 +02:00
Richard Körber
f434fd70b4
Fix a style warning
2017-08-17 22:39:19 +02:00
Richard Körber
2eb59ef364
Do not use compact JWS serialization
2017-08-17 22:38:56 +02:00
Richard Körber
3ce832d83e
Review URI/URL use
2017-08-13 14:18:44 +02:00
Richard Körber
a30caaa664
Challenge.trigger can be re-invoked
2017-08-13 14:18:43 +02:00
Richard Körber
f3735e6ec1
Add a way to revoke a certificate without account key pair
2017-08-13 14:18:43 +02:00
Richard Körber
3881669e22
Fix setting the account's key identifier
2017-08-13 14:13:56 +02:00
Richard Körber
7c88a2cdac
Rename to AcmeRateLimitedException
2017-08-13 14:08:37 +02:00
Richard Körber
64abe3d96e
Do not expect a response body on existing accounts
2017-07-30 15:59:07 +02:00
Richard Körber
dfb40edc12
Challenge can have multiple errors
2017-07-30 15:57:58 +02:00
Richard Körber
dcdf240804
Add support for only-return-existing flag
2017-07-30 15:57:44 +02:00
Richard Körber
d43b16bb2c
Remove pebble workaround for kid field
2017-05-31 19:31:40 +02:00
Richard Körber
f852cdaecd
Remove pebble workaround for uri field
2017-05-31 19:31:08 +02:00
Richard Körber
e8790e8446
Rename Registration resource to Account
2017-05-03 13:42:38 +02:00
Richard Körber
7e58017347
Do not send the token on challenge response
2017-05-03 13:42:34 +02:00
Richard Körber
8e1563a410
Remove new-reg workaround
2017-05-03 13:42:22 +02:00
Richard Körber
cdb2362892
Fix challenge fields
...
- use "url" instead of "uri"
- add support for "error" field
2017-05-03 13:42:17 +02:00
Richard Körber
7b6582ad78
revoke-cert sends JWK header
2017-05-03 13:42:09 +02:00
Richard Körber
0a63c65885
Update resource status after authorization deactivation
2017-05-03 13:41:18 +02:00
Richard Körber
300c9dd06c
Remove all uses of HTTP_ACCEPTED
2017-05-03 13:39:59 +02:00
Richard Körber
4c34f9afb5
Add alternate certificates support
2017-05-03 13:37:28 +02:00
Richard Körber
7d83ef0e80
Add pre-authorization support
2017-05-03 13:37:22 +02:00
Richard Körber
4e1ad652b0
Account deactivation returns HTTP_OK and current account data
2017-05-03 13:37:15 +02:00
Richard Körber
c4f75497c7
Set individual key identifier on account creation
2017-05-03 13:37:08 +02:00
Richard Körber
f841daa5b6
Remove resource field from payload
2017-05-03 13:36:55 +02:00
Richard Körber
053b1750e8
DefaultConnection test coverage
2017-05-01 18:17:31 +02:00
Richard Körber
090bbdd34a
Fix NPE when server sent no TOS header
2017-05-01 18:17:28 +02:00
Richard Körber
cf5b05bf73
Add unit test for Registration orderCertificate
2017-05-01 18:17:24 +02:00
Richard Körber
231198992a
Use constants for PEM labels
2017-05-01 18:17:20 +02:00
Richard Körber
fdc05ba70b
Code style fixes
2017-05-01 18:17:12 +02:00
Richard Körber
8819558b3f
Authorization returns scope Order
2017-05-01 16:20:07 +02:00
Richard Körber
02cedf9935
Use Problem in AcmeServerException
2017-05-01 16:20:04 +02:00
Richard Körber
c623d72426
Order returns an error document
2017-05-01 16:20:00 +02:00
Richard Körber
4e1d173cc3
Add Problem object for JSON problem documents
2017-05-01 16:19:57 +02:00
Richard Körber
e192f300b4
Account returns a list of orders
2017-05-01 16:19:31 +02:00
Richard Körber
4b96878688
Do not return shortened error type any more
2017-05-01 16:18:39 +02:00
Richard Körber
896269ec33
Read rate limit documentation from links
2017-05-01 16:18:34 +02:00
Richard Körber
94ee501811
Remove unused AcmeConflictException
2017-05-01 16:18:07 +02:00
Richard Körber
e748df364d
Rename to AcmeUserActionRequiredException
2017-05-01 16:17:50 +02:00
Richard Körber
25b13a74e4
Fix misleading exception message
2017-05-01 16:17:29 +02:00
Richard Körber
203c986522
Remove status GOOD
2017-05-01 16:17:25 +02:00
Richard Körber
710e876585
Use system property for enabling Pebble workarounds
2017-05-01 16:17:01 +02:00
Richard Körber
1c75d28dae
Use new-account instead of new-reg
...
Remove unused resource keys
2017-05-01 16:15:52 +02:00
Richard Körber
809978d188
Use Pebble for integration tests
...
- Build and run Pebble in a docker container
- Move integration tests into a separate module
- Add simple servers for http, dns, and tls-sni challenges
- Add integration tests for ordering a certificate
- Documentation
2017-04-30 11:57:11 +02:00
Richard Körber
34f17a7e6f
Throw AcmeLazyLoadingException when lazy loading of a resource failed
2017-04-27 22:42:38 +02:00
Richard Körber
846e200e62
Change Certificate resource
2017-04-27 22:42:18 +02:00
Richard Körber
3951577708
Bump snapshot version for draft branch
2017-04-27 22:40:55 +02:00
Richard Körber
a953e87b1b
Put test JSONs in separate files
2017-04-27 22:40:40 +02:00
Richard Körber
77b0d4217d
Mark other Pebble todos
2017-04-27 22:40:27 +02:00
Richard Körber
ee3765e543
Pebble does not support kid header yet
2017-04-27 22:38:54 +02:00
Richard Körber
4772488896
Add Order resource
2017-04-27 22:36:46 +02:00
Richard Körber
4fe4c12c62
Use returned Registration object after creation
2017-04-19 00:49:07 +02:00
Richard Körber
b40861c66c
Key identifier was set on every setLocation, fixed
2017-04-19 00:48:34 +02:00
Richard Körber
7d822e106c
Debug output of JWS header, payload and JSON response
2017-04-19 00:48:21 +02:00
Richard Körber
5de6efce95
Key identifier is a String
2017-04-19 00:48:05 +02:00
Richard Körber
f2cd592b2e
Make URL conversion null-safe
2017-04-19 00:47:57 +02:00
Richard Körber
f38002ca06
Use URL instead of URI for accessible resources
2017-04-18 01:17:58 +02:00
Richard Körber
d1b313a149
Return empty JSON array for easier processing
2017-04-18 01:13:58 +02:00
Richard Körber
4426a4a210
Read base64 encoded binary from JSON
2017-04-18 01:13:43 +02:00
Richard Körber
e52a900001
Use JSON parser for Status
2017-04-18 01:08:11 +02:00
Richard Körber
698d25fd14
Merge master v0.10 into draft
2017-04-15 17:37:25 +02:00
Richard Körber
1b058f2753
Key-Identifier is part of the session
2017-04-15 17:20:31 +02:00
Richard Körber
30257d0529
[maven-release-plugin] prepare for next development iteration
2017-04-14 12:32:55 +02:00
Richard Körber
47827fb148
[maven-release-plugin] prepare release v0.10
2017-04-14 12:32:54 +02:00
Richard Körber
f3dc04f2ea
Certificate URL is available even on unparseable certs
2017-04-14 12:04:05 +02:00
Richard Körber
1f6d8aea0b
Fix potential race condition when threads share a session
2017-04-14 12:03:50 +02:00
Richard Körber
08eaa61f75
No need to lazy-load provider in session
2017-04-14 12:03:41 +02:00
Richard Körber
c667aba488
Update ITs to latest Pebble
2017-02-15 01:09:34 +01:00
Richard Körber
8d3d034103
Add Registration ITs
2017-02-15 01:08:35 +01:00
Richard Körber
8782787343
Show debug log when running tests
2017-02-15 01:08:26 +01:00
Richard Körber
75383ca794
Add integration tests against a Pebble test server
2017-02-15 01:07:47 +01:00
Richard Körber
3b3f379be2
Use terms-of-service-agreed to agree to TOS
2017-02-15 01:07:30 +01:00
Richard Körber
d6d7e04ea5
Add JSON boolean type
2017-02-15 01:07:25 +01:00
Richard Körber
7aeb439a62
Use new-nonce resource for fetching initial nonce
2017-02-15 01:07:19 +01:00
Richard Körber
be6b511085
Remove support for deprecated urn:acme:error prefix
2017-02-15 01:03:33 +01:00
Richard Körber
76ccb4587c
Remove deprecated tls-sni-01 challenge
2017-02-15 01:03:27 +01:00
Richard Körber
4312331fd9
Add a provider for Pebble test servers
2017-02-15 01:03:18 +01:00
Richard Körber
1f4faf803b
Use functional programming for challenge class generation
2017-02-11 11:57:37 +01:00
Richard Körber
898c552f77
Add stream method to JSON.Array
2017-02-11 11:57:06 +01:00
Richard Körber
eedc2ae68c
Use functional interface for ResourceIterator
2017-02-11 11:56:40 +01:00
Richard Körber
c1b677f310
Use new date/time API
2017-02-11 11:56:26 +01:00
Richard Körber
0ed0a9219f
Move to Java 8
2017-02-11 11:55:51 +01:00
Richard Körber
e0e99850f2
[maven-release-plugin] prepare for next development iteration
2016-12-25 14:37:29 +01:00
Richard Körber
fccfb73430
[maven-release-plugin] prepare release v0.9
2016-12-25 14:37:28 +01:00
Richard Körber
32bfe32077
Streamline error handling
2016-12-21 23:28:44 +01:00
Richard Körber
4a2d7c4178
Return empty collection instead of null
2016-12-21 23:28:25 +01:00
Richard Körber
2ce40ec971
Clean up code
2016-12-21 23:28:03 +01:00
Richard Körber
584452b079
Simplify handling of Retry-After header
2016-12-21 23:25:23 +01:00
Richard Körber
101801260f
Replace all JSON maps with a JSON type
2016-12-21 23:24:49 +01:00
Richard Körber
0ee546da8b
Rename ClaimBuilder to JSONBuilder
2016-12-21 23:08:58 +01:00
Richard Körber
e6e5211755
Fix stack overflow if date is null
2016-12-21 22:57:23 +01:00
Richard Körber
6ab6333d94
Increase unit test coverage
2016-12-21 22:57:01 +01:00
Richard Körber
5565eba9eb
Use standard method for null tests
2016-12-21 22:55:53 +01:00
Richard Körber
25b00313b2
Merge utility classes
2016-12-16 01:48:38 +01:00
Richard Körber
0a288fa290
Increase unit test coverage
2016-12-16 01:47:26 +01:00
Richard Körber
b3fc9a732c
Fix style issues
2016-12-16 01:42:53 +01:00
Richard Körber
232a243e92
Remove boilerplate code for parameter null checks
2016-12-16 01:19:25 +01:00
Richard Körber
ce125da4aa
Refactor HTTP response handling
2016-12-16 01:18:19 +01:00
Richard Körber
96d46784c6
Catch IOExceptions early
2016-12-16 01:17:15 +01:00
Richard Körber
1cca9e26af
Add AcmeUtils for commonly used functions
2016-12-16 00:54:06 +01:00
Richard Körber
acacaebb52
Fix unit test failures if logging with debug level
2016-12-16 00:38:59 +01:00
Richard Körber
527bb644f5
Update dependencies
2016-12-16 00:36:39 +01:00
Richard Körber
a74a0f0531
Also accept 202-Accepted for registration and authorization deactivation
2016-12-06 00:43:16 +01:00
Richard Körber
3803833240
Handle agreementRequired error
2016-11-21 01:26:14 +01:00
Richard Körber
0f44b6fc0f
Change oob-01 parameter as defined in draft-04
2016-11-21 01:25:38 +01:00
Richard Körber
be477c6c0a
Remove http-01 preferred address
2016-11-21 01:25:32 +01:00
Richard Körber
66956e5587
Implement key-change as documented in draft-04
2016-11-18 21:51:14 +01:00
Richard Körber
22961b3fba
Add url to protected header, fix content type
2016-11-18 21:38:13 +01:00
Richard Körber
07beefdd15
Validate signature
2016-11-18 21:36:00 +01:00
Richard Körber
ef42e04793
Handle IDE domain names
2016-11-18 21:22:36 +01:00
Richard Körber
9d71ed35e6
[maven-release-plugin] prepare for next development iteration
2016-10-08 09:06:48 +02:00
Richard Körber
6f46174444
[maven-release-plugin] prepare release v0.8
2016-10-08 09:06:48 +02:00
Richard Körber
1488377e28
Add support for Accept-Language header
2016-10-05 00:14:53 +02:00
Richard Körber
d07e9256e7
Use a proper user agent header
2016-08-10 23:09:03 +02:00
Richard Körber
01290f31e7
[maven-release-plugin] prepare for next development iteration
2016-07-27 23:35:54 +02:00
Richard Körber
8c60854f0f
[maven-release-plugin] prepare release v0.7
2016-07-27 23:35:54 +02:00
Richard Körber
3d6342a917
Only throw AcmeRetryAfterException when there is an actual retry date
2016-07-27 23:29:56 +02:00
Richard Körber
ef7070a3b6
Add another header unit test
2016-07-27 23:09:42 +02:00
Richard Körber
93246e6e0d
Mark http-01 address as deprecated
2016-07-27 22:58:15 +02:00
Richard Körber
957dfd71a1
Evaluate rate-limit relation when rate limit is exceeded
2016-07-27 22:58:02 +02:00
Richard Körber
57194ce0fc
Use constants for acme error prefixes
2016-07-27 22:55:42 +02:00
Richard Körber
91c402473f
Use jose4j's thumbprint calculation
2016-07-27 22:55:24 +02:00
Richard Körber
31c4d6d133
NPE when no Retry-After header is set. Fixes issue #20 .
2016-07-27 22:52:36 +02:00
Richard Körber
22610b7a03
[maven-release-plugin] prepare for next development iteration
2016-07-21 21:33:57 +02:00
Richard Körber
3bc8e07c8d
[maven-release-plugin] prepare release v0.6
2016-07-21 21:33:57 +02:00
Richard Körber
13c2ba9169
Bind on RegistrationBuilder.create
2016-07-21 21:32:22 +02:00
Richard Körber
434b349d20
Some more documentation changes
2016-07-21 21:30:55 +02:00
Richard Körber
627e2c228e
Accept optional notBefore and notAfter with CSR
2016-07-21 00:58:11 +02:00
Richard Körber
9b86b88e4a
Lazily load current status of Authorization and Registration.
2016-07-21 00:56:51 +02:00
Richard Körber
5049cd5ffd
Evaluate retry-after header
2016-07-21 00:56:22 +02:00
Richard Körber
cef5984f81
Offer iterators of authorizations and certificates
2016-07-21 00:54:27 +02:00
Richard Körber
68b7560f2f
Remove unused test json
2016-07-21 00:51:01 +02:00
Richard Körber
8f2ac7c4c7
Give access to directory metadata
2016-07-21 00:45:01 +02:00
Richard Körber
0195e5b16c
Check identifier type on authorizations
2016-07-21 00:38:34 +02:00
Richard Körber
4c34ce8352
Update dependencies, fix deprecation warnings
2016-07-21 00:38:17 +02:00
Richard Körber
42e94125d8
Set a RevocationReason on certificate revocation
2016-07-07 00:12:06 +02:00
Richard Körber
78cb7259d4
Use certificate if already available on request time
2016-07-07 00:11:39 +02:00
Richard Körber
7eec503d55
Return registration status
2016-07-07 00:11:26 +02:00
Richard Körber
7eb2fe5945
Use original error detail message on conflict errors
2016-07-07 00:11:02 +02:00
Richard Körber
cb5a853715
Read response after modifying a registration
2016-07-07 00:10:36 +02:00
Richard Körber
1adfb8c9df
Add method to update registration.
2016-07-07 00:08:01 +02:00
Richard Körber
3403c69985
Major refactoring and improved API.
...
- AcmeClient is replaced by a Session object.
- Server communication has been moved from AcmeClient to the resource classes.
- Removed clutter from API (e.g. internal setters).
- Updated documentation and added a migration guide.
2016-07-07 00:02:09 +02:00
Richard Körber
05cc02dca6
Fixed missing JSON debug output
2016-06-22 00:47:48 +02:00
Richard Körber
b72d0ee66f
Update key rollover to current acme draft
2016-06-22 00:47:03 +02:00
Richard Körber
c48febda62
Move jwkThumbprint() to SignatureUtils, add unit test
2016-06-22 00:45:57 +02:00
Richard Körber
ddac0c45d1
Add support for oob-01 challenge
2016-06-21 00:01:40 +02:00
Richard Körber
279e0f3993
Evaluate Retry-After header on rate limit excess
2016-06-21 00:00:16 +02:00
Richard Körber
5dc1b9314e
Accounts and registrations are now deactivated, not deleted
2016-06-13 23:17:30 +02:00
Richard Körber
1c2b7392e4
Minor formatting fixes
2016-06-09 22:56:13 +02:00
Richard Körber
288bf31c24
AcmeProtocolException is sufficient for recursion excess
2016-06-09 22:55:53 +02:00
Richard Körber
726aff9b80
Assert that relation is 'up'
2016-06-09 22:55:07 +02:00
Richard Körber
24b11fe5a9
Merge pull request #16 from cargy/fetch_cert_chain
...
add support for fetching certificate chain
2016-06-09 22:52:09 +02:00
Richard Körber
5e3167ac06
[maven-release-plugin] prepare for next development iteration
2016-06-03 20:26:01 +02:00
Richard Körber
a2e8bc2076
[maven-release-plugin] prepare release v0.5
2016-06-03 20:26:01 +02:00
Richard Körber
859622ed9e
Tests seem to require BC on OpenJDK
2016-06-03 20:14:22 +02:00
argy
b13c90b7a4
fixed code formatting issues and added copyright header
2016-06-02 23:24:44 +03:00
Wojciech Szarmach
048994de8e
Code style issues fix
2016-06-02 14:07:00 +02:00
argy
d5b4ff37dc
add support for fetching certificate chain
2016-05-29 03:44:27 +03:00
Wojciech Szarmach
428ca84613
Whitespace fix
2016-05-24 10:54:31 +02:00
Wojciech Szarmach
21092fc647
DefaultConnection stream reading fix
2016-05-24 10:51:13 +02:00
Richard Körber
093ab147b6
[maven-release-plugin] prepare for next development iteration
2016-04-16 15:12:12 +02:00
Richard Körber
9041b08a4f
[maven-release-plugin] prepare release v0.4
2016-04-16 15:12:12 +02:00
Richard Körber
92b3076031
Remove account recovery. Closes issue #1 .
2016-03-21 23:28:46 +01:00
Richard Körber
19787f4c00
Also accept 'urn:ietf:params:acme:error' error responses
2016-03-21 23:12:24 +01:00
Richard Körber
b8bfc5fa0f
Remove proof-of-possession challenge. Closes issue #4 .
2016-03-21 22:35:36 +01:00
Richard Körber
bc8c8f24f0
Accept an optional address for http-01 challenge
2016-03-19 16:20:58 +01:00
Richard Körber
8deceb473c
Add support for tls-sni-02
2016-03-19 15:42:22 +01:00
Richard Körber
acd6f8019d
Add method to delete an authorization
2016-03-19 13:53:54 +01:00
Richard Körber
23bd838928
Add method to delete an account
2016-03-19 13:39:16 +01:00
Richard Körber
9ce3718861
Expect Account Key Roll-Over to return HTTP_OK on success
2016-03-19 13:05:57 +01:00
Richard Körber
158c3c46d1
Review exceptions, closes issue #10
2016-03-17 00:58:32 +01:00
Richard Körber
4e3b30fc78
Accept EC keys on changeRegistrationKey()
2016-03-10 01:40:34 +01:00
Richard Körber
6f122e63f1
Accept null for JSON problem type and detail
2016-02-20 13:58:04 +01:00
Richard Körber
749abc8f99
Fix detection of NIST P521. Add unit tests for SignatureUtils.
2016-02-02 00:08:31 +01:00
Richard Körber
99edd1032c
[maven-release-plugin] prepare for next development iteration
2016-01-31 17:44:31 +01:00
Richard Körber
74b52ae77b
[maven-release-plugin] prepare release v0.3
2016-01-31 17:44:31 +01:00
Richard Körber
82a6eb16cb
Add version number to challenge classes
2016-01-31 17:08:55 +01:00
Richard Körber
162c2c3773
Support ECC in JWS
2016-01-31 14:47:02 +01:00
Richard Körber
1b83115892
Merge Account and Registration, simplify API
2016-01-28 23:55:09 +01:00
Richard Körber
d4a8d449c9
Add Account Key Roll-over
2016-01-16 16:23:01 +01:00
Richard Körber
d7adc5d486
Change 'proofOfPossession' to 'proof-of-possession'
2016-01-11 01:28:50 +01:00
Richard Körber
289c71bb4e
[maven-release-plugin] prepare for next development iteration
2016-01-09 17:28:53 +01:00
Richard Körber
e49bf4e8f2
[maven-release-plugin] prepare release v0.2
2016-01-09 17:28:53 +01:00
Richard Körber
c83df44eed
Expire resource directory cache.
...
A long term AcmeClient instance could miss changes to the directory,
so the cache is invalidated after 1 hour.
2016-01-09 17:23:05 +01:00