Struct aws_sdk_acm::operation::request_certificate::builders::RequestCertificateFluentBuilder
source · pub struct RequestCertificateFluentBuilder { /* private fields */ }
Expand description
Fluent builder constructing a request to RequestCertificate
.
Requests an ACM certificate for use with other Amazon Web Services services. To request an ACM certificate, you must specify a fully qualified domain name (FQDN) in the DomainName
parameter. You can also specify additional FQDNs in the SubjectAlternativeNames
parameter.
If you are requesting a private certificate, domain validation is not required. If you are requesting a public certificate, each domain name that you specify must be validated to verify that you own or control the domain. You can use DNS validation or email validation. We recommend that you use DNS validation. ACM issues public certificates after receiving approval from the domain owner.
ACM behavior differs from the RFC 6125 specification of the certificate validation process. ACM first checks for a Subject Alternative Name, and, if it finds one, ignores the common name (CN).
After successful completion of the RequestCertificate
action, there is a delay of several seconds before you can retrieve information about the new certificate.
Implementations§
source§impl RequestCertificateFluentBuilder
impl RequestCertificateFluentBuilder
sourcepub fn as_input(&self) -> &RequestCertificateInputBuilder
pub fn as_input(&self) -> &RequestCertificateInputBuilder
Access the RequestCertificate as a reference.
sourcepub async fn send(
self
) -> Result<RequestCertificateOutput, SdkError<RequestCertificateError, HttpResponse>>
pub async fn send( self ) -> Result<RequestCertificateOutput, SdkError<RequestCertificateError, HttpResponse>>
Sends the request and returns the response.
If an error occurs, an SdkError
will be returned with additional details that
can be matched against.
By default, any retryable failures will be retried twice. Retry behavior is configurable with the RetryConfig, which can be set when configuring the client.
sourcepub fn customize(
self
) -> CustomizableOperation<RequestCertificateOutput, RequestCertificateError, Self>
pub fn customize( self ) -> CustomizableOperation<RequestCertificateOutput, RequestCertificateError, Self>
Consumes this builder, creating a customizable operation that can be modified before being sent.
sourcepub fn domain_name(self, input: impl Into<String>) -> Self
pub fn domain_name(self, input: impl Into<String>) -> Self
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.
sourcepub fn set_domain_name(self, input: Option<String>) -> Self
pub fn set_domain_name(self, input: Option<String>) -> Self
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.
sourcepub fn get_domain_name(&self) -> &Option<String>
pub fn get_domain_name(&self) -> &Option<String>
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.
sourcepub fn validation_method(self, input: ValidationMethod) -> Self
pub fn validation_method(self, input: ValidationMethod) -> Self
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.
sourcepub fn set_validation_method(self, input: Option<ValidationMethod>) -> Self
pub fn set_validation_method(self, input: Option<ValidationMethod>) -> Self
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.
sourcepub fn get_validation_method(&self) -> &Option<ValidationMethod>
pub fn get_validation_method(&self) -> &Option<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.
sourcepub fn subject_alternative_names(self, input: impl Into<String>) -> Self
pub fn subject_alternative_names(self, input: impl Into<String>) -> Self
Appends an item to SubjectAlternativeNames
.
To override the contents of this collection use set_subject_alternative_names
.
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.
sourcepub fn set_subject_alternative_names(self, input: Option<Vec<String>>) -> Self
pub fn set_subject_alternative_names(self, input: Option<Vec<String>>) -> Self
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.
sourcepub fn get_subject_alternative_names(&self) -> &Option<Vec<String>>
pub fn get_subject_alternative_names(&self) -> &Option<Vec<String>>
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.
sourcepub fn idempotency_token(self, input: impl Into<String>) -> Self
pub fn idempotency_token(self, input: impl Into<String>) -> Self
Customer chosen string that can be used to distinguish between calls to RequestCertificate
. Idempotency tokens time out after one hour. Therefore, if you call RequestCertificate
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.
sourcepub fn set_idempotency_token(self, input: Option<String>) -> Self
pub fn set_idempotency_token(self, input: Option<String>) -> Self
Customer chosen string that can be used to distinguish between calls to RequestCertificate
. Idempotency tokens time out after one hour. Therefore, if you call RequestCertificate
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.
sourcepub fn get_idempotency_token(&self) -> &Option<String>
pub fn get_idempotency_token(&self) -> &Option<String>
Customer chosen string that can be used to distinguish between calls to RequestCertificate
. Idempotency tokens time out after one hour. Therefore, if you call RequestCertificate
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.
sourcepub fn domain_validation_options(self, input: DomainValidationOption) -> Self
pub fn domain_validation_options(self, input: DomainValidationOption) -> Self
Appends an item to DomainValidationOptions
.
To override the contents of this collection use set_domain_validation_options
.
The domain name that you want ACM to use to send you emails so that you can validate domain ownership.
sourcepub fn set_domain_validation_options(
self,
input: Option<Vec<DomainValidationOption>>
) -> Self
pub fn set_domain_validation_options( self, input: Option<Vec<DomainValidationOption>> ) -> Self
The domain name that you want ACM to use to send you emails so that you can validate domain ownership.
sourcepub fn get_domain_validation_options(
&self
) -> &Option<Vec<DomainValidationOption>>
pub fn get_domain_validation_options( &self ) -> &Option<Vec<DomainValidationOption>>
The domain name that you want ACM to use to send you emails so that you can validate domain ownership.
sourcepub fn options(self, input: CertificateOptions) -> Self
pub fn options(self, input: CertificateOptions) -> Self
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.
sourcepub fn set_options(self, input: Option<CertificateOptions>) -> Self
pub fn set_options(self, input: Option<CertificateOptions>) -> Self
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.
sourcepub fn get_options(&self) -> &Option<CertificateOptions>
pub fn get_options(&self) -> &Option<CertificateOptions>
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.
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
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
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
Appends an item to Tags
.
To override the contents of this collection use set_tags
.
One or more resource tags to associate with the certificate.
One or more resource tags to associate with the certificate.
One or more resource tags to associate with the certificate.
sourcepub fn key_algorithm(self, input: KeyAlgorithm) -> Self
pub fn key_algorithm(self, input: KeyAlgorithm) -> Self
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 AWS 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 AWS service where you plan to deploy your certificate.
Default: RSA_2048
sourcepub fn set_key_algorithm(self, input: Option<KeyAlgorithm>) -> Self
pub fn set_key_algorithm(self, input: Option<KeyAlgorithm>) -> Self
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 AWS 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 AWS service where you plan to deploy your certificate.
Default: RSA_2048
sourcepub fn get_key_algorithm(&self) -> &Option<KeyAlgorithm>
pub fn get_key_algorithm(&self) -> &Option<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 AWS 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 AWS service where you plan to deploy your certificate.
Default: RSA_2048
Trait Implementations§
source§impl Clone for RequestCertificateFluentBuilder
impl Clone for RequestCertificateFluentBuilder
source§fn clone(&self) -> RequestCertificateFluentBuilder
fn clone(&self) -> RequestCertificateFluentBuilder
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreAuto Trait Implementations§
impl Freeze for RequestCertificateFluentBuilder
impl !RefUnwindSafe for RequestCertificateFluentBuilder
impl Send for RequestCertificateFluentBuilder
impl Sync for RequestCertificateFluentBuilder
impl Unpin for RequestCertificateFluentBuilder
impl !UnwindSafe for RequestCertificateFluentBuilder
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more