aws-sdk-acmpca 1.30.0 → 1.31.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 00c2347bbc506b283aa9fd8cee61a8df05ca898e00bcee9b738abb85e77a9100
4
- data.tar.gz: ad05977d7cbba22aed287e314cc154e00f5c4af983fd54df56ea66291cc5dbb3
3
+ metadata.gz: e9248de24e8f0650decb902183ab1be075185fcbd936d73fa01d60288195baab
4
+ data.tar.gz: c97ad717942496ed6dd1b9210872f51ee89c5db7795612d43215ab4306ddd8a5
5
5
  SHA512:
6
- metadata.gz: 11ad57150ae7e8c40434580a1a9aa00e8b9830288468dbab28bb455a1a8fa979cf99199857d62a19b3ee791502baf18bea28317fca2af4996c283b849944e312
7
- data.tar.gz: 7f0465156ddef7a3fd19e3270f5bf9476d083c1a150c1982021f40919a101b1783302ad4897d2db24c99f6fa709ff583cb1cbe4ad8c18936d24e1feb311dc178
6
+ metadata.gz: bb1c7a2154501ecdb1a26f5402da4239c8667255169d172f42a7a7f0f215cff3d08d116a39a0fab7c7efe35b1c57321ecb598d03fc163f43541d6d87e0e44114
7
+ data.tar.gz: b21951246a975ef7d3a62d4e92ad64775760f60c4297d12382c4510faac8b8c422ccd0ed4ae21d632e1f5c5e3dd3f04fd9210dc395022778c295246d57236ea2
@@ -49,6 +49,6 @@ require_relative 'aws-sdk-acmpca/customizations'
49
49
  # @!group service
50
50
  module Aws::ACMPCA
51
51
 
52
- GEM_VERSION = '1.30.0'
52
+ GEM_VERSION = '1.31.0'
53
53
 
54
54
  end
@@ -428,6 +428,58 @@ module Aws::ACMPCA
428
428
  # pseudonym: "String128",
429
429
  # generation_qualifier: "String3",
430
430
  # },
431
+ # csr_extensions: {
432
+ # key_usage: {
433
+ # digital_signature: false,
434
+ # non_repudiation: false,
435
+ # key_encipherment: false,
436
+ # data_encipherment: false,
437
+ # key_agreement: false,
438
+ # key_cert_sign: false,
439
+ # crl_sign: false,
440
+ # encipher_only: false,
441
+ # decipher_only: false,
442
+ # },
443
+ # subject_information_access: [
444
+ # {
445
+ # access_method: { # required
446
+ # custom_object_identifier: "CustomObjectIdentifier",
447
+ # access_method_type: "CA_REPOSITORY", # accepts CA_REPOSITORY, RESOURCE_PKI_MANIFEST, RESOURCE_PKI_NOTIFY
448
+ # },
449
+ # access_location: { # required
450
+ # other_name: {
451
+ # type_id: "CustomObjectIdentifier", # required
452
+ # value: "String256", # required
453
+ # },
454
+ # rfc_822_name: "String256",
455
+ # dns_name: "String253",
456
+ # directory_name: {
457
+ # country: "CountryCodeString",
458
+ # organization: "String64",
459
+ # organizational_unit: "String64",
460
+ # distinguished_name_qualifier: "ASN1PrintableString64",
461
+ # state: "String128",
462
+ # common_name: "String64",
463
+ # serial_number: "ASN1PrintableString64",
464
+ # locality: "String128",
465
+ # title: "String64",
466
+ # surname: "String40",
467
+ # given_name: "String16",
468
+ # initials: "String5",
469
+ # pseudonym: "String128",
470
+ # generation_qualifier: "String3",
471
+ # },
472
+ # edi_party_name: {
473
+ # party_name: "String256", # required
474
+ # name_assigner: "String256",
475
+ # },
476
+ # uniform_resource_identifier: "String253",
477
+ # ip_address: "String39",
478
+ # registered_id: "CustomObjectIdentifier",
479
+ # },
480
+ # },
481
+ # ],
482
+ # },
431
483
  # },
432
484
  # revocation_configuration: {
433
485
  # crl_configuration: {
@@ -547,12 +599,13 @@ module Aws::ACMPCA
547
599
  # renewals. Instead, the ACM certificate owner must set up a
548
600
  # resource-based policy to enable cross-account issuance and renewals.
549
601
  # For more information, see [Using a Resource Based Policy with ACM
550
- # Private CA](acm-pca/latest/userguide/pca-rbp.html).
602
+ # Private CA][3].
551
603
  #
552
604
  #
553
605
  #
554
606
  # [1]: https://docs.aws.amazon.com/acm-pca/latest/APIReference/API_ListPermissions.html
555
607
  # [2]: https://docs.aws.amazon.com/acm-pca/latest/APIReference/API_DeletePermission.html
608
+ # [3]: https://docs.aws.amazon.com/acm-pca/latest/userguide/pca-rbp.html
556
609
  #
557
610
  # @option params [required, String] :certificate_authority_arn
558
611
  # The Amazon Resource Name (ARN) of the CA that grants the permissions.
@@ -695,12 +748,13 @@ module Aws::ACMPCA
695
748
  # renewals. Instead, the ACM certificate owner must set up a
696
749
  # resource-based policy to enable cross-account issuance and renewals.
697
750
  # For more information, see [Using a Resource Based Policy with ACM
698
- # Private CA](acm-pca/latest/userguide/pca-rbp.html).
751
+ # Private CA][3].
699
752
  #
700
753
  #
701
754
  #
702
755
  # [1]: https://docs.aws.amazon.com/acm-pca/latest/APIReference/API_CreatePermission.html
703
756
  # [2]: https://docs.aws.amazon.com/acm-pca/latest/APIReference/API_ListPermissions.html
757
+ # [3]: https://docs.aws.amazon.com/acm-pca/latest/userguide/pca-rbp.html
704
758
  #
705
759
  # @option params [required, String] :certificate_authority_arn
706
760
  # The Amazon Resource Number (ARN) of the private CA that issued the
@@ -760,8 +814,7 @@ module Aws::ACMPCA
760
814
  # * A policy grants access on a private CA to an AWS customer account,
761
815
  # to AWS Organizations, or to an AWS Organizations unit. Policies are
762
816
  # under the control of a CA administrator. For more information, see
763
- # [Using a Resource Based Policy with ACM Private
764
- # CA](acm-pca/latest/userguide/pca-rbp.html).
817
+ # [Using a Resource Based Policy with ACM Private CA][3].
765
818
  #
766
819
  # * A policy permits a user of AWS Certificate Manager (ACM) to issue
767
820
  # ACM certificates signed by a CA in another account.
@@ -770,18 +823,19 @@ module Aws::ACMPCA
770
823
  # user must configure a Service Linked Role (SLR). The SLR allows the
771
824
  # ACM service to assume the identity of the user, subject to
772
825
  # confirmation against the ACM Private CA policy. For more
773
- # information, see [Using a Service Linked Role with ACM][3].
826
+ # information, see [Using a Service Linked Role with ACM][4].
774
827
  #
775
828
  # * Updates made in AWS Resource Manager (RAM) are reflected in
776
- # policies. For more information, see [Using AWS Resource Access
777
- # Manager (RAM) with ACM Private
778
- # CA](acm-pca/latest/userguide/pca-ram.html).
829
+ # policies. For more information, see [Attach a Policy for
830
+ # Cross-Account Access][5].
779
831
  #
780
832
  #
781
833
  #
782
834
  # [1]: https://docs.aws.amazon.com/acm-pca/latest/APIReference/API_GetPolicy.html
783
835
  # [2]: https://docs.aws.amazon.com/acm-pca/latest/APIReference/API_PutPolicy.html
784
- # [3]: https://docs.aws.amazon.com/acm/latest/userguide/acm-slr.html
836
+ # [3]: https://docs.aws.amazon.com/acm-pca/latest/userguide/pca-rbp.html
837
+ # [4]: https://docs.aws.amazon.com/acm/latest/userguide/acm-slr.html
838
+ # [5]: https://docs.aws.amazon.com/acm-pca/latest/userguide/pca-ram.html
785
839
  #
