mirror of https://github.com/shred/acme4j
draft-ietf-acme-ari is RFC 9773 now
Also this feature ends experimental status.master
parent
ec726f6859
commit
2a5df329bd
|
@ -15,7 +15,7 @@ This Java client helps to connect to an ACME server, and performing all necessar
|
||||||
* Supports [RFC 8739](https://tools.ietf.org/html/rfc8739) short-term automatic certificate renewal (experimental)
|
* Supports [RFC 8739](https://tools.ietf.org/html/rfc8739) short-term automatic certificate renewal (experimental)
|
||||||
* Supports [RFC 8823](https://tools.ietf.org/html/rfc8823) for S/MIME certificates (experimental)
|
* Supports [RFC 8823](https://tools.ietf.org/html/rfc8823) for S/MIME certificates (experimental)
|
||||||
* Supports [RFC 9444](https://tools.ietf.org/html/rfc9444) for subdomain validation
|
* Supports [RFC 9444](https://tools.ietf.org/html/rfc9444) for subdomain validation
|
||||||
* Supports [draft-ietf-acme-ari-07](https://www.ietf.org/archive/id/draft-ietf-acme-ari-07.html) for renewal information (experimental)
|
* Supports [RFC 9773](https://tools.ietf.org/html/rfc9773) for renewal information
|
||||||
* Supports [draft-aaron-acme-profiles-00](https://www.ietf.org/archive/id/draft-aaron-acme-profiles-00.html) for certificate profiles (experimental)
|
* Supports [draft-aaron-acme-profiles-00](https://www.ietf.org/archive/id/draft-aaron-acme-profiles-00.html) for certificate profiles (experimental)
|
||||||
* Supports [draft-ietf-acme-dns-account-label-00](https://datatracker.ietf.org/doc/draft-ietf-acme-dns-account-label/) for DNS labeled with ACME account ID challenges (experimental)
|
* Supports [draft-ietf-acme-dns-account-label-00](https://datatracker.ietf.org/doc/draft-ietf-acme-dns-account-label/) for DNS labeled with ACME account ID challenges (experimental)
|
||||||
* Easy to use Java API
|
* Easy to use Java API
|
||||||
|
|
|
@ -192,9 +192,6 @@ public class Certificate extends AcmeResource {
|
||||||
* Returns the location of the certificate's RenewalInfo. Empty if the CA does not
|
* Returns the location of the certificate's RenewalInfo. Empty if the CA does not
|
||||||
* provide this information.
|
* provide this information.
|
||||||
*
|
*
|
||||||
* @draft This method is currently based on an RFC draft. It may be changed or
|
|
||||||
* removed without notice to reflect future changes to the draft. SemVer rules
|
|
||||||
* do not apply here.
|
|
||||||
* @since 3.0.0
|
* @since 3.0.0
|
||||||
*/
|
*/
|
||||||
public Optional<URL> getRenewalInfoLocation() {
|
public Optional<URL> getRenewalInfoLocation() {
|
||||||
|
@ -220,9 +217,6 @@ public class Certificate extends AcmeResource {
|
||||||
/**
|
/**
|
||||||
* Returns {@code true} if the CA provides renewal information.
|
* Returns {@code true} if the CA provides renewal information.
|
||||||
*
|
*
|
||||||
* @draft This method is currently based on an RFC draft. It may be changed or
|
|
||||||
* removed without notice to reflect future changes to the draft. SemVer rules
|
|
||||||
* do not apply here.
|
|
||||||
* @since 3.0.0
|
* @since 3.0.0
|
||||||
*/
|
*/
|
||||||
public boolean hasRenewalInfo() {
|
public boolean hasRenewalInfo() {
|
||||||
|
@ -232,9 +226,6 @@ public class Certificate extends AcmeResource {
|
||||||
/**
|
/**
|
||||||
* Reads the RenewalInfo for this certificate.
|
* Reads the RenewalInfo for this certificate.
|
||||||
*
|
*
|
||||||
* @draft This method is currently based on an RFC draft. It may be changed or
|
|
||||||
* removed without notice to reflect future changes to the draft. SemVer rules
|
|
||||||
* do not apply here.
|
|
||||||
* @return The {@link RenewalInfo} of this certificate.
|
* @return The {@link RenewalInfo} of this certificate.
|
||||||
* @throws AcmeNotSupportedException if the CA does not support renewal information.
|
* @throws AcmeNotSupportedException if the CA does not support renewal information.
|
||||||
* @since 3.0.0
|
* @since 3.0.0
|
||||||
|
|
|
@ -160,9 +160,6 @@ public class Login {
|
||||||
* @param certificate
|
* @param certificate
|
||||||
* {@link X509Certificate} to get the {@link RenewalInfo} for
|
* {@link X509Certificate} to get the {@link RenewalInfo} for
|
||||||
* @return {@link RenewalInfo} bound to the login
|
* @return {@link RenewalInfo} bound to the login
|
||||||
* @draft This method is currently based on an RFC draft. It may be changed or removed
|
|
||||||
* without notice to reflect future changes to the draft. SemVer rules do not apply
|
|
||||||
* here.
|
|
||||||
* @since 3.2.0
|
* @since 3.2.0
|
||||||
*/
|
*/
|
||||||
public RenewalInfo bindRenewalInfo(X509Certificate certificate) throws AcmeException {
|
public RenewalInfo bindRenewalInfo(X509Certificate certificate) throws AcmeException {
|
||||||
|
|
|
@ -299,9 +299,6 @@ public class OrderBuilder {
|
||||||
* @param uniqueId
|
* @param uniqueId
|
||||||
* Certificate's renewal unique identifier.
|
* Certificate's renewal unique identifier.
|
||||||
* @return itself
|
* @return itself
|
||||||
* @draft This method is currently based on an RFC draft. It may be changed or removed
|
|
||||||
* without notice to reflect future changes to the draft. SemVer rules do not apply
|
|
||||||
* here.
|
|
||||||
* @since 3.2.0
|
* @since 3.2.0
|
||||||
*/
|
*/
|
||||||
public OrderBuilder replaces(String uniqueId) {
|
public OrderBuilder replaces(String uniqueId) {
|
||||||
|
@ -319,9 +316,6 @@ public class OrderBuilder {
|
||||||
* @param certificate
|
* @param certificate
|
||||||
* Certificate to be replaced
|
* Certificate to be replaced
|
||||||
* @return itself
|
* @return itself
|
||||||
* @draft This method is currently based on an RFC draft. It may be changed or removed
|
|
||||||
* without notice to reflect future changes to the draft. SemVer rules do not apply
|
|
||||||
* here.
|
|
||||||
* @since 3.2.0
|
* @since 3.2.0
|
||||||
*/
|
*/
|
||||||
public OrderBuilder replaces(X509Certificate certificate) {
|
public OrderBuilder replaces(X509Certificate certificate) {
|
||||||
|
@ -338,9 +332,6 @@ public class OrderBuilder {
|
||||||
* @param certificate
|
* @param certificate
|
||||||
* Certificate to be replaced
|
* Certificate to be replaced
|
||||||
* @return itself
|
* @return itself
|
||||||
* @draft This method is currently based on an RFC draft. It may be changed or removed
|
|
||||||
* without notice to reflect future changes to the draft. SemVer rules do not apply
|
|
||||||
* here.
|
|
||||||
* @since 3.2.0
|
* @since 3.2.0
|
||||||
*/
|
*/
|
||||||
public OrderBuilder replaces(Certificate certificate) {
|
public OrderBuilder replaces(Certificate certificate) {
|
||||||
|
|
|
@ -30,9 +30,6 @@ import org.slf4j.LoggerFactory;
|
||||||
/**
|
/**
|
||||||
* Renewal Information of a certificate.
|
* Renewal Information of a certificate.
|
||||||
*
|
*
|
||||||
* @draft This class is currently based on an RFC draft. It may be changed or
|
|
||||||
* removed without notice to reflect future changes to the draft. SemVer rules
|
|
||||||
* do not apply here.
|
|
||||||
* @since 3.0.0
|
* @since 3.0.0
|
||||||
*/
|
*/
|
||||||
public class RenewalInfo extends AcmeJsonResource {
|
public class RenewalInfo extends AcmeJsonResource {
|
||||||
|
|
|
@ -19,7 +19,7 @@ Latest version:  short-term automatic certificate renewal (experimental)
|
* Supports [RFC 8739](https://tools.ietf.org/html/rfc8739) short-term automatic certificate renewal (experimental)
|
||||||
* Supports [RFC 8823](https://tools.ietf.org/html/rfc8823) for S/MIME certificates (experimental)
|
* Supports [RFC 8823](https://tools.ietf.org/html/rfc8823) for S/MIME certificates (experimental)
|
||||||
* Supports [RFC 9444](https://tools.ietf.org/html/rfc9444) for subdomain validation
|
* Supports [RFC 9444](https://tools.ietf.org/html/rfc9444) for subdomain validation
|
||||||
* Supports [draft-ietf-acme-ari-07](https://www.ietf.org/archive/id/draft-ietf-acme-ari-07.html) for renewal information (experimental)
|
* Supports [RFC 9773](https://tools.ietf.org/html/rfc9773) for renewal information
|
||||||
* Supports [draft-aaron-acme-profiles-00](https://www.ietf.org/archive/id/draft-aaron-acme-profiles-00.html) for certificate profiles (experimental)
|
* Supports [draft-aaron-acme-profiles-00](https://www.ietf.org/archive/id/draft-aaron-acme-profiles-00.html) for certificate profiles (experimental)
|
||||||
* Supports [draft-ietf-acme-dns-account-label-00](https://datatracker.ietf.org/doc/draft-ietf-acme-dns-account-label/) for DNS labeled with ACME account ID challenges (experimental)
|
* Supports [draft-ietf-acme-dns-account-label-00](https://datatracker.ietf.org/doc/draft-ietf-acme-dns-account-label/) for DNS labeled with ACME account ID challenges (experimental)
|
||||||
* Easy to use Java API
|
* Easy to use Java API
|
||||||
|
|
|
@ -13,15 +13,12 @@ There is no special path for renewing a certificate. To renew it, just [order](o
|
||||||
|
|
||||||
## Renewal Information
|
## Renewal Information
|
||||||
|
|
||||||
_acme4j_ supports the [draft-ietf-acme-ari](https://www.ietf.org/archive/id/draft-ietf-acme-ari-07.html) draft.
|
_acme4j_ supports [RFC 9773](https://tools.ietf.org/html/rfc9773) for renewal information.
|
||||||
|
|
||||||
You can check if the CA offers renewal information by invoking `Certificate.hasRenewalInfo()`. If it does, you can get a suggested time window for certificate renewal by invoking `Certificate.getRenewalInfo()`.
|
You can check if the CA offers renewal information by invoking `Certificate.hasRenewalInfo()`. If it does, you can get a suggested time window for certificate renewal by invoking `Certificate.getRenewalInfo()`.
|
||||||
|
|
||||||
When renewing a certificate, you can use `OrderBuilder.replaces()` to mark your current certificate as the one being replaced. This step is optional though.
|
When renewing a certificate, you can use `OrderBuilder.replaces()` to mark your current certificate as the one being replaced. This step is optional though.
|
||||||
|
|
||||||
!!! note
|
|
||||||
Starting with _acme4j_ v3.2.0, the now obsolete [draft-ietf-acme-ari-01](https://www.ietf.org/archive/id/draft-ietf-acme-ari-01.html) is not supported anymore! If your server requires the old draft, use _acme4j_ v3.1.1 until the CA upgraded its systems. Because of the dynamic nature of the draft, all parts of the API that are related to this draft may be changed or removed without notice. SemVer rules do not apply here.
|
|
||||||
|
|
||||||
## Short-Term Automatic Renewal
|
## Short-Term Automatic Renewal
|
||||||
|
|
||||||
_acme4j_ supports [RFC 8739](https://tools.ietf.org/html/rfc8739) for Short-Term Automatic Renewal (STAR) of certificates.
|
_acme4j_ supports [RFC 8739](https://tools.ietf.org/html/rfc8739) for Short-Term Automatic Renewal (STAR) of certificates.
|
||||||
|
|
Loading…
Reference in New Issue