Class IssueCertificateRequest

All Implemented Interfaces:
SdkPojo, ToCopyableBuilder<IssueCertificateRequest.Builder,IssueCertificateRequest>

@Generated("software.amazon.awssdk:codegen") public final class IssueCertificateRequest extends AcmPcaRequest implements ToCopyableBuilder<IssueCertificateRequest.Builder,IssueCertificateRequest>
  • Method Details

    • apiPassthrough

      public final ApiPassthrough apiPassthrough()

      Specifies X.509 certificate information to be included in the issued certificate. An APIPassthrough or APICSRPassthrough template variant must be selected, or else this parameter is ignored. For more information about using these templates, see Understanding Certificate Templates.

      If conflicting or duplicate certificate information is supplied during certificate issuance, Amazon Web Services Private CA applies order of operation rules to determine what information is used.

      Returns:
      Specifies X.509 certificate information to be included in the issued certificate. An APIPassthrough or APICSRPassthrough template variant must be selected, or else this parameter is ignored. For more information about using these templates, see Understanding Certificate Templates.

      If conflicting or duplicate certificate information is supplied during certificate issuance, Amazon Web Services Private CA applies order of operation rules to determine what information is used.

    • certificateAuthorityArn

      public final String certificateAuthorityArn()

      The Amazon Resource Name (ARN) that was returned when you called CreateCertificateAuthority. This must be of the form:

      arn:aws:acm-pca:region:account:certificate-authority/12345678-1234-1234-1234-123456789012

      Returns:
      The Amazon Resource Name (ARN) that was returned when you called CreateCertificateAuthority. This must be of the form:

      arn:aws:acm-pca:region:account:certificate-authority/12345678-1234-1234-1234-123456789012

    • csr

      public final SdkBytes csr()

      The certificate signing request (CSR) for the certificate you want to issue. As an example, you can use the following OpenSSL command to create the CSR and a 2048 bit RSA private key.

      openssl req -new -newkey rsa:2048 -days 365 -keyout private/test_cert_priv_key.pem -out csr/test_cert_.csr

      If you have a configuration file, you can then use the following OpenSSL command. The usr_cert block in the configuration file contains your X509 version 3 extensions.

      openssl req -new -config openssl_rsa.cnf -extensions usr_cert -newkey rsa:2048 -days 365 -keyout private/test_cert_priv_key.pem -out csr/test_cert_.csr

      Note: A CSR must provide either a subject name or a subject alternative name or the request will be rejected.

      Returns:
      The certificate signing request (CSR) for the certificate you want to issue. As an example, you can use the following OpenSSL command to create the CSR and a 2048 bit RSA private key.

      openssl req -new -newkey rsa:2048 -days 365 -keyout private/test_cert_priv_key.pem -out csr/test_cert_.csr

      If you have a configuration file, you can then use the following OpenSSL command. The usr_cert block in the configuration file contains your X509 version 3 extensions.

      openssl req -new -config openssl_rsa.cnf -extensions usr_cert -newkey rsa:2048 -days 365 -keyout private/test_cert_priv_key.pem -out csr/test_cert_.csr

      Note: A CSR must provide either a subject name or a subject alternative name or the request will be rejected.

    • signingAlgorithm

      public final SigningAlgorithm signingAlgorithm()

      The name of the algorithm that will be used to sign the certificate to be issued.

      This parameter should not be confused with the SigningAlgorithm parameter used to sign a CSR in the CreateCertificateAuthority action.

      The specified signing algorithm family (RSA or ECDSA) must match the algorithm family of the CA's secret key.

      If the service returns an enum value that is not available in the current SDK version, signingAlgorithm will return SigningAlgorithm.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from signingAlgorithmAsString().

      Returns:
      The name of the algorithm that will be used to sign the certificate to be issued.

      This parameter should not be confused with the SigningAlgorithm parameter used to sign a CSR in the CreateCertificateAuthority action.

      The specified signing algorithm family (RSA or ECDSA) must match the algorithm family of the CA's secret key.

      See Also:
    • signingAlgorithmAsString

      public final String signingAlgorithmAsString()

      The name of the algorithm that will be used to sign the certificate to be issued.

      This parameter should not be confused with the SigningAlgorithm parameter used to sign a CSR in the CreateCertificateAuthority action.

      The specified signing algorithm family (RSA or ECDSA) must match the algorithm family of the CA's secret key.

      If the service returns an enum value that is not available in the current SDK version, signingAlgorithm will return SigningAlgorithm.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from signingAlgorithmAsString().

      Returns:
      The name of the algorithm that will be used to sign the certificate to be issued.

      This parameter should not be confused with the SigningAlgorithm parameter used to sign a CSR in the CreateCertificateAuthority action.

      The specified signing algorithm family (RSA or ECDSA) must match the algorithm family of the CA's secret key.

      See Also:
    • templateArn

      public final String templateArn()

      Specifies a custom configuration template to use when issuing a certificate. If this parameter is not provided, Amazon Web Services Private CA defaults to the EndEntityCertificate/V1 template. For CA certificates, you should choose the shortest path length that meets your needs. The path length is indicated by the PathLenN portion of the ARN, where N is the CA depth.

      Note: The CA depth configured on a subordinate CA certificate must not exceed the limit set by its parents in the CA hierarchy.

      For a list of TemplateArn values supported by Amazon Web Services Private CA, see Understanding Certificate Templates.

      Returns:
      Specifies a custom configuration template to use when issuing a certificate. If this parameter is not provided, Amazon Web Services Private CA defaults to the EndEntityCertificate/V1 template. For CA certificates, you should choose the shortest path length that meets your needs. The path length is indicated by the PathLenN portion of the ARN, where N is the CA depth.

      Note: The CA depth configured on a subordinate CA certificate must not exceed the limit set by its parents in the CA hierarchy.

      For a list of TemplateArn values supported by Amazon Web Services Private CA, see Understanding Certificate Templates.

    • validity

      public final Validity validity()

      Information describing the end of the validity period of the certificate. This parameter sets the “Not After” date for the certificate.

      Certificate validity is the period of time during which a certificate is valid. Validity can be expressed as an explicit date and time when the certificate expires, or as a span of time after issuance, stated in days, months, or years. For more information, see Validity in RFC 5280.

      This value is unaffected when ValidityNotBefore is also specified. For example, if Validity is set to 20 days in the future, the certificate will expire 20 days from issuance time regardless of the ValidityNotBefore value.

      The end of the validity period configured on a certificate must not exceed the limit set on its parents in the CA hierarchy.

      Returns:
      Information describing the end of the validity period of the certificate. This parameter sets the “Not After” date for the certificate.

      Certificate validity is the period of time during which a certificate is valid. Validity can be expressed as an explicit date and time when the certificate expires, or as a span of time after issuance, stated in days, months, or years. For more information, see Validity in RFC 5280.

      This value is unaffected when ValidityNotBefore is also specified. For example, if Validity is set to 20 days in the future, the certificate will expire 20 days from issuance time regardless of the ValidityNotBefore value.

      The end of the validity period configured on a certificate must not exceed the limit set on its parents in the CA hierarchy.

    • validityNotBefore

      public final Validity validityNotBefore()

      Information describing the start of the validity period of the certificate. This parameter sets the “Not Before" date for the certificate.

      By default, when issuing a certificate, Amazon Web Services Private CA sets the "Not Before" date to the issuance time minus 60 minutes. This compensates for clock inconsistencies across computer systems. The ValidityNotBefore parameter can be used to customize the “Not Before” value.

      Unlike the Validity parameter, the ValidityNotBefore parameter is optional.

      The ValidityNotBefore value is expressed as an explicit date and time, using the Validity type value ABSOLUTE. For more information, see Validity in this API reference and Validity in RFC 5280.

      Returns:
      Information describing the start of the validity period of the certificate. This parameter sets the “Not Before" date for the certificate.

      By default, when issuing a certificate, Amazon Web Services Private CA sets the "Not Before" date to the issuance time minus 60 minutes. This compensates for clock inconsistencies across computer systems. The ValidityNotBefore parameter can be used to customize the “Not Before” value.

      Unlike the Validity parameter, the ValidityNotBefore parameter is optional.

      The ValidityNotBefore value is expressed as an explicit date and time, using the Validity type value ABSOLUTE. For more information, see Validity in this API reference and Validity in RFC 5280.

    • idempotencyToken

      public final String idempotencyToken()

      Alphanumeric string that can be used to distinguish between calls to the IssueCertificate action. Idempotency tokens for IssueCertificate time out after five minutes. Therefore, if you call IssueCertificate multiple times with the same idempotency token within five minutes, Amazon Web Services Private CA recognizes that you are requesting only one certificate and will issue only one. If you change the idempotency token for each call, Amazon Web Services Private CA recognizes that you are requesting multiple certificates.

      Returns:
      Alphanumeric string that can be used to distinguish between calls to the IssueCertificate action. Idempotency tokens for IssueCertificate time out after five minutes. Therefore, if you call IssueCertificate multiple times with the same idempotency token within five minutes, Amazon Web Services Private CA recognizes that you are requesting only one certificate and will issue only one. If you change the idempotency token for each call, Amazon Web Services Private CA recognizes that you are requesting multiple certificates.
    • toBuilder

      public IssueCertificateRequest.Builder toBuilder()
      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<IssueCertificateRequest.Builder,IssueCertificateRequest>
      Specified by:
      toBuilder in class AcmPcaRequest
      Returns:
      a builder for type T
    • builder

      public static IssueCertificateRequest.Builder builder()
    • serializableBuilderClass

      public static Class<? extends IssueCertificateRequest.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class AwsRequest
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class AwsRequest
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      Description copied from interface: SdkPojo
      Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in an SdkPojo class, and is generated based on a service model.

      If an SdkPojo class does not have any inherited fields, equalsBySdkFields and equals are essentially the same.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • toString

      public final String toString()
      Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
      Description copied from class: SdkRequest
      Used to retrieve the value of a field from any class that extends SdkRequest. The field name specified should match the member name from the corresponding service-2.json model specified in the codegen-resources folder for a given service. The class specifies what class to cast the returned value to. If the returned value is also a modeled class, the SdkRequest.getValueForField(String, Class) method will again be available.
      Overrides:
      getValueForField in class SdkRequest
      Parameters:
      fieldName - The name of the member to be retrieved.
      clazz - The class to cast the returned object to.
      Returns:
      Optional containing the casted return value
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.