786
840
  # @option params [required, String] :resource_arn
787
841
  # The Amazon Resource Number (ARN) of the private CA that will have its
@@ -887,6 +941,41 @@ module Aws::ACMPCA
887
941
  # resp.certificate_authority.certificate_authority_configuration.subject.initials #=> String
888
942
  # resp.certificate_authority.certificate_authority_configuration.subject.pseudonym #=> String
889
943
  # resp.certificate_authority.certificate_authority_configuration.subject.generation_qualifier #=> String
944
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.key_usage.digital_signature #=> Boolean
945
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.key_usage.non_repudiation #=> Boolean
946
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.key_usage.key_encipherment #=> Boolean
947
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.key_usage.data_encipherment #=> Boolean
948
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.key_usage.key_agreement #=> Boolean
949
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.key_usage.key_cert_sign #=> Boolean
950
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.key_usage.crl_sign #=> Boolean
951
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.key_usage.encipher_only #=> Boolean
952
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.key_usage.decipher_only #=> Boolean
953
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.subject_information_access #=> Array
954
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.subject_information_access[0].access_method.custom_object_identifier #=> String
955
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.subject_information_access[0].access_method.access_method_type #=> String, one of "CA_REPOSITORY", "RESOURCE_PKI_MANIFEST", "RESOURCE_PKI_NOTIFY"
956
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.other_name.type_id #=> String
957
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.other_name.value #=> String
958
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.rfc_822_name #=> String
959
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.dns_name #=> String
960
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.directory_name.country #=> String
961
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.directory_name.organization #=> String
962
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.directory_name.organizational_unit #=> String
963
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.directory_name.distinguished_name_qualifier #=> String
964
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.directory_name.state #=> String
965
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.directory_name.common_name #=> String
966
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.directory_name.serial_number #=> String
967
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.directory_name.locality #=> String
968
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.directory_name.title #=> String
969
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.directory_name.surname #=> String
970
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.directory_name.given_name #=> String
971
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.directory_name.initials #=> String
972
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.directory_name.pseudonym #=> String
973
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.directory_name.generation_qualifier #=> String
974
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.edi_party_name.party_name #=> String
975
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.edi_party_name.name_assigner #=> String
976
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.uniform_resource_identifier #=> String
977
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.ip_address #=> String
978
+ # resp.certificate_authority.certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.registered_id #=> String
890
979
  # resp.certificate_authority.revocation_configuration.crl_configuration.enabled #=> Boolean
891
980
  # resp.certificate_authority.revocation_configuration.crl_configuration.expiration_in_days #=> Integer
892
981
  # resp.certificate_authority.revocation_configuration.crl_configuration.custom_cname #=> String
@@ -1123,16 +1212,14 @@ module Aws::ACMPCA
1123
1212
  # action returns a `ResourceNotFoundException`.
1124
1213
  #
1125
1214
  # The policy can be attached or updated with [PutPolicy][1] and removed
1126
- # with
1127
- # [DeletePolicy](acm-pca/latest/APIReference/API_DeletePolicy.html).
1215
+ # with [DeletePolicy][2].
1128
1216
  #
1129
1217
  # **About Policies**
1130
1218
  #
1131
1219
  # * A policy grants access on a private CA to an AWS customer account,
1132
1220
  # to AWS Organizations, or to an AWS Organizations unit. Policies are
1133
1221
  # under the control of a CA administrator. For more information, see
1134
- # [Using a Resource Based Policy with ACM Private
1135
- # CA](acm-pca/latest/userguide/pca-rbp.html).
1222
+ # [Using a Resource Based Policy with ACM Private CA][3].
1136
1223
  #
1137
1224
  # * A policy permits a user of AWS Certificate Manager (ACM) to issue
1138
1225
  # ACM certificates signed by a CA in another account.
@@ -1141,17 +1228,19 @@ module Aws::ACMPCA
1141
1228
  # user must configure a Service Linked Role (SLR). The SLR allows the
1142
1229
  # ACM service to assume the identity of the user, subject to
1143
1230
  # confirmation against the ACM Private CA policy. For more
1144
- # information, see [Using a Service Linked Role with ACM][2].
1231
+ # information, see [Using a Service Linked Role with ACM][4].
1145
1232
  #
1146
1233
  # * Updates made in AWS Resource Manager (RAM) are reflected in
1147
- # policies. For more information, see [Using AWS Resource Access
1148
- # Manager (RAM) with ACM Private
1149
- # CA](acm-pca/latest/userguide/pca-ram.html).
1234
+ # policies. For more information, see [Attach a Policy for
1235
+ # Cross-Account Access][5].
1150
1236
  #
1151
1237
  #
1152
1238
  #
1153
1239
  # [1]: https://docs.aws.amazon.com/acm-pca/latest/APIReference/API_PutPolicy.html
1154
- # [2]: https://docs.aws.amazon.com/acm/latest/userguide/acm-slr.html
1240
+ # [2]: https://docs.aws.amazon.com/acm-pca/latest/APIReference/API_DeletePolicy.html
1241
+ # [3]: https://docs.aws.amazon.com/acm-pca/latest/userguide/pca-rbp.html
1242
+ # [4]: https://docs.aws.amazon.com/acm/latest/userguide/acm-slr.html
1243
+ # [5]: https://docs.aws.amazon.com/acm-pca/latest/userguide/pca-ram.html
1155
1244
  #
1156
1245
  # @option params [required, String] :resource_arn
1157
1246
  # The Amazon Resource Number (ARN) of the private CA that will have its
@@ -1199,22 +1288,31 @@ module Aws::ACMPCA
1199
1288
  # 4. Create a certificate chain and copy the signed certificate and the
1200
1289
  # certificate chain to your working directory.
1201
1290
  #
1202
- # The following requirements apply when you import a CA certificate.
1291
+ # ACM Private CA supports three scenarios for installing a CA
1292
+ # certificate:
1293
+ #
1294
+ # * Installing a certificate for a root CA hosted by ACM Private CA.
1203
1295
  #
1204
- # * You cannot import a non-self-signed certificate for use as a root
1205
- # CA.
1296
+ # * Installing a subordinate CA certificate whose parent authority is
1297
+ # hosted by ACM Private CA.
1206
1298
  #
1207
- # * You cannot import a self-signed certificate for use as a subordinate
1208
- # CA.
1299
+ # * Installing a subordinate CA certificate whose parent authority is
1300
+ # externally hosted.
1301
+ #
1302
+ # The following addtitional requirements apply when you import a CA
1303
+ # certificate.
1304
+ #
1305
+ # * Only a self-signed certificate can be imported as a root CA.
1306
+ #
1307
+ # * A self-signed certificate cannot be imported as a subordinate CA.
1209
1308
  #
1210
1309
  # * Your certificate chain must not include the private CA certificate
1211
1310
  # that you are importing.
1212
1311
  #
1213
- # * Your ACM Private CA-hosted or on-premises CA certificate must be the
1214
- # last certificate in your chain. The subordinate certificate, if any,
1215
- # that your root CA signed must be next to last. The subordinate
1216
- # certificate signed by the preceding subordinate CA must come next,
1217
- # and so on until your chain is built.
1312
+ # * Your root CA must be the last certificate in your chain. The
1313
+ # subordinate certificate, if any, that your root CA signed must be
1314
+ # next to last. The subordinate certificate signed by the preceding
1315
+ # subordinate CA must come next, and so on until your chain is built.
1218
1316
  #
1219
1317
  # * The chain must be PEM-encoded.
1220
1318
  #
@@ -1538,6 +1636,41 @@ module Aws::ACMPCA
1538
1636
  # resp.certificate_authorities[0].certificate_authority_configuration.subject.initials #=> String
1539
1637
  # resp.certificate_authorities[0].certificate_authority_configuration.subject.pseudonym #=> String
1540
1638
  # resp.certificate_authorities[0].certificate_authority_configuration.subject.generation_qualifier #=> String
