Paws::ACMPCA::CreateCertificateAuthority - Arguments for method CreateCertificateAuthority on Paws::ACMPCA


This class represents the parameters used for calling the method CreateCertificateAuthority on the AWS Certificate Manager Private Certificate Authority service. Use the attributes of this class as arguments to method CreateCertificateAuthority.

You shouldn't make instances of this class. Each attribute should be used as a named argument in the call to CreateCertificateAuthority.


    my $acm-pca = Paws->service('ACMPCA');
    my $CreateCertificateAuthorityResponse =
      $acm -pca->CreateCertificateAuthority(
      CertificateAuthorityConfiguration => {
        KeyAlgorithm =>
          'RSA_2048',  # values: RSA_2048, RSA_4096, EC_prime256v1, EC_secp384r1
        SigningAlgorithm => 'SHA256WITHECDSA'
        Subject => {
          CommonName => 'MyString64',             # max: 64; OPTIONAL
          Country    => 'MyCountryCodeString',    # OPTIONAL
          DistinguishedNameQualifier =>
            'MyDistinguishedNameQualifierString',    # max: 64; OPTIONAL
          GenerationQualifier => 'MyString3',        # max: 3; OPTIONAL
          GivenName           => 'MyString16',       # max: 16; OPTIONAL
          Initials            => 'MyString5',        # max: 5; OPTIONAL
          Locality            => 'MyString128',      # max: 128; OPTIONAL
          Organization        => 'MyString64',       # max: 64; OPTIONAL
          OrganizationalUnit  => 'MyString64',       # max: 64; OPTIONAL
          Pseudonym           => 'MyString128',      # max: 128; OPTIONAL
          SerialNumber        => 'MyString64',       # max: 64; OPTIONAL
          State               => 'MyString128',      # max: 128; OPTIONAL
          Surname             => 'MyString40',       # max: 40; OPTIONAL
          Title               => 'MyString64',       # max: 64; OPTIONAL

      CertificateAuthorityType => 'ROOT',
      IdempotencyToken         => 'MyIdempotencyToken',    # OPTIONAL
      RevocationConfiguration  => {
        CrlConfiguration => {
          Enabled          => 1,
          CustomCname      => 'MyString253',       # max: 253; OPTIONAL
          ExpirationInDays => 1,                   # min: 1, max: 5000; OPTIONAL
          S3BucketName     => 'MyString3To255',    # min: 3, max: 255; OPTIONAL
        },    # OPTIONAL
      },    # OPTIONAL
      Tags => [
          Key   => 'MyTagKey',      # min: 1, max: 128
          Value => 'MyTagValue',    # max: 256; OPTIONAL
      ],                            # OPTIONAL

    # Results:
    my $CertificateAuthorityArn =

    # Returns a L<Paws::ACMPCA::CreateCertificateAuthorityResponse> object.

Values for attributes that are native types (Int, String, Float, etc) can passed as-is (scalar values). Values for complex Types (objects) can be passed as a HashRef. The keys and values of the hashref will be used to instance the underlying object. For the AWS API documentation, see


REQUIRED CertificateAuthorityConfiguration => Paws::ACMPCA::CertificateAuthorityConfiguration

Name and bit size of the private key algorithm, the name of the signing algorithm, and X.500 certificate subject information.

REQUIRED CertificateAuthorityType => Str

The type of the certificate authority.

Valid values are: "ROOT", "SUBORDINATE"

IdempotencyToken => Str

Alphanumeric string that can be used to distinguish between calls to CreateCertificateAuthority. Idempotency tokens time out after five minutes. Therefore, if you call CreateCertificateAuthority multiple times with the same idempotency token within a five minute period, ACM Private CA recognizes that you are requesting only one certificate. As a result, ACM Private CA issues only one. If you change the idempotency token for each call, however, ACM Private CA recognizes that you are requesting multiple certificates.

RevocationConfiguration => Paws::ACMPCA::RevocationConfiguration

Contains a Boolean value that you can use to enable a certification revocation list (CRL) for the CA, the name of the S3 bucket to which ACM Private CA will write the CRL, and an optional CNAME alias that you can use to hide the name of your bucket in the CRL Distribution Points extension of your CA certificate. For more information, see the CrlConfiguration structure.

Tags => ArrayRef[Paws::ACMPCA::Tag]

Key-value pairs that will be attached to the new private CA. You can associate up to 50 tags with a private CA. For information using tags with

IAM to manage permissions, see Controlling Access Using IAM Tags (


This class forms part of Paws, documenting arguments for method CreateCertificateAuthority in Paws::ACMPCA


The source code is located here:

Please report bugs to: