77#include < aws/acm-pca/ACMPCA_EXPORTS.h>
88#include < aws/core/utils/memory/stl/AWSString.h>
99#include < aws/acm-pca/model/S3ObjectAcl.h>
10+ #include < aws/acm-pca/model/CrlDistributionPointExtensionConfiguration.h>
1011#include < utility>
1112
1213namespace Aws
@@ -31,9 +32,11 @@ namespace Model
3132 * the <b>Enabled</b> parameter to <code>true</code>. Your private CA writes CRLs
3233 * to an S3 bucket that you specify in the <b>S3BucketName</b> parameter. You can
3334 * hide the name of your bucket by specifying a value for the <b>CustomCname</b>
34- * parameter. Your private CA copies the CNAME or the S3 bucket name to the <b>CRL
35- * Distribution Points</b> extension of each certificate it issues. Your S3 bucket
36- * policy must give write permission to Amazon Web Services Private CA. </p>
35+ * parameter. Your private CA by default copies the CNAME or the S3 bucket name to
36+ * the <b>CRL Distribution Points</b> extension of each certificate it issues. If
37+ * you want to configure this default behavior to be something different, you can
38+ * set the <b>CrlDistributionPointExtensionConfiguration</b> parameter. Your S3
39+ * bucket policy must give write permission to Amazon Web Services Private CA. </p>
3740 * <p>Amazon Web Services Private CA assets that are stored in Amazon S3 can be
3841 * protected with encryption. For more information, see <a
3942 * href="https://docs.aws.amazon.com/privateca/latest/userguide/PcaCreateCa.html#crl-encryption">Encrypting
@@ -476,6 +479,55 @@ namespace Model
476479 */
477480 inline CrlConfiguration& WithS3ObjectAcl (S3ObjectAcl&& value) { SetS3ObjectAcl (std::move (value)); return *this ;}
478481
482+
483+ /* *
484+ * <p>Configures the behavior of the CRL Distribution Point extension for
485+ * certificates issued by your certificate authority. If this field is not
486+ * provided, then the CRl Distribution Point Extension will be present and contain
487+ * the default CRL URL.</p>
488+ */
489+ inline const CrlDistributionPointExtensionConfiguration& GetCrlDistributionPointExtensionConfiguration () const { return m_crlDistributionPointExtensionConfiguration; }
490+
491+ /* *
492+ * <p>Configures the behavior of the CRL Distribution Point extension for
493+ * certificates issued by your certificate authority. If this field is not
494+ * provided, then the CRl Distribution Point Extension will be present and contain
495+ * the default CRL URL.</p>
496+ */
497+ inline bool CrlDistributionPointExtensionConfigurationHasBeenSet () const { return m_crlDistributionPointExtensionConfigurationHasBeenSet; }
498+
499+ /* *
500+ * <p>Configures the behavior of the CRL Distribution Point extension for
501+ * certificates issued by your certificate authority. If this field is not
502+ * provided, then the CRl Distribution Point Extension will be present and contain
503+ * the default CRL URL.</p>
504+ */
505+ inline void SetCrlDistributionPointExtensionConfiguration (const CrlDistributionPointExtensionConfiguration& value) { m_crlDistributionPointExtensionConfigurationHasBeenSet = true ; m_crlDistributionPointExtensionConfiguration = value; }
506+
507+ /* *
508+ * <p>Configures the behavior of the CRL Distribution Point extension for
509+ * certificates issued by your certificate authority. If this field is not
510+ * provided, then the CRl Distribution Point Extension will be present and contain
511+ * the default CRL URL.</p>
512+ */
513+ inline void SetCrlDistributionPointExtensionConfiguration (CrlDistributionPointExtensionConfiguration&& value) { m_crlDistributionPointExtensionConfigurationHasBeenSet = true ; m_crlDistributionPointExtensionConfiguration = std::move (value); }
514+
515+ /* *
516+ * <p>Configures the behavior of the CRL Distribution Point extension for
517+ * certificates issued by your certificate authority. If this field is not
518+ * provided, then the CRl Distribution Point Extension will be present and contain
519+ * the default CRL URL.</p>
520+ */
521+ inline CrlConfiguration& WithCrlDistributionPointExtensionConfiguration (const CrlDistributionPointExtensionConfiguration& value) { SetCrlDistributionPointExtensionConfiguration (value); return *this ;}
522+
523+ /* *
524+ * <p>Configures the behavior of the CRL Distribution Point extension for
525+ * certificates issued by your certificate authority. If this field is not
526+ * provided, then the CRl Distribution Point Extension will be present and contain
527+ * the default CRL URL.</p>
528+ */
529+ inline CrlConfiguration& WithCrlDistributionPointExtensionConfiguration (CrlDistributionPointExtensionConfiguration&& value) { SetCrlDistributionPointExtensionConfiguration (std::move (value)); return *this ;}
530+
479531 private:
480532
481533 bool m_enabled;
@@ -492,6 +544,9 @@ namespace Model
492544
493545 S3ObjectAcl m_s3ObjectAcl;
494546 bool m_s3ObjectAclHasBeenSet = false ;
547+
548+ CrlDistributionPointExtensionConfiguration m_crlDistributionPointExtensionConfiguration;
549+ bool m_crlDistributionPointExtensionConfigurationHasBeenSet = false ;
495550 };
496551
497552} // namespace Model
0 commit comments