1639
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.key_usage.digital_signature #=> Boolean
1640
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.key_usage.non_repudiation #=> Boolean
1641
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.key_usage.key_encipherment #=> Boolean
1642
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.key_usage.data_encipherment #=> Boolean
1643
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.key_usage.key_agreement #=> Boolean
1644
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.key_usage.key_cert_sign #=> Boolean
1645
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.key_usage.crl_sign #=> Boolean
1646
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.key_usage.encipher_only #=> Boolean
1647
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.key_usage.decipher_only #=> Boolean
1648
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.subject_information_access #=> Array
1649
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.subject_information_access[0].access_method.custom_object_identifier #=> String
1650
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.subject_information_access[0].access_method.access_method_type #=> String, one of "CA_REPOSITORY", "RESOURCE_PKI_MANIFEST", "RESOURCE_PKI_NOTIFY"
1651
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.other_name.type_id #=> String
1652
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.other_name.value #=> String
1653
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.rfc_822_name #=> String
1654
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.dns_name #=> String
1655
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.directory_name.country #=> String
1656
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.directory_name.organization #=> String
1657
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.directory_name.organizational_unit #=> String
1658
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.directory_name.distinguished_name_qualifier #=> String
1659
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.directory_name.state #=> String
1660
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.directory_name.common_name #=> String
1661
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.directory_name.serial_number #=> String
1662
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.directory_name.locality #=> String
1663
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.directory_name.title #=> String
1664
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.directory_name.surname #=> String
1665
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.directory_name.given_name #=> String
1666
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.directory_name.initials #=> String
1667
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.directory_name.pseudonym #=> String
1668
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.directory_name.generation_qualifier #=> String
1669
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.edi_party_name.party_name #=> String
1670
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.edi_party_name.name_assigner #=> String
1671
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.uniform_resource_identifier #=> String
1672
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.ip_address #=> String
1673
+ # resp.certificate_authorities[0].certificate_authority_configuration.csr_extensions.subject_information_access[0].access_location.registered_id #=> String
1541
1674
  # resp.certificate_authorities[0].revocation_configuration.crl_configuration.enabled #=> Boolean
1542
1675
  # resp.certificate_authorities[0].revocation_configuration.crl_configuration.expiration_in_days #=> Integer
1543
1676
  # resp.certificate_authorities[0].revocation_configuration.crl_configuration.custom_cname #=> String
@@ -1578,12 +1711,13 @@ module Aws::ACMPCA
1578
1711
  # renewals. Instead, the ACM certificate owner must set up a
1579
1712
  # resource-based policy to enable cross-account issuance and renewals.
1580
1713
  # For more information, see [Using a Resource Based Policy with ACM
1581
- # Private CA](acm-pca/latest/userguide/pca-rbp.html).
1714
+ # Private CA][3].
1582
1715
  #
1583
1716
  #
1584
1717
  #
1585
1718
  # [1]: https://docs.aws.amazon.com/acm-pca/latest/APIReference/API_CreatePermission.html
1586
1719
  # [2]: https://docs.aws.amazon.com/acm-pca/latest/APIReference/API_DeletePermission.html
1720
+ # [3]: https://docs.aws.amazon.com/acm-pca/latest/userguide/pca-rbp.html
1587
1721
  #
1588
1722
  # @option params [required, String] :certificate_authority_arn
1589
1723
  # The Amazon Resource Number (ARN) of the private CA to inspect. You can
@@ -1713,8 +1847,9 @@ module Aws::ACMPCA
1713
1847
 
1714
1848
  # Attaches a resource-based policy to a private CA.
1715
1849
  #
1716
- # A policy can also be applied by [sharing][1] a private CA through AWS
1717
- # Resource Access Manager (RAM).
1850
+ # A policy can also be applied by sharing a private CA through AWS
1851
+ # Resource Access Manager (RAM). For more information, see [Attach a
1852
+ # Policy for Cross-Account Access][1].
1718
1853
  #
1719
1854
  # The policy can be displayed with [GetPolicy][2] and removed with
1720
1855
  # [DeletePolicy][3].
@@ -1724,8 +1859,7 @@ module Aws::ACMPCA
1724
1859
  # * A policy grants access on a private CA to an AWS customer account,
1725
1860
  # to AWS Organizations, or to an AWS Organizations unit. Policies are
1726
1861
  # under the control of a CA administrator. For more information, see
1727
- # [Using a Resource Based Policy with ACM Private
1728
- # CA](acm-pca/latest/userguide/pca-rbp.html).
1862
+ # [Using a Resource Based Policy with ACM Private CA][4].
1729
1863
  #
1730
1864
  # * A policy permits a user of AWS Certificate Manager (ACM) to issue
1731
1865
  # ACM certificates signed by a CA in another account.
@@ -1734,19 +1868,19 @@ module Aws::ACMPCA
1734
1868
  # user must configure a Service Linked Role (SLR). The SLR allows the
1735
1869
  # ACM service to assume the identity of the user, subject to
1736
1870
  # confirmation against the ACM Private CA policy. For more
1737
- # information, see [Using a Service Linked Role with ACM][4].
1871
+ # information, see [Using a Service Linked Role with ACM][5].
1738
1872
  #
1739
1873
  # * Updates made in AWS Resource Manager (RAM) are reflected in
1740
- # policies. For more information, see [Using AWS Resource Access
1741
- # Manager (RAM) with ACM Private
1742
- # CA](acm-pca/latest/userguide/pca-ram.html).
1874
+ # policies. For more information, see [Attach a Policy for
1875
+ # Cross-Account Access][1].
1743
1876
  #
1744
1877
  #
1745
1878
  #
1746
1879
  # [1]: https://docs.aws.amazon.com/acm-pca/latest/userguide/pca-ram.html
1747
1880
  # [2]: https://docs.aws.amazon.com/acm-pca/latest/APIReference/API_GetPolicy.html
1748
1881
  # [3]: https://docs.aws.amazon.com/acm-pca/latest/APIReference/API_DeletePolicy.html
1749
- # [4]: https://docs.aws.amazon.com/acm/latest/userguide/acm-slr.html
1882
+ # [4]: https://docs.aws.amazon.com/acm-pca/latest/userguide/pca-rbp.html
1883
+ # [5]: https://docs.aws.amazon.com/acm/latest/userguide/acm-slr.html
1750
1884
  #
1751
1885
  # @option params [required, String] :resource_arn
1752
1886
  # The Amazon Resource Number (ARN) of the private CA to associate with
@@ -2095,7 +2229,7 @@ module Aws::ACMPCA
2095
2229
  params: params,
2096
2230
  config: config)
2097
2231
  context[:gem_name] = 'aws-sdk-acmpca'
2098
- context[:gem_version] = '1.30.0'
2232
+ context[:gem_version] = '1.31.0'
2099
2233
  Seahorse::Client::Request.new(handlers, context)
2100
2234
  end
2101
2235
 
@@ -16,6 +16,10 @@ module Aws::ACMPCA
16
16
  ASN1PrintableString64 = Shapes::StringShape.new(name: 'ASN1PrintableString64')
17
17
  ASN1Subject = Shapes::StructureShape.new(name: 'ASN1Subject')
18
18
  AWSPolicy = Shapes::StringShape.new(name: 'AWSPolicy')
19
+ AccessDescription = Shapes::StructureShape.new(name: 'AccessDescription')
20
+ AccessDescriptionList = Shapes::ListShape.new(name: 'AccessDescriptionList')
21
+ AccessMethod = Shapes::StructureShape.new(name: 'AccessMethod')
22
+ AccessMethodType = Shapes::StringShape.new(name: 'AccessMethodType')
19
23
  AccountId = Shapes::StringShape.new(name: 'AccountId')
20
24
  ActionList = Shapes::ListShape.new(name: 'ActionList')
21
25
  ActionType = Shapes::StringShape.new(name: 'ActionType')
@@ -44,6 +48,8 @@ module Aws::ACMPCA
44
48
  CrlConfiguration = Shapes::StructureShape.new(name: 'CrlConfiguration')
45
49
  CsrBlob = Shapes::BlobShape.new(name: 'CsrBlob')
