
com.pulumi.aws.acmpca.outputs.CertificateAuthorityRevocationConfigurationCrlConfiguration Maven / Gradle / Ivy
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package com.pulumi.aws.acmpca.outputs;
import com.pulumi.core.annotations.CustomType;
import java.lang.Boolean;
import java.lang.Integer;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
@CustomType
public final class CertificateAuthorityRevocationConfigurationCrlConfiguration {
/**
* @return Name inserted into the certificate CRL Distribution Points extension that enables the use of an alias for the CRL distribution point. Use this value if you don't want the name of your S3 bucket to be public. Must be less than or equal to 253 characters in length.
*
*/
private @Nullable String customCname;
/**
* @return Boolean value that specifies whether certificate revocation lists (CRLs) are enabled. Defaults to `false`.
*
*/
private @Nullable Boolean enabled;
/**
* @return Number of days until a certificate expires. Must be between 1 and 5000.
*
*/
private @Nullable Integer expirationInDays;
/**
* @return Name of the S3 bucket that contains the CRL. If you do not provide a value for the `custom_cname` argument, the name of your S3 bucket is placed into the CRL Distribution Points extension of the issued certificate. You must specify a bucket policy that allows ACM PCA to write the CRL to your bucket. Must be between 3 and 255 characters in length.
*
*/
private @Nullable String s3BucketName;
/**
* @return Determines whether the CRL will be publicly readable or privately held in the CRL Amazon S3 bucket. Defaults to `PUBLIC_READ`.
*
*/
private @Nullable String s3ObjectAcl;
private CertificateAuthorityRevocationConfigurationCrlConfiguration() {}
/**
* @return Name inserted into the certificate CRL Distribution Points extension that enables the use of an alias for the CRL distribution point. Use this value if you don't want the name of your S3 bucket to be public. Must be less than or equal to 253 characters in length.
*
*/
public Optional customCname() {
return Optional.ofNullable(this.customCname);
}
/**
* @return Boolean value that specifies whether certificate revocation lists (CRLs) are enabled. Defaults to `false`.
*
*/
public Optional enabled() {
return Optional.ofNullable(this.enabled);
}
/**
* @return Number of days until a certificate expires. Must be between 1 and 5000.
*
*/
public Optional expirationInDays() {
return Optional.ofNullable(this.expirationInDays);
}
/**
* @return Name of the S3 bucket that contains the CRL. If you do not provide a value for the `custom_cname` argument, the name of your S3 bucket is placed into the CRL Distribution Points extension of the issued certificate. You must specify a bucket policy that allows ACM PCA to write the CRL to your bucket. Must be between 3 and 255 characters in length.
*
*/
public Optional s3BucketName() {
return Optional.ofNullable(this.s3BucketName);
}
/**
* @return Determines whether the CRL will be publicly readable or privately held in the CRL Amazon S3 bucket. Defaults to `PUBLIC_READ`.
*
*/
public Optional s3ObjectAcl() {
return Optional.ofNullable(this.s3ObjectAcl);
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(CertificateAuthorityRevocationConfigurationCrlConfiguration defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private @Nullable String customCname;
private @Nullable Boolean enabled;
private @Nullable Integer expirationInDays;
private @Nullable String s3BucketName;
private @Nullable String s3ObjectAcl;
public Builder() {}
public Builder(CertificateAuthorityRevocationConfigurationCrlConfiguration defaults) {
Objects.requireNonNull(defaults);
this.customCname = defaults.customCname;
this.enabled = defaults.enabled;
this.expirationInDays = defaults.expirationInDays;
this.s3BucketName = defaults.s3BucketName;
this.s3ObjectAcl = defaults.s3ObjectAcl;
}
@CustomType.Setter
public Builder customCname(@Nullable String customCname) {
this.customCname = customCname;
return this;
}
@CustomType.Setter
public Builder enabled(@Nullable Boolean enabled) {
this.enabled = enabled;
return this;
}
@CustomType.Setter
public Builder expirationInDays(@Nullable Integer expirationInDays) {
this.expirationInDays = expirationInDays;
return this;
}
@CustomType.Setter
public Builder s3BucketName(@Nullable String s3BucketName) {
this.s3BucketName = s3BucketName;
return this;
}
@CustomType.Setter
public Builder s3ObjectAcl(@Nullable String s3ObjectAcl) {
this.s3ObjectAcl = s3ObjectAcl;
return this;
}
public CertificateAuthorityRevocationConfigurationCrlConfiguration build() {
final var _resultValue = new CertificateAuthorityRevocationConfigurationCrlConfiguration();
_resultValue.customCname = customCname;
_resultValue.enabled = enabled;
_resultValue.expirationInDays = expirationInDays;
_resultValue.s3BucketName = s3BucketName;
_resultValue.s3ObjectAcl = s3ObjectAcl;
return _resultValue;
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy