Class RequestCertificateRequest
- java.lang.Object
-
- software.amazon.awssdk.core.SdkRequest
-
- software.amazon.awssdk.awscore.AwsRequest
-
- software.amazon.awssdk.services.acm.model.AcmRequest
-
- software.amazon.awssdk.services.acm.model.RequestCertificateRequest
-
- All Implemented Interfaces:
SdkPojo
,ToCopyableBuilder<RequestCertificateRequest.Builder,RequestCertificateRequest>
@Generated("software.amazon.awssdk:codegen") public final class RequestCertificateRequest extends AcmRequest implements ToCopyableBuilder<RequestCertificateRequest.Builder,RequestCertificateRequest>
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
RequestCertificateRequest.Builder
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static RequestCertificateRequest.Builder
builder()
String
certificateAuthorityArn()
The Amazon Resource Name (ARN) of the private certificate authority (CA) that will be used to issue the certificate.String
domainName()
Fully qualified domain name (FQDN), such as www.example.com, that you want to secure with an ACM certificate.List<DomainValidationOption>
domainValidationOptions()
The domain name that you want ACM to use to send you emails so that you can validate domain ownership.boolean
equals(Object obj)
boolean
equalsBySdkFields(Object obj)
<T> Optional<T>
getValueForField(String fieldName, Class<T> clazz)
boolean
hasDomainValidationOptions()
For responses, this returns true if the service returned a value for the DomainValidationOptions property.int
hashCode()
boolean
hasSubjectAlternativeNames()
For responses, this returns true if the service returned a value for the SubjectAlternativeNames property.boolean
hasTags()
For responses, this returns true if the service returned a value for the Tags property.String
idempotencyToken()
Customer chosen string that can be used to distinguish between calls toRequestCertificate
.KeyAlgorithm
keyAlgorithm()
Specifies the algorithm of the public and private key pair that your certificate uses to encrypt data.String
keyAlgorithmAsString()
Specifies the algorithm of the public and private key pair that your certificate uses to encrypt data.CertificateOptions
options()
Currently, you can use this parameter to specify whether to add the certificate to a certificate transparency log.Map<String,SdkField<?>>
sdkFieldNameToField()
List<SdkField<?>>
sdkFields()
static Class<? extends RequestCertificateRequest.Builder>
serializableBuilderClass()
List<String>
subjectAlternativeNames()
Additional FQDNs to be included in the Subject Alternative Name extension of the ACM certificate.List<Tag>
tags()
One or more resource tags to associate with the certificate.RequestCertificateRequest.Builder
toBuilder()
String
toString()
Returns a string representation of this object.ValidationMethod
validationMethod()
The method you want to use if you are requesting a public certificate to validate that you own or control domain.String
validationMethodAsString()
The method you want to use if you are requesting a public certificate to validate that you own or control domain.-
Methods inherited from class software.amazon.awssdk.awscore.AwsRequest
overrideConfiguration
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
-
-
-
Method Detail
-
domainName
public final String domainName()
Fully qualified domain name (FQDN), such as www.example.com, that you want to secure with an ACM certificate. Use an asterisk (*) to create a wildcard certificate that protects several sites in the same domain. For example, *.example.com protects www.example.com, site.example.com, and images.example.com.
In compliance with RFC 5280, the length of the domain name (technically, the Common Name) that you provide cannot exceed 64 octets (characters), including periods. To add a longer domain name, specify it in the Subject Alternative Name field, which supports names up to 253 octets in length.
- Returns:
- Fully qualified domain name (FQDN), such as www.example.com, that you want to secure with an ACM
certificate. Use an asterisk (*) to create a wildcard certificate that protects several sites in the same
domain. For example, *.example.com protects www.example.com, site.example.com, and images.example.com.
In compliance with RFC 5280, the length of the domain name (technically, the Common Name) that you provide cannot exceed 64 octets (characters), including periods. To add a longer domain name, specify it in the Subject Alternative Name field, which supports names up to 253 octets in length.
-
validationMethod
public final ValidationMethod validationMethod()
The method you want to use if you are requesting a public certificate to validate that you own or control domain. You can validate with DNS or validate with email. We recommend that you use DNS validation.
If the service returns an enum value that is not available in the current SDK version,
validationMethod
will returnValidationMethod.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromvalidationMethodAsString()
.- Returns:
- The method you want to use if you are requesting a public certificate to validate that you own or control domain. You can validate with DNS or validate with email. We recommend that you use DNS validation.
- See Also:
ValidationMethod
-
validationMethodAsString
public final String validationMethodAsString()
The method you want to use if you are requesting a public certificate to validate that you own or control domain. You can validate with DNS or validate with email. We recommend that you use DNS validation.
If the service returns an enum value that is not available in the current SDK version,
validationMethod
will returnValidationMethod.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromvalidationMethodAsString()
.- Returns:
- The method you want to use if you are requesting a public certificate to validate that you own or control domain. You can validate with DNS or validate with email. We recommend that you use DNS validation.
- See Also:
ValidationMethod
-
hasSubjectAlternativeNames
public final boolean hasSubjectAlternativeNames()
For responses, this returns true if the service returned a value for the SubjectAlternativeNames property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()
method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
-
subjectAlternativeNames
public final List<String> subjectAlternativeNames()
Additional FQDNs to be included in the Subject Alternative Name extension of the ACM certificate. For example, add the name www.example.net to a certificate for which the
DomainName
field is www.example.com if users can reach your site by using either name. The maximum number of domain names that you can add to an ACM certificate is 100. However, the initial quota is 10 domain names. If you need more than 10 names, you must request a quota increase. For more information, see Quotas.The maximum length of a SAN DNS name is 253 octets. The name is made up of multiple labels separated by periods. No label can be longer than 63 octets. Consider the following examples:
-
(63 octets).(63 octets).(63 octets).(61 octets)
is legal because the total length is 253 octets (63+1+63+1+63+1+61) and no label exceeds 63 octets. -
(64 octets).(63 octets).(63 octets).(61 octets)
is not legal because the total length exceeds 253 octets (64+1+63+1+63+1+61) and the first label exceeds 63 octets. -
(63 octets).(63 octets).(63 octets).(62 octets)
is not legal because the total length of the DNS name (63+1+63+1+63+1+62) exceeds 253 octets.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasSubjectAlternativeNames()
method.- Returns:
- Additional FQDNs to be included in the Subject Alternative Name extension of the ACM certificate. For
example, add the name www.example.net to a certificate for which the
DomainName
field is www.example.com if users can reach your site by using either name. The maximum number of domain names that you can add to an ACM certificate is 100. However, the initial quota is 10 domain names. If you need more than 10 names, you must request a quota increase. For more information, see Quotas.The maximum length of a SAN DNS name is 253 octets. The name is made up of multiple labels separated by periods. No label can be longer than 63 octets. Consider the following examples:
-
(63 octets).(63 octets).(63 octets).(61 octets)
is legal because the total length is 253 octets (63+1+63+1+63+1+61) and no label exceeds 63 octets. -
(64 octets).(63 octets).(63 octets).(61 octets)
is not legal because the total length exceeds 253 octets (64+1+63+1+63+1+61) and the first label exceeds 63 octets. -
(63 octets).(63 octets).(63 octets).(62 octets)
is not legal because the total length of the DNS name (63+1+63+1+63+1+62) exceeds 253 octets.
-
-
-
idempotencyToken
public final String idempotencyToken()
Customer chosen string that can be used to distinguish between calls to
RequestCertificate
. Idempotency tokens time out after one hour. Therefore, if you callRequestCertificate
multiple times with the same idempotency token within one hour, ACM recognizes that you are requesting only one certificate and will issue only one. If you change the idempotency token for each call, ACM recognizes that you are requesting multiple certificates.- Returns:
- Customer chosen string that can be used to distinguish between calls to
RequestCertificate
. Idempotency tokens time out after one hour. Therefore, if you callRequestCertificate
multiple times with the same idempotency token within one hour, ACM recognizes that you are requesting only one certificate and will issue only one. If you change the idempotency token for each call, ACM recognizes that you are requesting multiple certificates.
-
hasDomainValidationOptions
public final boolean hasDomainValidationOptions()
For responses, this returns true if the service returned a value for the DomainValidationOptions property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()
method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
-
domainValidationOptions
public final List<DomainValidationOption> domainValidationOptions()
The domain name that you want ACM to use to send you emails so that you can validate domain ownership.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasDomainValidationOptions()
method.- Returns:
- The domain name that you want ACM to use to send you emails so that you can validate domain ownership.
-
options
public final CertificateOptions options()
Currently, you can use this parameter to specify whether to add the certificate to a certificate transparency log. Certificate transparency makes it possible to detect SSL/TLS certificates that have been mistakenly or maliciously issued. Certificates that have not been logged typically produce an error message in a browser. For more information, see Opting Out of Certificate Transparency Logging.
- Returns:
- Currently, you can use this parameter to specify whether to add the certificate to a certificate transparency log. Certificate transparency makes it possible to detect SSL/TLS certificates that have been mistakenly or maliciously issued. Certificates that have not been logged typically produce an error message in a browser. For more information, see Opting Out of Certificate Transparency Logging.
-
certificateAuthorityArn
public final String certificateAuthorityArn()
The Amazon Resource Name (ARN) of the private certificate authority (CA) that will be used to issue the certificate. If you do not provide an ARN and you are trying to request a private certificate, ACM will attempt to issue a public certificate. For more information about private CAs, see the Amazon Web Services Private Certificate Authority user guide. The ARN must have the following form:
arn:aws:acm-pca:region:account:certificate-authority/12345678-1234-1234-1234-123456789012
- Returns:
- The Amazon Resource Name (ARN) of the private certificate authority (CA) that will be used to issue the
certificate. If you do not provide an ARN and you are trying to request a private certificate, ACM will
attempt to issue a public certificate. For more information about private CAs, see the Amazon Web Services Private
Certificate Authority user guide. The ARN must have the following form:
arn:aws:acm-pca:region:account:certificate-authority/12345678-1234-1234-1234-123456789012
-
hasTags
public final boolean hasTags()
For responses, this returns true if the service returned a value for the Tags property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()
method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
-
tags
public final List<Tag> tags()
One or more resource tags to associate with the certificate.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasTags()
method.- Returns:
- One or more resource tags to associate with the certificate.
-
keyAlgorithm
public final KeyAlgorithm keyAlgorithm()
Specifies the algorithm of the public and private key pair that your certificate uses to encrypt data. RSA is the default key algorithm for ACM certificates. Elliptic Curve Digital Signature Algorithm (ECDSA) keys are smaller, offering security comparable to RSA keys but with greater computing efficiency. However, ECDSA is not supported by all network clients. Some Amazon Web Services services may require RSA keys, or only support ECDSA keys of a particular size, while others allow the use of either RSA and ECDSA keys to ensure that compatibility is not broken. Check the requirements for the Amazon Web Services service where you plan to deploy your certificate. For more information about selecting an algorithm, see Key algorithms.
Algorithms supported for an ACM certificate request include:
-
RSA_2048
-
EC_prime256v1
-
EC_secp384r1
Other listed algorithms are for imported certificates only.
When you request a private PKI certificate signed by a CA from Amazon Web Services Private CA, the specified signing algorithm family (RSA or ECDSA) must match the algorithm family of the CA's secret key.
Default: RSA_2048
If the service returns an enum value that is not available in the current SDK version,
keyAlgorithm
will returnKeyAlgorithm.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromkeyAlgorithmAsString()
.- Returns:
- Specifies the algorithm of the public and private key pair that your certificate uses to encrypt data.
RSA is the default key algorithm for ACM certificates. Elliptic Curve Digital Signature Algorithm (ECDSA)
keys are smaller, offering security comparable to RSA keys but with greater computing efficiency.
However, ECDSA is not supported by all network clients. Some Amazon Web Services services may require RSA
keys, or only support ECDSA keys of a particular size, while others allow the use of either RSA and ECDSA
keys to ensure that compatibility is not broken. Check the requirements for the Amazon Web Services
service where you plan to deploy your certificate. For more information about selecting an algorithm, see
Key
algorithms.
Algorithms supported for an ACM certificate request include:
-
RSA_2048
-
EC_prime256v1
-
EC_secp384r1
Other listed algorithms are for imported certificates only.
When you request a private PKI certificate signed by a CA from Amazon Web Services Private CA, the specified signing algorithm family (RSA or ECDSA) must match the algorithm family of the CA's secret key.
Default: RSA_2048
-
- See Also:
KeyAlgorithm
-
-
keyAlgorithmAsString
public final String keyAlgorithmAsString()
Specifies the algorithm of the public and private key pair that your certificate uses to encrypt data. RSA is the default key algorithm for ACM certificates. Elliptic Curve Digital Signature Algorithm (ECDSA) keys are smaller, offering security comparable to RSA keys but with greater computing efficiency. However, ECDSA is not supported by all network clients. Some Amazon Web Services services may require RSA keys, or only support ECDSA keys of a particular size, while others allow the use of either RSA and ECDSA keys to ensure that compatibility is not broken. Check the requirements for the Amazon Web Services service where you plan to deploy your certificate. For more information about selecting an algorithm, see Key algorithms.
Algorithms supported for an ACM certificate request include:
-
RSA_2048
-
EC_prime256v1
-
EC_secp384r1
Other listed algorithms are for imported certificates only.
When you request a private PKI certificate signed by a CA from Amazon Web Services Private CA, the specified signing algorithm family (RSA or ECDSA) must match the algorithm family of the CA's secret key.
Default: RSA_2048
If the service returns an enum value that is not available in the current SDK version,
keyAlgorithm
will returnKeyAlgorithm.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromkeyAlgorithmAsString()
.- Returns:
- Specifies the algorithm of the public and private key pair that your certificate uses to encrypt data.
RSA is the default key algorithm for ACM certificates. Elliptic Curve Digital Signature Algorithm (ECDSA)
keys are smaller, offering security comparable to RSA keys but with greater computing efficiency.
However, ECDSA is not supported by all network clients. Some Amazon Web Services services may require RSA
keys, or only support ECDSA keys of a particular size, while others allow the use of either RSA and ECDSA
keys to ensure that compatibility is not broken. Check the requirements for the Amazon Web Services
service where you plan to deploy your certificate. For more information about selecting an algorithm, see
Key
algorithms.
Algorithms supported for an ACM certificate request include:
-
RSA_2048
-
EC_prime256v1
-
EC_secp384r1
Other listed algorithms are for imported certificates only.
When you request a private PKI certificate signed by a CA from Amazon Web Services Private CA, the specified signing algorithm family (RSA or ECDSA) must match the algorithm family of the CA's secret key.
Default: RSA_2048
-
- See Also:
KeyAlgorithm
-
-
toBuilder
public RequestCertificateRequest.Builder toBuilder()
- Specified by:
toBuilder
in interfaceToCopyableBuilder<RequestCertificateRequest.Builder,RequestCertificateRequest>
- Specified by:
toBuilder
in classAcmRequest
-
builder
public static RequestCertificateRequest.Builder builder()
-
serializableBuilderClass
public static Class<? extends RequestCertificateRequest.Builder> serializableBuilderClass()
-
hashCode
public final int hashCode()
- Overrides:
hashCode
in classAwsRequest
-
equals
public final boolean equals(Object obj)
- Overrides:
equals
in classAwsRequest
-
equalsBySdkFields
public final boolean equalsBySdkFields(Object obj)
- Specified by:
equalsBySdkFields
in interfaceSdkPojo
-
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.
-
getValueForField
public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
- Overrides:
getValueForField
in classSdkRequest
-
sdkFieldNameToField
public final Map<String,SdkField<?>> sdkFieldNameToField()
- Specified by:
sdkFieldNameToField
in interfaceSdkPojo
-
-