46
50
  CsrBody = Shapes::StringShape.new(name: 'CsrBody')
51
+ CsrExtensions = Shapes::StructureShape.new(name: 'CsrExtensions')
52
+ CustomObjectIdentifier = Shapes::StringShape.new(name: 'CustomObjectIdentifier')
47
53
  DeleteCertificateAuthorityRequest = Shapes::StructureShape.new(name: 'DeleteCertificateAuthorityRequest')
48
54
  DeletePermissionRequest = Shapes::StructureShape.new(name: 'DeletePermissionRequest')
49
55
  DeletePolicyRequest = Shapes::StructureShape.new(name: 'DeletePolicyRequest')
@@ -51,7 +57,9 @@ module Aws::ACMPCA
51
57
  DescribeCertificateAuthorityAuditReportResponse = Shapes::StructureShape.new(name: 'DescribeCertificateAuthorityAuditReportResponse')
52
58
  DescribeCertificateAuthorityRequest = Shapes::StructureShape.new(name: 'DescribeCertificateAuthorityRequest')
53
59
  DescribeCertificateAuthorityResponse = Shapes::StructureShape.new(name: 'DescribeCertificateAuthorityResponse')
60
+ EdiPartyName = Shapes::StructureShape.new(name: 'EdiPartyName')
54
61
  FailureReason = Shapes::StringShape.new(name: 'FailureReason')
62
+ GeneralName = Shapes::StructureShape.new(name: 'GeneralName')
55
63
  GetCertificateAuthorityCertificateRequest = Shapes::StructureShape.new(name: 'GetCertificateAuthorityCertificateRequest')
56
64
  GetCertificateAuthorityCertificateResponse = Shapes::StructureShape.new(name: 'GetCertificateAuthorityCertificateResponse')
57
65
  GetCertificateAuthorityCsrRequest = Shapes::StructureShape.new(name: 'GetCertificateAuthorityCsrRequest')
@@ -73,6 +81,7 @@ module Aws::ACMPCA
73
81
  IssueCertificateRequest = Shapes::StructureShape.new(name: 'IssueCertificateRequest')
74
82
  IssueCertificateResponse = Shapes::StructureShape.new(name: 'IssueCertificateResponse')
75
83
  KeyAlgorithm = Shapes::StringShape.new(name: 'KeyAlgorithm')
84
+ KeyUsage = Shapes::StructureShape.new(name: 'KeyUsage')
76
85
  LimitExceededException = Shapes::StructureShape.new(name: 'LimitExceededException')
77
86
  ListCertificateAuthoritiesRequest = Shapes::StructureShape.new(name: 'ListCertificateAuthoritiesRequest')
78
87
  ListCertificateAuthoritiesResponse = Shapes::StructureShape.new(name: 'ListCertificateAuthoritiesResponse')
@@ -85,6 +94,7 @@ module Aws::ACMPCA
85
94
  MalformedCertificateException = Shapes::StructureShape.new(name: 'MalformedCertificateException')
86
95
  MaxResults = Shapes::IntegerShape.new(name: 'MaxResults')
87
96
  NextToken = Shapes::StringShape.new(name: 'NextToken')
97
+ OtherName = Shapes::StructureShape.new(name: 'OtherName')
88
98
  PermanentDeletionTimeInDays = Shapes::IntegerShape.new(name: 'PermanentDeletionTimeInDays')
89
99
  Permission = Shapes::StructureShape.new(name: 'Permission')
90
100
  PermissionAlreadyExistsException = Shapes::StructureShape.new(name: 'PermissionAlreadyExistsException')
@@ -108,7 +118,9 @@ module Aws::ACMPCA
108
118
  String128 = Shapes::StringShape.new(name: 'String128')
109
119
  String16 = Shapes::StringShape.new(name: 'String16')
110
120
  String253 = Shapes::StringShape.new(name: 'String253')
121
+ String256 = Shapes::StringShape.new(name: 'String256')
111
122
  String3 = Shapes::StringShape.new(name: 'String3')
123
+ String39 = Shapes::StringShape.new(name: 'String39')
112
124
  String3To255 = Shapes::StringShape.new(name: 'String3To255')
113
125
  String40 = Shapes::StringShape.new(name: 'String40')
114
126
  String5 = Shapes::StringShape.new(name: 'String5')
@@ -141,6 +153,16 @@ module Aws::ACMPCA
141
153
  ASN1Subject.add_member(:generation_qualifier, Shapes::ShapeRef.new(shape: String3, location_name: "GenerationQualifier"))
142
154
  ASN1Subject.struct_class = Types::ASN1Subject
143
155
 
156
+ AccessDescription.add_member(:access_method, Shapes::ShapeRef.new(shape: AccessMethod, required: true, location_name: "AccessMethod"))
157
+ AccessDescription.add_member(:access_location, Shapes::ShapeRef.new(shape: GeneralName, required: true, location_name: "AccessLocation"))
158
+ AccessDescription.struct_class = Types::AccessDescription
159
+
160
+ AccessDescriptionList.member = Shapes::ShapeRef.new(shape: AccessDescription)
161
+
162
+ AccessMethod.add_member(:custom_object_identifier, Shapes::ShapeRef.new(shape: CustomObjectIdentifier, location_name: "CustomObjectIdentifier"))
163
+ AccessMethod.add_member(:access_method_type, Shapes::ShapeRef.new(shape: AccessMethodType, location_name: "AccessMethodType"))
164
+ AccessMethod.struct_class = Types::AccessMethod
165
+
144
166
  ActionList.member = Shapes::ShapeRef.new(shape: ActionType)
145
167
 
146
168
  CertificateAuthorities.member = Shapes::ShapeRef.new(shape: CertificateAuthority)
@@ -163,6 +185,7 @@ module Aws::ACMPCA
163
185
  CertificateAuthorityConfiguration.add_member(:key_algorithm, Shapes::ShapeRef.new(shape: KeyAlgorithm, required: true, location_name: "KeyAlgorithm"))
164
186
  CertificateAuthorityConfiguration.add_member(:signing_algorithm, Shapes::ShapeRef.new(shape: SigningAlgorithm, required: true, location_name: "SigningAlgorithm"))
165
187
  CertificateAuthorityConfiguration.add_member(:subject, Shapes::ShapeRef.new(shape: ASN1Subject, required: true, location_name: "Subject"))
188
+ CertificateAuthorityConfiguration.add_member(:csr_extensions, Shapes::ShapeRef.new(shape: CsrExtensions, location_name: "CsrExtensions"))
166
189
  CertificateAuthorityConfiguration.struct_class = Types::CertificateAuthorityConfiguration
167
190
 
168
191
  CertificateMismatchException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "message"))
@@ -202,6 +225,10 @@ module Aws::ACMPCA
202
225
  CrlConfiguration.add_member(:s3_bucket_name, Shapes::ShapeRef.new(shape: String3To255, location_name: "S3BucketName"))
203
226
  CrlConfiguration.struct_class = Types::CrlConfiguration
204
227
 
228
+ CsrExtensions.add_member(:key_usage, Shapes::ShapeRef.new(shape: KeyUsage, location_name: "KeyUsage"))
229
+ CsrExtensions.add_member(:subject_information_access, Shapes::ShapeRef.new(shape: AccessDescriptionList, location_name: "SubjectInformationAccess"))
230
+ CsrExtensions.struct_class = Types::CsrExtensions
231
+
205
232
  DeleteCertificateAuthorityRequest.add_member(:certificate_authority_arn, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "CertificateAuthorityArn"))
206
233
  DeleteCertificateAuthorityRequest.add_member(:permanent_deletion_time_in_days, Shapes::ShapeRef.new(shape: PermanentDeletionTimeInDays, location_name: "PermanentDeletionTimeInDays"))
207
234
  DeleteCertificateAuthorityRequest.struct_class = Types::DeleteCertificateAuthorityRequest
@@ -230,6 +257,20 @@ module Aws::ACMPCA
230
257
  DescribeCertificateAuthorityResponse.add_member(:certificate_authority, Shapes::ShapeRef.new(shape: CertificateAuthority, location_name: "CertificateAuthority"))
231
258
  DescribeCertificateAuthorityResponse.struct_class = Types::DescribeCertificateAuthorityResponse
232
259
 
260
+ EdiPartyName.add_member(:party_name, Shapes::ShapeRef.new(shape: String256, required: true, location_name: "PartyName"))
261
+ EdiPartyName.add_member(:name_assigner, Shapes::ShapeRef.new(shape: String256, location_name: "NameAssigner"))
262
+ EdiPartyName.struct_class = Types::EdiPartyName
263
+
264
+ GeneralName.add_member(:other_name, Shapes::ShapeRef.new(shape: OtherName, location_name: "OtherName"))
265
+ GeneralName.add_member(:rfc_822_name, Shapes::ShapeRef.new(shape: String256, location_name: "Rfc822Name"))
266
+ GeneralName.add_member(:dns_name, Shapes::ShapeRef.new(shape: String253, location_name: "DnsName"))
267
+ GeneralName.add_member(:directory_name, Shapes::ShapeRef.new(shape: ASN1Subject, location_name: "DirectoryName"))
268
+ GeneralName.add_member(:edi_party_name, Shapes::ShapeRef.new(shape: EdiPartyName, location_name: "EdiPartyName"))
269
+ GeneralName.add_member(:uniform_resource_identifier, Shapes::ShapeRef.new(shape: String253, location_name: "UniformResourceIdentifier"))
270
+ GeneralName.add_member(:ip_address, Shapes::ShapeRef.new(shape: String39, location_name: "IpAddress"))
271
+ GeneralName.add_member(:registered_id, Shapes::ShapeRef.new(shape: CustomObjectIdentifier, location_name: "RegisteredId"))
272
+ GeneralName.struct_class = Types::GeneralName
273
+
233
274
  GetCertificateAuthorityCertificateRequest.add_member(:certificate_authority_arn, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "CertificateAuthorityArn"))
234
275
  GetCertificateAuthorityCertificateRequest.struct_class = Types::GetCertificateAuthorityCertificateRequest
235
276
 
@@ -294,6 +335,17 @@ module Aws::ACMPCA
294
335
  IssueCertificateResponse.add_member(:certificate_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "CertificateArn"))
295
336
  IssueCertificateResponse.struct_class = Types::IssueCertificateResponse
296
337
 
338
+ KeyUsage.add_member(:digital_signature, Shapes::ShapeRef.new(shape: Boolean, location_name: "DigitalSignature"))
339
+ KeyUsage.add_member(:non_repudiation, Shapes::ShapeRef.new(shape: Boolean, location_name: "NonRepudiation"))
340
+ KeyUsage.add_member(:key_encipherment, Shapes::ShapeRef.new(shape: Boolean, location_name: "KeyEncipherment"))
341
+ KeyUsage.add_member(:data_encipherment, Shapes::ShapeRef.new(shape: Boolean, location_name: "DataEncipherment"))
342
+ KeyUsage.add_member(:key_agreement, Shapes::ShapeRef.new(shape: Boolean, location_name: "KeyAgreement"))
343
+ KeyUsage.add_member(:key_cert_sign, Shapes::ShapeRef.new(shape: Boolean, location_name: "KeyCertSign"))
344
+ KeyUsage.add_member(:crl_sign, Shapes::ShapeRef.new(shape: Boolean, location_name: "CRLSign"))
345
+ KeyUsage.add_member(:encipher_only, Shapes::ShapeRef.new(shape: Boolean, location_name: "EncipherOnly"))
346
+ KeyUsage.add_member(:decipher_only, Shapes::ShapeRef.new(shape: Boolean, location_name: "DecipherOnly"))
347
+ KeyUsage.struct_class = Types::KeyUsage
348
+
297
349
  LimitExceededException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "message"))
298
350
  LimitExceededException.struct_class = Types::LimitExceededException
299
351
 
@@ -333,6 +385,10 @@ module Aws::ACMPCA
333
385
  MalformedCertificateException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "message"))
334
386
  MalformedCertificateException.struct_class = Types::MalformedCertificateException
335
387
 
388
+ OtherName.add_member(:type_id, Shapes::ShapeRef.new(shape: CustomObjectIdentifier, required: true, location_name: "TypeId"))
389
+ OtherName.add_member(:value, Shapes::ShapeRef.new(shape: String256, required: true, location_name: "Value"))
390
+ OtherName.struct_class = Types::OtherName
391
+
336
392
  Permission.add_member(:certificate_authority_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "CertificateAuthorityArn"))
337
393
  Permission.add_member(:created_at, Shapes::ShapeRef.new(shape: TStamp, location_name: "CreatedAt"))
338
394
  Permission.add_member(:principal, Shapes::ShapeRef.new(shape: Principal, location_name: "Principal"))
@@ -65,7 +65,11 @@ module Aws::ACMPCA
65
65
  # @return [String]
66
66
  #
67
67
  # @!attribute [rw] common_name
68
- # Fully qualified domain name (FQDN) associated with the certificate
68
+ # For CA and end-entity certificates in a private PKI, the common name
69
+ # (CN) can be any string within the length limit.
70
+ #
71
+ # Note: In publicly trusted certificates, the common name must be a
72
+ # fully qualified domain name (FQDN) associated with the certificate
69
73
  # subject.
70
74
  # @return [String]
71
75
  #
@@ -131,6 +135,106 @@ module Aws::ACMPCA
131
135
  include Aws::Structure
132
136
  end
133
137
 
138
+ # Provides access information used by the `authorityInfoAccess` and
139
+ # `subjectInfoAccess` extensions described in [RFC 5280][1].
140
+ #
141
+ #
142
+ #
143
+ # [1]: https://tools.ietf.org/html/rfc5280
144
+ #
145
+ # @note When making an API call, you may pass AccessDescription
146
+ # data as a hash:
147
+ #
148
+ # {
149
+ # access_method: { # required
150
+ # custom_object_identifier: "CustomObjectIdentifier",
151
+ # access_method_type: "CA_REPOSITORY", # accepts CA_REPOSITORY, RESOURCE_PKI_MANIFEST, RESOURCE_PKI_NOTIFY
152
+ # },
153
+ # access_location: { # required
154
+ # other_name: {
155
+ # type_id: "CustomObjectIdentifier", # required
156
+ # value: "String256", # required
157
+ # },
158
+ # rfc_822_name: "String256",
159
+ # dns_name: "String253",
160
+ # directory_name: {
161
+ # country: "CountryCodeString",
162
+ # organization: "String64",
163
+ # organizational_unit: "String64",
164
+ # distinguished_name_qualifier: "ASN1PrintableString64",
165
+ # state: "String128",
166
+ # common_name: "String64",
167
+ # serial_number: "ASN1PrintableString64",
168
+ # locality: "String128",
169
+ # title: "String64",
170
+ # surname: "String40",
171
+ # given_name: "String16",
172
+ # initials: "String5",
173
+ # pseudonym: "String128",
174
+ # generation_qualifier: "String3",
175
+ # },
176
+ # edi_party_name: {
177
+ # party_name: "String256", # required
178
+ # name_assigner: "String256",
179
+ # },
180
+ # uniform_resource_identifier: "String253",
181
+ # ip_address: "String39",
182
+ # registered_id: "CustomObjectIdentifier",
183
+ # },
184
+ # }
185
+ #
186
+ # @!attribute [rw] access_method
187
+ # The type and format of `AccessDescription` information.
188
+ # @return [Types::AccessMethod]
189
+ #
190
+ # @!attribute [rw] access_location
191
+ # The location of `AccessDescription` information.
192
+ # @return [Types::GeneralName]
193
+ #
194
+ # @see http://docs.aws.amazon.com/goto/WebAPI/acm-pca-2017-08-22/AccessDescription AWS API Documentation
195
+ #
196
+ class AccessDescription < Struct.new(
197
+ :access_method,
198
+ :access_location)
199
+ SENSITIVE = []
200
+ include Aws::Structure
201
+ end
202
+
203
+ # Describes the type and format of extension access. Only one of
204
+ # `CustomObjectIdentifier` or `AccessMethodType` may be provided.
205
+ # Providing both results in `InvalidArgsException`.
206
+ #
207
+ # @note When making an API call, you may pass AccessMethod
208
+ # data as a hash:
209
+ #
210
+ # {
211
+ # custom_object_identifier: "CustomObjectIdentifier",
212
+ # access_method_type: "CA_REPOSITORY", # accepts CA_REPOSITORY, RESOURCE_PKI_MANIFEST, RESOURCE_PKI_NOTIFY
213
+ # }
214
+ #
215
+ # @!attribute [rw] custom_object_identifier
216
+ # An object identifier (OID) specifying the `AccessMethod`. The OID
217
+ # must satisfy the regular expression shown below. For more
218
+ # information, see NIST's definition of [Object Identifier (OID)][1].
219
+ #
220
+ #
221
+ #
222
+ # [1]: https://csrc.nist.gov/glossary/term/Object_Identifier
223
+ # @return [String]
224
+ #
225
+ # @!attribute [rw] access_method_type
226
+ # Specifies the `AccessMethod`.
227
+ # @return [String]
228
+ #
229
+ # @see http://docs.aws.amazon.com/goto/WebAPI/acm-pca-2017-08-22/AccessMethod AWS API Documentation
230
+ #
231
+ class AccessMethod < Struct.new(
232
+ :custom_object_identifier,
233
+ :access_method_type)
234
+ SENSITIVE = []
235
+ include Aws::Structure
236
+ end
237
+
134
238
  # Contains information about your private certificate authority (CA).
135
239
  # Your private CA can issue and revoke X.509 digital certificates.
136
240
  # Digital certificates verify that the entity named in the certificate
@@ -264,6 +368,58 @@ module Aws::ACMPCA
264
368
  # pseudonym: "String128",
265
369
  # generation_qualifier: "String3",
266
370
  # },
371
+ # csr_extensions: {
372
+ # key_usage: {
373
+ # digital_signature: false,
374
+ # non_repudiation: false,
375
+ # key_encipherment: false,
376
+ # data_encipherment: false,
377
+ # key_agreement: false,
378
+ # key_cert_sign: false,
379
+ # crl_sign: false,
380
+ # encipher_only: false,
381
+ # decipher_only: false,
382
+ # },
383
+ # subject_information_access: [
384
+ # {
385
+ # access_method: { # required
386
+ # custom_object_identifier: "CustomObjectIdentifier",
387
+ # access_method_type: "CA_REPOSITORY", # accepts CA_REPOSITORY, RESOURCE_PKI_MANIFEST, RESOURCE_PKI_NOTIFY
388
+ # },
389
+ # access_location: { # required
390
+ # other_name: {
391
+ # type_id: "CustomObjectIdentifier", # required
392
+ # value: "String256", # required
393
+ # },
394
+ # rfc_822_name: "String256",
395
+ # dns_name: "String253",
396
+ # directory_name: {
397
+ # country: "CountryCodeString",
398
+ # organization: "String64",
399
+ # organizational_unit: "String64",
400
+ # distinguished_name_qualifier: "ASN1PrintableString64",
401
+ # state: "String128",
402
+ # common_name: "String64",
403
+ # serial_number: "ASN1PrintableString64",
404
+ # locality: "String128",
405
+ # title: "String64",
406
+ # surname: "String40",
407
+ # given_name: "String16",
408
+ # initials: "String5",
409
+ # pseudonym: "String128",
410
+ # generation_qualifier: "String3",
411
+ # },
412
+ # edi_party_name: {
413
+ # party_name: "String256", # required
414
+ # name_assigner: "String256",
415
+ # },
416
+ # uniform_resource_identifier: "String253",
417
+ # ip_address: "String39",
418
+ # registered_id: "CustomObjectIdentifier",
419
+ # },
420
+ # },
421
+ # ],
422
+ # },
267
423
  # }
268
424
  #
269
425
  # @!attribute [rw] key_algorithm
@@ -286,12 +442,18 @@ module Aws::ACMPCA
286
442
  # your private CA.
287
443
  # @return [Types::ASN1Subject]
288
444
  #
445
+ # @!attribute [rw] csr_extensions
446
+ # Specifies information to be added to the extension section of the
447
+ # certificate signing request (CSR).
448
+ # @return [Types::CsrExtensions]
449
+ #
289
450
  # @see http://docs.aws.amazon.com/goto/WebAPI/acm-pca-2017-08-22/CertificateAuthorityConfiguration AWS API Documentation
290
451
  #
291
452
  class CertificateAuthorityConfiguration < Struct.new(
292
453
  :key_algorithm,
293
454
  :signing_algorithm,
294
- :subject)
455
+ :subject,
456
+ :csr_extensions)
295
457
  SENSITIVE = []
296
458
  include Aws::Structure
297
459
  end
@@ -400,6 +562,58 @@ module Aws::ACMPCA
400
562
  # pseudonym: "String128",
401
563
  # generation_qualifier: "String3",
402
564
  # },
565
+ # csr_extensions: {
566
+ # key_usage: {
567
+ # digital_signature: false,
568
+ # non_repudiation: false,
569
+ # key_encipherment: false,
570
+ # data_encipherment: false,
571
+ # key_agreement: false,
572
+ # key_cert_sign: false,
573
+ # crl_sign: false,
574
+ # encipher_only: false,
575
+ # decipher_only: false,
576
+ # },
577
+ # subject_information_access: [
578
+ # {
579
+ # access_method: { # required
580
+ # custom_object_identifier: "CustomObjectIdentifier",
581
+ # access_method_type: "CA_REPOSITORY", # accepts CA_REPOSITORY, RESOURCE_PKI_MANIFEST, RESOURCE_PKI_NOTIFY
582
+ # },
583
+ # access_location: { # required
584
+ # other_name: {
585
+ # type_id: "CustomObjectIdentifier", # required
586
+ # value: "String256", # required
587
+ # },
588
+ # rfc_822_name: "String256",
589
+ # dns_name: "String253",
590
+ # directory_name: {
591
+ # country: "CountryCodeString",
592
+ # organization: "String64",
593
+ # organizational_unit: "String64",
594
+ # distinguished_name_qualifier: "ASN1PrintableString64",
595
+ # state: "String128",
596
+ # common_name: "String64",
597
+ # serial_number: "ASN1PrintableString64",
598
+ # locality: "String128",
599
+ # title: "String64",
600
+ # surname: "String40",
601
+ # given_name: "String16",
602
+ # initials: "String5",
603
+ # pseudonym: "String128",
604
+ # generation_qualifier: "String3",
605
+ # },
606
+ # edi_party_name: {
607
+ # party_name: "String256", # required
608
+ # name_assigner: "String256",
609
+ # },
610
+ # uniform_resource_identifier: "String253",
611
+ # ip_address: "String39",
612
+ # registered_id: "CustomObjectIdentifier",
613
+ # },
614
+ # },
615
+ # ],
616
+ # },
403
617
  # },
404
618
  # revocation_configuration: {
405
619
  # crl_configuration: {
@@ -635,7 +849,7 @@ module Aws::ACMPCA
635
849
  # @return [Boolean]
636
850
  #
637
851
  # @!attribute [rw] expiration_in_days
638
- # Number of days until a certificate expires.
852
+ # Validity period of the CRL in days.
639
853
  # @return [Integer]
640
854
  #
641
855
  # @!attribute [rw] custom_cname
@@ -670,6 +884,89 @@ module Aws::ACMPCA
670
884
  include Aws::Structure
671
885
  end
672
886
 
887
+ # Describes the certificate extensions to be added to the certificate
888
+ # signing request (CSR).
889
+ #
890
+ # @note When making an API call, you may pass CsrExtensions
891
+ # data as a hash:
892
+ #
893
+ # {
894
+ # key_usage: {
895
+ # digital_signature: false,
896
+ # non_repudiation: false,
897
+ # key_encipherment: false,
898
+ # data_encipherment: false,
899
+ # key_agreement: false,
900
+ # key_cert_sign: false,
901
+ # crl_sign: false,
902
+ # encipher_only: false,
903
+ # decipher_only: false,
904
+ # },
905
+ # subject_information_access: [
906
+ # {
907
+ # access_method: { # required
908
+ # custom_object_identifier: "CustomObjectIdentifier",
909
+ # access_method_type: "CA_REPOSITORY", # accepts CA_REPOSITORY, RESOURCE_PKI_MANIFEST, RESOURCE_PKI_NOTIFY
910
+ # },
911
+ # access_location: { # required
912
+ # other_name: {
913
+ # type_id: "CustomObjectIdentifier", # required
914
+ # value: "String256", # required
915
+ # },
916
+ # rfc_822_name: "String256",
917
+ # dns_name: "String253",
918
+ # directory_name: {
919
+ # country: "CountryCodeString",
920
+ # organization: "String64",
921
+ # organizational_unit: "String64",
922
+ # distinguished_name_qualifier: "ASN1PrintableString64",
923
+ # state: "String128",
924
+ # common_name: "String64",
925
+ # serial_number: "ASN1PrintableString64",
926
+ # locality: "String128",
927
+ # title: "String64",
928
+ # surname: "String40",
929
+ # given_name: "String16",
930
+ # initials: "String5",
931
+ # pseudonym: "String128",
932
+ # generation_qualifier: "String3",
933
+ # },
934
+ # edi_party_name: {
935
+ # party_name: "String256", # required
936
+ # name_assigner: "String256",
937
+ # },
938
+ # uniform_resource_identifier: "String253",
939
+ # ip_address: "String39",
940
+ # registered_id: "CustomObjectIdentifier",
941
+ # },
942
+ # },
943
+ # ],
944
+ # }
945
+ #
946
+ # @!attribute [rw] key_usage
947
+ # Indicates the purpose of the certificate and of the key contained in
948
+ # the certificate.
949
+ # @return [Types::KeyUsage]
950
+ #
951
+ # @!attribute [rw] subject_information_access
952
+ # For CA certificates, provides a path to additional information
953
+ # pertaining to the CA, such as revocation and policy. For more
954
+ # information, see [Subject Information Access][1] in RFC 5280.
955
+ #
956
+ #
957
+ #
958
+ # [1]: https://tools.ietf.org/html/rfc5280#section-4.2.2.2
959
+ # @return [Array<Types::AccessDescription>]
960
+ #
961
+ # @see http://docs.aws.amazon.com/goto/WebAPI/acm-pca-2017-08-22/CsrExtensions AWS API Documentation
962
+ #
963
+ class CsrExtensions < Struct.new(
964
+ :key_usage,
965
+ :subject_information_access)
966
+ SENSITIVE = []
967
+ include Aws::Structure
968
+ end
969
+
673
970
  # @note When making an API call, you may pass DeleteCertificateAuthorityRequest
674
971
  # data as a hash:
675
972
  #
@@ -882,6 +1179,142 @@ module Aws::ACMPCA
882
1179
  include Aws::Structure
883
1180
  end
884
1181
 
1182
+ # Describes an Electronic Data Interchange (EDI) entity as described in
1183
+ # as defined in [Subject Alternative Name][1] in RFC 5280.
1184
+ #
1185
+ #
1186
+ #
1187
+ # [1]: https://tools.ietf.org/html/rfc5280
1188
+ #
1189
+ # @note When making an API call, you may pass EdiPartyName
1190
+ # data as a hash:
1191
+ #
1192
+ # {
1193
+ # party_name: "String256", # required
1194
+ # name_assigner: "String256",
1195
+ # }
1196
+ #
1197
+ # @!attribute [rw] party_name
1198
+ # Specifies the party name.
1199
+ # @return [String]
1200
+ #
1201
+ # @!attribute [rw] name_assigner
1202
+ # Specifies the name assigner.
1203
+ # @return [String]
1204
+ #
1205
+ # @see http://docs.aws.amazon.com/goto/WebAPI/acm-pca-2017-08-22/EdiPartyName AWS API Documentation
1206
+ #
1207
+ class EdiPartyName < Struct.new(
1208
+ :party_name,
1209
+ :name_assigner)
1210
+ SENSITIVE = []
1211
+ include Aws::Structure
1212
+ end
1213
+
1214
+ # Describes an ASN.1 X.400 `GeneralName` as defined in [RFC 5280][1].
1215
+ # Only one of the following naming options should be providied.
1216
+ # Providing more than one option results in an `InvalidArgsException`
1217
+ # error.
1218
+ #
1219
+ #
1220
+ #
1221
+ # [1]: https://tools.ietf.org/html/rfc5280
1222
+ #
1223
+ # @note When making an API call, you may pass GeneralName
1224
+ # data as a hash:
1225
+ #
1226
+ # {
1227
+ # other_name: {
1228
+ # type_id: "CustomObjectIdentifier", # required
1229
+ # value: "String256", # required
1230
+ # },
1231
+ # rfc_822_name: "String256",
1232
+ # dns_name: "String253",
1233
+ # directory_name: {
1234
+ # country: "CountryCodeString",
1235
+ # organization: "String64",
1236
+ # organizational_unit: "String64",
1237
+ # distinguished_name_qualifier: "ASN1PrintableString64",
1238
+ # state: "String128",
1239
+ # common_name: "String64",
1240
+ # serial_number: "ASN1PrintableString64",
1241
+ # locality: "String128",
1242
+ # title: "String64",
1243
+ # surname: "String40",
1244
+ # given_name: "String16",
1245
+ # initials: "String5",
1246
+ # pseudonym: "String128",
1247
+ # generation_qualifier: "String3",
1248
+ # },
1249
+ # edi_party_name: {
1250
+ # party_name: "String256", # required
1251
+ # name_assigner: "String256",
1252
+ # },
1253
+ # uniform_resource_identifier: "String253",
1254
+ # ip_address: "String39",
1255
+ # registered_id: "CustomObjectIdentifier",
1256
+ # }
1257
+ #
1258
+ # @!attribute [rw] other_name
1259
+ # Represents `GeneralName` using an `OtherName` object.
1260
+ # @return [Types::OtherName]
1261
+ #
1262
+ # @!attribute [rw] rfc_822_name
1263
+ # Represents `GeneralName` as an [RFC 822][1] email address.
1264
+ #
1265
+ #
1266
+ #
1267
+ # [1]: https://tools.ietf.org/html/rfc822
1268
+ # @return [String]
1269
+ #
1270
+ # @!attribute [rw] dns_name
1271
+ # Represents `GeneralName` as a DNS name.
1272
+ # @return [String]
1273
+ #
1274
+ # @!attribute [rw] directory_name
1275
+ # Contains information about the certificate subject. The certificate
1276
+ # can be one issued by your private certificate authority (CA) or it
1277
+ # can be your private CA certificate. The **Subject** field in the
1278
+ # certificate identifies the entity that owns or controls the public
1279
+ # key in the certificate. The entity can be a user, computer, device,
1280
+ # or service. The **Subject** must contain an X.500 distinguished name
1281
+ # (DN). A DN is a sequence of relative distinguished names (RDNs). The
1282
+ # RDNs are separated by commas in the certificate. The DN must be
1283
+ # unique for each entity, but your private CA can issue more than one
1284
+ # certificate with the same DN to the same entity.
1285
+ # @return [Types::ASN1Subject]
1286
+ #
1287
+ # @!attribute [rw] edi_party_name
1288
+ # Represents `GeneralName` as an `EdiPartyName` object.
1289
+ # @return [Types::EdiPartyName]
1290
+ #
1291
+ # @!attribute [rw] uniform_resource_identifier
1292
+ # Represents `GeneralName` as a URI.
1293
+ # @return [String]
1294
+ #
1295
+ # @!attribute [rw] ip_address
1296
+ # Represents `GeneralName` as an IPv4 or IPv6 address.
1297
+ # @return [String]
1298
+ #
1299
+ # @!attribute [rw] registered_id
1300
+ # Represents `GeneralName` as an object identifier (OID).
1301
+ # @return [String]
1302
+ #
1303
+ # @see http://docs.aws.amazon.com/goto/WebAPI/acm-pca-2017-08-22/GeneralName AWS API Documentation
1304
+ #
1305
+ class GeneralName < Struct.new(
1306
+ :other_name,
1307
+ :rfc_822_name,
1308
+ :dns_name,
1309
+ :directory_name,
1310
+ :edi_party_name,
1311
+ :uniform_resource_identifier,
1312
+ :ip_address,
1313
+ :registered_id)
1314
+ SENSITIVE = []
1315
+ include Aws::Structure
1316
+ end
1317
+
885
1318
  # @note When making an API call, you may pass GetCertificateAuthorityCertificateRequest
886
1319
  # data as a hash:
887
1320
  #
@@ -911,10 +1344,9 @@ module Aws::ACMPCA
911
1344
  #
912
1345
  # @!attribute [rw] certificate_chain
913
1346
  # Base64-encoded certificate chain that includes any intermediate
914
- # certificates and chains up to root on-premises certificate that you
915
- # used to sign your private CA certificate. The chain does not include
916
- # your private CA certificate. If this is a root CA, the value will be
917
- # null.
1347
+ # certificates and chains up to root certificate that you used to sign
1348
+ # your private CA certificate. The chain does not include your private
1349
+ # CA certificate. If this is a root CA, the value will be null.
918
1350
  # @return [String]
919
1351
  #
920
1352
  # @see http://docs.aws.amazon.com/goto/WebAPI/acm-pca-2017-08-22/GetCertificateAuthorityCertificateResponse AWS API Documentation
@@ -1009,9 +1441,8 @@ module Aws::ACMPCA
1009
1441
  # @return [String]
1010
1442
  #
1011
1443
  # @!attribute [rw] certificate_chain
1012
- # The base64 PEM-encoded certificate chain that chains up to the
1013
- # on-premises root CA certificate that you used to sign your private
1014
- # CA certificate.
1444
+ # The base64 PEM-encoded certificate chain that chains up to the root
1445
+ # CA certificate that you used to sign your private CA certificate.
1015
1446
  # @return [String]
1016
1447
  #
1017
1448
  # @see http://docs.aws.amazon.com/goto/WebAPI/acm-pca-2017-08-22/GetCertificateResponse AWS API Documentation
@@ -1156,7 +1587,7 @@ module Aws::ACMPCA
1156
1587
  #
1157
1588
  #
1158
1589
  #
1159
- # [1]: https://docs.aws.amazon.com/https:/docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#access_policies-json
1590
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#access_policies-json
1160
1591
  #
1161
1592
  # @!attribute [rw] message
1162
1593
  # @return [String]
@@ -1367,6 +1798,76 @@ module Aws::ACMPCA
1367
1798
  include Aws::Structure
1368
1799
  end
1369
1800
 
1801
+ # Defines one or more purposes for which the key contained in the
1802
+ # certificate can be used. Default value for each option is false.
1803
+ #
1804
+ # @note When making an API call, you may pass KeyUsage
1805
+ # data as a hash:
1806
+ #
1807
+ # {
1808
+ # digital_signature: false,
1809
+ # non_repudiation: false,
1810
+ # key_encipherment: false,
1811
+ # data_encipherment: false,
1812
+ # key_agreement: false,
1813
+ # key_cert_sign: false,
1814
+ # crl_sign: false,
1815
+ # encipher_only: false,
1816
+ # decipher_only: false,
1817
+ # }
1818
+ #
1819
+ # @!attribute [rw] digital_signature
1820
+ # Key can be used for digital signing.
1821
+ # @return [Boolean]
1822
+ #
1823
+ # @!attribute [rw] non_repudiation
1824
+ # Key can be used for non-repudiation.
1825
+ # @return [Boolean]
1826
+ #
1827
+ # @!attribute [rw] key_encipherment
1828
+ # Key can be used to encipher data.
1829
+ # @return [Boolean]
1830
+ #
1831
+ # @!attribute [rw] data_encipherment
1832
+ # Key can be used to decipher data.
1833
+ # @return [Boolean]
1834
+ #
1835
+ # @!attribute [rw] key_agreement
1836
+ # Key can be used in a key-agreement protocol.
1837
+ # @return [Boolean]
1838
+ #
1839
+ # @!attribute [rw] key_cert_sign
1840
+ # Key can be used to sign certificates.
1841
+ # @return [Boolean]
1842
+ #
1843
+ # @!attribute [rw] crl_sign
1844
+ # Key can be used to sign CRLs.
1845
+ # @return [Boolean]
1846
+ #
1847
+ # @!attribute [rw] encipher_only
1848
+ # Key can be used only to encipher data.
1849
+ # @return [Boolean]
1850
+ #
1851
+ # @!attribute [rw] decipher_only
1852
+ # Key can be used only to decipher data.
1853
+ # @return [Boolean]
1854
+ #
1855
+ # @see http://docs.aws.amazon.com/goto/WebAPI/acm-pca-2017-08-22/KeyUsage AWS API Documentation
1856
+ #
1857
+ class KeyUsage < Struct.new(
1858
+ :digital_signature,
1859
+ :non_repudiation,
1860
+ :key_encipherment,
1861
+ :data_encipherment,
1862
+ :key_agreement,
1863
+ :key_cert_sign,
1864
+ :crl_sign,
1865
+ :encipher_only,
1866
+ :decipher_only)
1867
+ SENSITIVE = []
1868
+ include Aws::Structure
1869
+ end
1870
+
1370
1871
  # An ACM Private CA quota has been exceeded. See the exception message
1371
1872
  # returned to determine the quota that was exceeded.
1372
1873
  #
@@ -1610,6 +2111,40 @@ module Aws::ACMPCA
1610
2111
  include Aws::Structure
1611
2112
  end
1612
2113
 
2114
+ # Defines a custom ASN.1 X.400 `GeneralName` using an object identifier
2115
+ # (OID) and value. The OID must satisfy the regular expression shown
2116
+ # below. For more information, see NIST's definition of [Object
2117
+ # Identifier (OID)][1].
2118
+ #
2119
+ #
2120
+ #
2121
+ # [1]: https://csrc.nist.gov/glossary/term/Object_Identifier
2122
+ #
2123
+ # @note When making an API call, you may pass OtherName
2124
+ # data as a hash:
2125
+ #
2126
+ # {
2127
+ # type_id: "CustomObjectIdentifier", # required
2128
+ # value: "String256", # required
2129
+ # }
2130
+ #
2131
+ # @!attribute [rw] type_id
2132
+ # Specifies an OID.
2133
+ # @return [String]
2134
+ #
2135
+ # @!attribute [rw] value
2136
+ # Specifies an OID value.
2137
+ # @return [String]
2138
+ #
2139
+ # @see http://docs.aws.amazon.com/goto/WebAPI/acm-pca-2017-08-22/OtherName AWS API Documentation
2140
+ #
2141
+ class OtherName < Struct.new(
2142
+ :type_id,
2143
+ :value)
2144
+ SENSITIVE = []
2145
+ include Aws::Structure
2146
+ end
2147
+
1613
2148
  # Permissions designate which private CA actions can be performed by an
1614
2149
  # AWS service or entity. In order for ACM to automatically renew private
1615
2150
  # certificates, you must give the ACM service principal all available
@@ -2116,6 +2651,10 @@ module Aws::ACMPCA
2116
2651
  # * Sample input value: 90
2117
2652
  #
2118
2653
  # * Output expiration date: 01/10/2020 12:34:54 UTC
2654
+ #
2655
+ # The minimum validity duration for a certificate using relative time
2656
+ # (`DAYS`) is one day. The minimum validity for a certificate using
2657
+ # absolute time (`ABSOLUTE` or `END_DATE`) is one second.
2119
2658
  # @return [String]
2120
2659
  #
2121
2660
  # @see http://docs.aws.amazon.com/goto/WebAPI/acm-pca-2017-08-22/Validity AWS API Documentation
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-acmpca
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.30.0
4
+ version: 1.31.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-09-30 00:00:00.000000000 Z
11
+ date: 2020-12-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core