@aws-sdk/client-pca-connector-ad 3.403.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.
Files changed (199) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +407 -0
  3. package/dist-cjs/PcaConnectorAd.js +61 -0
  4. package/dist-cjs/PcaConnectorAdClient.js +43 -0
  5. package/dist-cjs/commands/CreateConnectorCommand.js +46 -0
  6. package/dist-cjs/commands/CreateDirectoryRegistrationCommand.js +46 -0
  7. package/dist-cjs/commands/CreateServicePrincipalNameCommand.js +46 -0
  8. package/dist-cjs/commands/CreateTemplateCommand.js +46 -0
  9. package/dist-cjs/commands/CreateTemplateGroupAccessControlEntryCommand.js +46 -0
  10. package/dist-cjs/commands/DeleteConnectorCommand.js +46 -0
  11. package/dist-cjs/commands/DeleteDirectoryRegistrationCommand.js +46 -0
  12. package/dist-cjs/commands/DeleteServicePrincipalNameCommand.js +46 -0
  13. package/dist-cjs/commands/DeleteTemplateCommand.js +46 -0
  14. package/dist-cjs/commands/DeleteTemplateGroupAccessControlEntryCommand.js +46 -0
  15. package/dist-cjs/commands/GetConnectorCommand.js +46 -0
  16. package/dist-cjs/commands/GetDirectoryRegistrationCommand.js +46 -0
  17. package/dist-cjs/commands/GetServicePrincipalNameCommand.js +46 -0
  18. package/dist-cjs/commands/GetTemplateCommand.js +46 -0
  19. package/dist-cjs/commands/GetTemplateGroupAccessControlEntryCommand.js +46 -0
  20. package/dist-cjs/commands/ListConnectorsCommand.js +46 -0
  21. package/dist-cjs/commands/ListDirectoryRegistrationsCommand.js +46 -0
  22. package/dist-cjs/commands/ListServicePrincipalNamesCommand.js +46 -0
  23. package/dist-cjs/commands/ListTagsForResourceCommand.js +46 -0
  24. package/dist-cjs/commands/ListTemplateGroupAccessControlEntriesCommand.js +46 -0
  25. package/dist-cjs/commands/ListTemplatesCommand.js +46 -0
  26. package/dist-cjs/commands/TagResourceCommand.js +46 -0
  27. package/dist-cjs/commands/UntagResourceCommand.js +46 -0
  28. package/dist-cjs/commands/UpdateTemplateCommand.js +46 -0
  29. package/dist-cjs/commands/UpdateTemplateGroupAccessControlEntryCommand.js +46 -0
  30. package/dist-cjs/commands/index.js +28 -0
  31. package/dist-cjs/endpoint/EndpointParameters.js +12 -0
  32. package/dist-cjs/endpoint/endpointResolver.js +12 -0
  33. package/dist-cjs/endpoint/ruleset.js +7 -0
  34. package/dist-cjs/extensionConfiguration.js +2 -0
  35. package/dist-cjs/index.js +11 -0
  36. package/dist-cjs/models/PcaConnectorAdServiceException.js +12 -0
  37. package/dist-cjs/models/index.js +4 -0
  38. package/dist-cjs/models/models_0.js +324 -0
  39. package/dist-cjs/pagination/Interfaces.js +2 -0
  40. package/dist-cjs/pagination/ListConnectorsPaginator.js +29 -0
  41. package/dist-cjs/pagination/ListDirectoryRegistrationsPaginator.js +29 -0
  42. package/dist-cjs/pagination/ListServicePrincipalNamesPaginator.js +29 -0
  43. package/dist-cjs/pagination/ListTemplateGroupAccessControlEntriesPaginator.js +29 -0
  44. package/dist-cjs/pagination/ListTemplatesPaginator.js +29 -0
  45. package/dist-cjs/pagination/index.js +9 -0
  46. package/dist-cjs/protocols/Aws_restJson1.js +1985 -0
  47. package/dist-cjs/runtimeConfig.browser.js +39 -0
  48. package/dist-cjs/runtimeConfig.js +48 -0
  49. package/dist-cjs/runtimeConfig.native.js +15 -0
  50. package/dist-cjs/runtimeConfig.shared.js +22 -0
  51. package/dist-cjs/runtimeExtensions.js +16 -0
  52. package/dist-es/PcaConnectorAd.js +57 -0
  53. package/dist-es/PcaConnectorAdClient.js +39 -0
  54. package/dist-es/commands/CreateConnectorCommand.js +42 -0
  55. package/dist-es/commands/CreateDirectoryRegistrationCommand.js +42 -0
  56. package/dist-es/commands/CreateServicePrincipalNameCommand.js +42 -0
  57. package/dist-es/commands/CreateTemplateCommand.js +42 -0
  58. package/dist-es/commands/CreateTemplateGroupAccessControlEntryCommand.js +42 -0
  59. package/dist-es/commands/DeleteConnectorCommand.js +42 -0
  60. package/dist-es/commands/DeleteDirectoryRegistrationCommand.js +42 -0
  61. package/dist-es/commands/DeleteServicePrincipalNameCommand.js +42 -0
  62. package/dist-es/commands/DeleteTemplateCommand.js +42 -0
  63. package/dist-es/commands/DeleteTemplateGroupAccessControlEntryCommand.js +42 -0
  64. package/dist-es/commands/GetConnectorCommand.js +42 -0
  65. package/dist-es/commands/GetDirectoryRegistrationCommand.js +42 -0
  66. package/dist-es/commands/GetServicePrincipalNameCommand.js +42 -0
  67. package/dist-es/commands/GetTemplateCommand.js +42 -0
  68. package/dist-es/commands/GetTemplateGroupAccessControlEntryCommand.js +42 -0
  69. package/dist-es/commands/ListConnectorsCommand.js +42 -0
  70. package/dist-es/commands/ListDirectoryRegistrationsCommand.js +42 -0
  71. package/dist-es/commands/ListServicePrincipalNamesCommand.js +42 -0
  72. package/dist-es/commands/ListTagsForResourceCommand.js +42 -0
  73. package/dist-es/commands/ListTemplateGroupAccessControlEntriesCommand.js +42 -0
  74. package/dist-es/commands/ListTemplatesCommand.js +42 -0
  75. package/dist-es/commands/TagResourceCommand.js +42 -0
  76. package/dist-es/commands/UntagResourceCommand.js +42 -0
  77. package/dist-es/commands/UpdateTemplateCommand.js +42 -0
  78. package/dist-es/commands/UpdateTemplateGroupAccessControlEntryCommand.js +42 -0
  79. package/dist-es/commands/index.js +25 -0
  80. package/dist-es/endpoint/EndpointParameters.js +8 -0
  81. package/dist-es/endpoint/endpointResolver.js +8 -0
  82. package/dist-es/endpoint/ruleset.js +4 -0
  83. package/dist-es/extensionConfiguration.js +1 -0
  84. package/dist-es/index.js +6 -0
  85. package/dist-es/models/PcaConnectorAdServiceException.js +8 -0
  86. package/dist-es/models/index.js +1 -0
  87. package/dist-es/models/models_0.js +314 -0
  88. package/dist-es/pagination/Interfaces.js +1 -0
  89. package/dist-es/pagination/ListConnectorsPaginator.js +25 -0
  90. package/dist-es/pagination/ListDirectoryRegistrationsPaginator.js +25 -0
  91. package/dist-es/pagination/ListServicePrincipalNamesPaginator.js +25 -0
  92. package/dist-es/pagination/ListTemplateGroupAccessControlEntriesPaginator.js +25 -0
  93. package/dist-es/pagination/ListTemplatesPaginator.js +25 -0
  94. package/dist-es/pagination/index.js +6 -0
  95. package/dist-es/protocols/Aws_restJson1.js +1932 -0
  96. package/dist-es/runtimeConfig.browser.js +34 -0
  97. package/dist-es/runtimeConfig.js +43 -0
  98. package/dist-es/runtimeConfig.native.js +11 -0
  99. package/dist-es/runtimeConfig.shared.js +18 -0
  100. package/dist-es/runtimeExtensions.js +12 -0
  101. package/dist-types/PcaConnectorAd.d.ts +187 -0
  102. package/dist-types/PcaConnectorAdClient.d.ts +194 -0
  103. package/dist-types/commands/CreateConnectorCommand.d.ts +113 -0
  104. package/dist-types/commands/CreateDirectoryRegistrationCommand.d.ts +104 -0
  105. package/dist-types/commands/CreateServicePrincipalNameCommand.d.ts +101 -0
  106. package/dist-types/commands/CreateTemplateCommand.d.ts +344 -0
  107. package/dist-types/commands/CreateTemplateGroupAccessControlEntryCommand.d.ts +108 -0
  108. package/dist-types/commands/DeleteConnectorCommand.d.ts +101 -0
  109. package/dist-types/commands/DeleteDirectoryRegistrationCommand.d.ts +94 -0
  110. package/dist-types/commands/DeleteServicePrincipalNameCommand.d.ts +95 -0
  111. package/dist-types/commands/DeleteTemplateCommand.d.ts +98 -0
  112. package/dist-types/commands/DeleteTemplateGroupAccessControlEntryCommand.d.ts +98 -0
  113. package/dist-types/commands/GetConnectorCommand.d.ts +110 -0
  114. package/dist-types/commands/GetDirectoryRegistrationCommand.d.ts +102 -0
  115. package/dist-types/commands/GetServicePrincipalNameCommand.d.ts +104 -0
  116. package/dist-types/commands/GetTemplateCommand.d.ts +345 -0
  117. package/dist-types/commands/GetTemplateGroupAccessControlEntryCommand.d.ts +106 -0
  118. package/dist-types/commands/ListConnectorsCommand.d.ts +109 -0
  119. package/dist-types/commands/ListDirectoryRegistrationsCommand.d.ts +103 -0
  120. package/dist-types/commands/ListServicePrincipalNamesCommand.d.ts +108 -0
  121. package/dist-types/commands/ListTagsForResourceCommand.d.ts +97 -0
  122. package/dist-types/commands/ListTemplateGroupAccessControlEntriesCommand.d.ts +110 -0
  123. package/dist-types/commands/ListTemplatesCommand.d.ts +349 -0
  124. package/dist-types/commands/TagResourceCommand.d.ts +96 -0
  125. package/dist-types/commands/UntagResourceCommand.d.ts +96 -0
  126. package/dist-types/commands/UpdateTemplateCommand.d.ts +334 -0
  127. package/dist-types/commands/UpdateTemplateGroupAccessControlEntryCommand.d.ts +103 -0
  128. package/dist-types/commands/index.d.ts +25 -0
  129. package/dist-types/endpoint/EndpointParameters.d.ts +22 -0
  130. package/dist-types/endpoint/endpointResolver.d.ts +5 -0
  131. package/dist-types/endpoint/ruleset.d.ts +2 -0
  132. package/dist-types/extensionConfiguration.d.ts +6 -0
  133. package/dist-types/index.d.ts +14 -0
  134. package/dist-types/models/PcaConnectorAdServiceException.d.ts +13 -0
  135. package/dist-types/models/index.d.ts +1 -0
  136. package/dist-types/models/models_0.d.ts +2690 -0
  137. package/dist-types/pagination/Interfaces.d.ts +8 -0
  138. package/dist-types/pagination/ListConnectorsPaginator.d.ts +7 -0
  139. package/dist-types/pagination/ListDirectoryRegistrationsPaginator.d.ts +7 -0
  140. package/dist-types/pagination/ListServicePrincipalNamesPaginator.d.ts +7 -0
  141. package/dist-types/pagination/ListTemplateGroupAccessControlEntriesPaginator.d.ts +7 -0
  142. package/dist-types/pagination/ListTemplatesPaginator.d.ts +7 -0
  143. package/dist-types/pagination/index.d.ts +6 -0
  144. package/dist-types/protocols/Aws_restJson1.d.ts +227 -0
  145. package/dist-types/runtimeConfig.browser.d.ts +43 -0
  146. package/dist-types/runtimeConfig.d.ts +43 -0
  147. package/dist-types/runtimeConfig.native.d.ts +42 -0
  148. package/dist-types/runtimeConfig.shared.d.ts +19 -0
  149. package/dist-types/runtimeExtensions.d.ts +17 -0
  150. package/dist-types/ts3.4/PcaConnectorAd.d.ts +462 -0
  151. package/dist-types/ts3.4/PcaConnectorAdClient.d.ts +269 -0
  152. package/dist-types/ts3.4/commands/CreateConnectorCommand.d.ts +38 -0
  153. package/dist-types/ts3.4/commands/CreateDirectoryRegistrationCommand.d.ts +42 -0
  154. package/dist-types/ts3.4/commands/CreateServicePrincipalNameCommand.d.ts +38 -0
  155. package/dist-types/ts3.4/commands/CreateTemplateCommand.d.ts +38 -0
  156. package/dist-types/ts3.4/commands/CreateTemplateGroupAccessControlEntryCommand.d.ts +38 -0
  157. package/dist-types/ts3.4/commands/DeleteConnectorCommand.d.ts +33 -0
  158. package/dist-types/ts3.4/commands/DeleteDirectoryRegistrationCommand.d.ts +38 -0
  159. package/dist-types/ts3.4/commands/DeleteServicePrincipalNameCommand.d.ts +38 -0
  160. package/dist-types/ts3.4/commands/DeleteTemplateCommand.d.ts +33 -0
  161. package/dist-types/ts3.4/commands/DeleteTemplateGroupAccessControlEntryCommand.d.ts +38 -0
  162. package/dist-types/ts3.4/commands/GetConnectorCommand.d.ts +35 -0
  163. package/dist-types/ts3.4/commands/GetDirectoryRegistrationCommand.d.ts +42 -0
  164. package/dist-types/ts3.4/commands/GetServicePrincipalNameCommand.d.ts +42 -0
  165. package/dist-types/ts3.4/commands/GetTemplateCommand.d.ts +35 -0
  166. package/dist-types/ts3.4/commands/GetTemplateGroupAccessControlEntryCommand.d.ts +42 -0
  167. package/dist-types/ts3.4/commands/ListConnectorsCommand.d.ts +38 -0
  168. package/dist-types/ts3.4/commands/ListDirectoryRegistrationsCommand.d.ts +42 -0
  169. package/dist-types/ts3.4/commands/ListServicePrincipalNamesCommand.d.ts +42 -0
  170. package/dist-types/ts3.4/commands/ListTagsForResourceCommand.d.ts +39 -0
  171. package/dist-types/ts3.4/commands/ListTemplateGroupAccessControlEntriesCommand.d.ts +42 -0
  172. package/dist-types/ts3.4/commands/ListTemplatesCommand.d.ts +38 -0
  173. package/dist-types/ts3.4/commands/TagResourceCommand.d.ts +33 -0
  174. package/dist-types/ts3.4/commands/UntagResourceCommand.d.ts +33 -0
  175. package/dist-types/ts3.4/commands/UpdateTemplateCommand.d.ts +33 -0
  176. package/dist-types/ts3.4/commands/UpdateTemplateGroupAccessControlEntryCommand.d.ts +38 -0
  177. package/dist-types/ts3.4/commands/index.d.ts +25 -0
  178. package/dist-types/ts3.4/endpoint/EndpointParameters.d.ts +33 -0
  179. package/dist-types/ts3.4/endpoint/endpointResolver.d.ts +8 -0
  180. package/dist-types/ts3.4/endpoint/ruleset.d.ts +2 -0
  181. package/dist-types/ts3.4/extensionConfiguration.d.ts +3 -0
  182. package/dist-types/ts3.4/index.d.ts +7 -0
  183. package/dist-types/ts3.4/models/PcaConnectorAdServiceException.d.ts +8 -0
  184. package/dist-types/ts3.4/models/index.d.ts +1 -0
  185. package/dist-types/ts3.4/models/models_0.d.ts +812 -0
  186. package/dist-types/ts3.4/pagination/Interfaces.d.ts +6 -0
  187. package/dist-types/ts3.4/pagination/ListConnectorsPaginator.d.ts +11 -0
  188. package/dist-types/ts3.4/pagination/ListDirectoryRegistrationsPaginator.d.ts +11 -0
  189. package/dist-types/ts3.4/pagination/ListServicePrincipalNamesPaginator.d.ts +11 -0
  190. package/dist-types/ts3.4/pagination/ListTemplateGroupAccessControlEntriesPaginator.d.ts +11 -0
  191. package/dist-types/ts3.4/pagination/ListTemplatesPaginator.d.ts +11 -0
  192. package/dist-types/ts3.4/pagination/index.d.ts +6 -0
  193. package/dist-types/ts3.4/protocols/Aws_restJson1.d.ts +305 -0
  194. package/dist-types/ts3.4/runtimeConfig.browser.d.ts +90 -0
  195. package/dist-types/ts3.4/runtimeConfig.d.ts +90 -0
  196. package/dist-types/ts3.4/runtimeConfig.native.d.ts +81 -0
  197. package/dist-types/ts3.4/runtimeConfig.shared.d.ts +19 -0
  198. package/dist-types/ts3.4/runtimeExtensions.d.ts +11 -0
  199. package/package.json +101 -0
@@ -0,0 +1,2690 @@
1
+ import { ExceptionOptionType as __ExceptionOptionType } from "@smithy/smithy-client";
2
+ import { PcaConnectorAdServiceException as __BaseException } from "./PcaConnectorAdServiceException";
3
+ /**
4
+ * @public
5
+ * @enum
6
+ */
7
+ export declare const AccessRight: {
8
+ readonly ALLOW: "ALLOW";
9
+ readonly DENY: "DENY";
10
+ };
11
+ /**
12
+ * @public
13
+ */
14
+ export type AccessRight = (typeof AccessRight)[keyof typeof AccessRight];
15
+ /**
16
+ * @public
17
+ * <p> Allow or deny permissions for an Active Directory group to enroll or autoenroll certificates for a
18
+ * template.</p>
19
+ */
20
+ export interface AccessRights {
21
+ /**
22
+ * @public
23
+ * <p>Allow or deny an Active Directory group from enrolling certificates issued against a
24
+ * template.</p>
25
+ */
26
+ Enroll?: AccessRight | string;
27
+ /**
28
+ * @public
29
+ * <p>Allow or deny an Active Directory group from autoenrolling certificates issued against a template.
30
+ * The Active Directory group must be allowed to enroll to allow autoenrollment</p>
31
+ */
32
+ AutoEnroll?: AccessRight | string;
33
+ }
34
+ /**
35
+ * @public
36
+ * <p> An access control entry allows or denies Active Directory groups based on their security
37
+ * identifiers (SIDs) from enrolling and/or autoenrolling with the template.</p>
38
+ */
39
+ export interface AccessControlEntry {
40
+ /**
41
+ * @public
42
+ * <p>Name of the Active Directory group. This name does not need to match the group name in Active Directory.</p>
43
+ */
44
+ GroupDisplayName?: string;
45
+ /**
46
+ * @public
47
+ * <p>Security identifier (SID) of the group object from Active Directory. The SID starts with
48
+ * "S-".</p>
49
+ */
50
+ GroupSecurityIdentifier?: string;
51
+ /**
52
+ * @public
53
+ * <p>Permissions to allow or deny an Active Directory group to enroll or autoenroll certificates issued
54
+ * against a template.</p>
55
+ */
56
+ AccessRights?: AccessRights;
57
+ /**
58
+ * @public
59
+ * <p>The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateTemplate.html">CreateTemplate</a>.</p>
60
+ */
61
+ TemplateArn?: string;
62
+ /**
63
+ * @public
64
+ * <p>The date and time that the Access Control Entry was created.</p>
65
+ */
66
+ CreatedAt?: Date;
67
+ /**
68
+ * @public
69
+ * <p>The date and time that the Access Control Entry was updated.</p>
70
+ */
71
+ UpdatedAt?: Date;
72
+ }
73
+ /**
74
+ * @public
75
+ * <p>Summary of group access control entries that allow or deny Active Directory groups based on their
76
+ * security identifiers (SIDs) from enrolling and/or autofenrolling with the template.</p>
77
+ */
78
+ export interface AccessControlEntrySummary {
79
+ /**
80
+ * @public
81
+ * <p>Name of the Active Directory group. This name does not need to match the group name in Active Directory.</p>
82
+ */
83
+ GroupDisplayName?: string;
84
+ /**
85
+ * @public
86
+ * <p>Security identifier (SID) of the group object from Active Directory. The SID starts with
87
+ * "S-".</p>
88
+ */
89
+ GroupSecurityIdentifier?: string;
90
+ /**
91
+ * @public
92
+ * <p>Allow or deny an Active Directory group from enrolling and autoenrolling certificates issued against
93
+ * a template.</p>
94
+ */
95
+ AccessRights?: AccessRights;
96
+ /**
97
+ * @public
98
+ * <p>The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateTemplate.html">CreateTemplate</a>. </p>
99
+ */
100
+ TemplateArn?: string;
101
+ /**
102
+ * @public
103
+ * <p>The date and time that the Access Control Entry was created.</p>
104
+ */
105
+ CreatedAt?: Date;
106
+ /**
107
+ * @public
108
+ * <p>The date and time that the Access Control Entry was updated.</p>
109
+ */
110
+ UpdatedAt?: Date;
111
+ }
112
+ /**
113
+ * @public
114
+ * <p>You can receive this error if you attempt to create a resource share when you don't have
115
+ * the required permissions. This can be caused by insufficient permissions in policies
116
+ * attached to your Amazon Web Services Identity and Access Management (IAM) principal. It can also happen
117
+ * because of restrictions in place from an Amazon Web Services Organizations service control policy (SCP)
118
+ * that affects your Amazon Web Services account. </p>
119
+ */
120
+ export declare class AccessDeniedException extends __BaseException {
121
+ readonly name: "AccessDeniedException";
122
+ readonly $fault: "client";
123
+ Message: string | undefined;
124
+ /**
125
+ * @internal
126
+ */
127
+ constructor(opts: __ExceptionOptionType<AccessDeniedException, __BaseException>);
128
+ }
129
+ /**
130
+ * @public
131
+ * @enum
132
+ */
133
+ export declare const ApplicationPolicyType: {
134
+ readonly ALL_APPLICATION_POLICIES: "ALL_APPLICATION_POLICIES";
135
+ readonly ANY_PURPOSE: "ANY_PURPOSE";
136
+ readonly ATTESTATION_IDENTITY_KEY_CERTIFICATE: "ATTESTATION_IDENTITY_KEY_CERTIFICATE";
137
+ readonly CERTIFICATE_REQUEST_AGENT: "CERTIFICATE_REQUEST_AGENT";
138
+ readonly CLIENT_AUTHENTICATION: "CLIENT_AUTHENTICATION";
139
+ readonly CODE_SIGNING: "CODE_SIGNING";
140
+ readonly CTL_USAGE: "CTL_USAGE";
141
+ readonly DIGITAL_RIGHTS: "DIGITAL_RIGHTS";
142
+ readonly DIRECTORY_SERVICE_EMAIL_REPLICATION: "DIRECTORY_SERVICE_EMAIL_REPLICATION";
143
+ readonly DISALLOWED_LIST: "DISALLOWED_LIST";
144
+ readonly DNS_SERVER_TRUST: "DNS_SERVER_TRUST";
145
+ readonly DOCUMENT_ENCRYPTION: "DOCUMENT_ENCRYPTION";
146
+ readonly DOCUMENT_SIGNING: "DOCUMENT_SIGNING";
147
+ readonly DYNAMIC_CODE_GENERATOR: "DYNAMIC_CODE_GENERATOR";
148
+ readonly EARLY_LAUNCH_ANTIMALWARE_DRIVER: "EARLY_LAUNCH_ANTIMALWARE_DRIVER";
149
+ readonly EMBEDDED_WINDOWS_SYSTEM_COMPONENT_VERIFICATION: "EMBEDDED_WINDOWS_SYSTEM_COMPONENT_VERIFICATION";
150
+ readonly ENCLAVE: "ENCLAVE";
151
+ readonly ENCRYPTING_FILE_SYSTEM: "ENCRYPTING_FILE_SYSTEM";
152
+ readonly ENDORSEMENT_KEY_CERTIFICATE: "ENDORSEMENT_KEY_CERTIFICATE";
153
+ readonly FILE_RECOVERY: "FILE_RECOVERY";
154
+ readonly HAL_EXTENSION: "HAL_EXTENSION";
155
+ readonly IP_SECURITY_END_SYSTEM: "IP_SECURITY_END_SYSTEM";
156
+ readonly IP_SECURITY_IKE_INTERMEDIATE: "IP_SECURITY_IKE_INTERMEDIATE";
157
+ readonly IP_SECURITY_TUNNEL_TERMINATION: "IP_SECURITY_TUNNEL_TERMINATION";
158
+ readonly IP_SECURITY_USER: "IP_SECURITY_USER";
159
+ readonly ISOLATED_USER_MODE: "ISOLATED_USER_MODE";
160
+ readonly KDC_AUTHENTICATION: "KDC_AUTHENTICATION";
161
+ readonly KERNEL_MODE_CODE_SIGNING: "KERNEL_MODE_CODE_SIGNING";
162
+ readonly KEY_PACK_LICENSES: "KEY_PACK_LICENSES";
163
+ readonly KEY_RECOVERY: "KEY_RECOVERY";
164
+ readonly KEY_RECOVERY_AGENT: "KEY_RECOVERY_AGENT";
165
+ readonly LICENSE_SERVER_VERIFICATION: "LICENSE_SERVER_VERIFICATION";
166
+ readonly LIFETIME_SIGNING: "LIFETIME_SIGNING";
167
+ readonly MICROSOFT_PUBLISHER: "MICROSOFT_PUBLISHER";
168
+ readonly MICROSOFT_TIME_STAMPING: "MICROSOFT_TIME_STAMPING";
169
+ readonly MICROSOFT_TRUST_LIST_SIGNING: "MICROSOFT_TRUST_LIST_SIGNING";
170
+ readonly OCSP_SIGNING: "OCSP_SIGNING";
171
+ readonly OEM_WINDOWS_SYSTEM_COMPONENT_VERIFICATION: "OEM_WINDOWS_SYSTEM_COMPONENT_VERIFICATION";
172
+ readonly PLATFORM_CERTIFICATE: "PLATFORM_CERTIFICATE";
173
+ readonly PREVIEW_BUILD_SIGNING: "PREVIEW_BUILD_SIGNING";
174
+ readonly PRIVATE_KEY_ARCHIVAL: "PRIVATE_KEY_ARCHIVAL";
175
+ readonly PROTECTED_PROCESS_LIGHT_VERIFICATION: "PROTECTED_PROCESS_LIGHT_VERIFICATION";
176
+ readonly PROTECTED_PROCESS_VERIFICATION: "PROTECTED_PROCESS_VERIFICATION";
177
+ readonly QUALIFIED_SUBORDINATION: "QUALIFIED_SUBORDINATION";
178
+ readonly REVOKED_LIST_SIGNER: "REVOKED_LIST_SIGNER";
179
+ readonly ROOT_LIST_SIGNER: "ROOT_LIST_SIGNER";
180
+ readonly ROOT_PROGRAM_AUTO_UPDATE_CA_REVOCATION: "ROOT_PROGRAM_AUTO_UPDATE_CA_REVOCATION";
181
+ readonly ROOT_PROGRAM_AUTO_UPDATE_END_REVOCATION: "ROOT_PROGRAM_AUTO_UPDATE_END_REVOCATION";
182
+ readonly ROOT_PROGRAM_NO_OSCP_FAILOVER_TO_CRL: "ROOT_PROGRAM_NO_OSCP_FAILOVER_TO_CRL";
183
+ readonly SECURE_EMAIL: "SECURE_EMAIL";
184
+ readonly SERVER_AUTHENTICATION: "SERVER_AUTHENTICATION";
185
+ readonly SMART_CARD_LOGIN: "SMART_CARD_LOGIN";
186
+ readonly SPC_ENCRYPTED_DIGEST_RETRY_COUNT: "SPC_ENCRYPTED_DIGEST_RETRY_COUNT";
187
+ readonly SPC_RELAXED_PE_MARKER_CHECK: "SPC_RELAXED_PE_MARKER_CHECK";
188
+ readonly TIME_STAMPING: "TIME_STAMPING";
189
+ readonly WINDOWS_HARDWARE_DRIVER_ATTESTED_VERIFICATION: "WINDOWS_HARDWARE_DRIVER_ATTESTED_VERIFICATION";
190
+ readonly WINDOWS_HARDWARE_DRIVER_EXTENDED_VERIFICATION: "WINDOWS_HARDWARE_DRIVER_EXTENDED_VERIFICATION";
191
+ readonly WINDOWS_HARDWARE_DRIVER_VERIFICATION: "WINDOWS_HARDWARE_DRIVER_VERIFICATION";
192
+ readonly WINDOWS_HELLO_RECOVERY_KEY_ENCRYPTION: "WINDOWS_HELLO_RECOVERY_KEY_ENCRYPTION";
193
+ readonly WINDOWS_KITS_COMPONENT: "WINDOWS_KITS_COMPONENT";
194
+ readonly WINDOWS_RT_VERIFICATION: "WINDOWS_RT_VERIFICATION";
195
+ readonly WINDOWS_SOFTWARE_EXTENSION_VERIFICATION: "WINDOWS_SOFTWARE_EXTENSION_VERIFICATION";
196
+ readonly WINDOWS_STORE: "WINDOWS_STORE";
197
+ readonly WINDOWS_SYSTEM_COMPONENT_VERIFICATION: "WINDOWS_SYSTEM_COMPONENT_VERIFICATION";
198
+ readonly WINDOWS_TCB_COMPONENT: "WINDOWS_TCB_COMPONENT";
199
+ readonly WINDOWS_THIRD_PARTY_APPLICATION_COMPONENT: "WINDOWS_THIRD_PARTY_APPLICATION_COMPONENT";
200
+ readonly WINDOWS_UPDATE: "WINDOWS_UPDATE";
201
+ };
202
+ /**
203
+ * @public
204
+ */
205
+ export type ApplicationPolicyType = (typeof ApplicationPolicyType)[keyof typeof ApplicationPolicyType];
206
+ /**
207
+ * @public
208
+ * <p>Application policies describe what the certificate can be used for.</p>
209
+ */
210
+ export type ApplicationPolicy = ApplicationPolicy.PolicyObjectIdentifierMember | ApplicationPolicy.PolicyTypeMember | ApplicationPolicy.$UnknownMember;
211
+ /**
212
+ * @public
213
+ */
214
+ export declare namespace ApplicationPolicy {
215
+ /**
216
+ * @public
217
+ * <p>The type of application policy</p>
218
+ */
219
+ interface PolicyTypeMember {
220
+ PolicyType: ApplicationPolicyType | string;
221
+ PolicyObjectIdentifier?: never;
222
+ $unknown?: never;
223
+ }
224
+ /**
225
+ * @public
226
+ * <p>The object identifier (OID) of an application policy.</p>
227
+ */
228
+ interface PolicyObjectIdentifierMember {
229
+ PolicyType?: never;
230
+ PolicyObjectIdentifier: string;
231
+ $unknown?: never;
232
+ }
233
+ /**
234
+ * @public
235
+ */
236
+ interface $UnknownMember {
237
+ PolicyType?: never;
238
+ PolicyObjectIdentifier?: never;
239
+ $unknown: [string, any];
240
+ }
241
+ interface Visitor<T> {
242
+ PolicyType: (value: ApplicationPolicyType | string) => T;
243
+ PolicyObjectIdentifier: (value: string) => T;
244
+ _: (name: string, value: any) => T;
245
+ }
246
+ const visit: <T>(value: ApplicationPolicy, visitor: Visitor<T>) => T;
247
+ }
248
+ /**
249
+ * @public
250
+ * <p>Application policies describe what the certificate can be used for.</p>
251
+ */
252
+ export interface ApplicationPolicies {
253
+ /**
254
+ * @public
255
+ * <p>Marks the application policy extension as critical.</p>
256
+ */
257
+ Critical?: boolean;
258
+ /**
259
+ * @public
260
+ * <p>Application policies describe what the certificate can be used for.</p>
261
+ */
262
+ Policies: ApplicationPolicy[] | undefined;
263
+ }
264
+ /**
265
+ * @public
266
+ * @enum
267
+ */
268
+ export declare const ValidityPeriodType: {
269
+ readonly DAYS: "DAYS";
270
+ readonly HOURS: "HOURS";
271
+ readonly MONTHS: "MONTHS";
272
+ readonly WEEKS: "WEEKS";
273
+ readonly YEARS: "YEARS";
274
+ };
275
+ /**
276
+ * @public
277
+ */
278
+ export type ValidityPeriodType = (typeof ValidityPeriodType)[keyof typeof ValidityPeriodType];
279
+ /**
280
+ * @public
281
+ * <p>Information describing the end of the validity period of the certificate. This parameter
282
+ * sets the “Not After” date for the certificate. Certificate validity is the period of time
283
+ * during which a certificate is valid. Validity can be expressed as an explicit date and time
284
+ * when the certificate expires, or as a span of time after issuance, stated in hours, days,
285
+ * months, or years. For more information, see Validity in RFC 5280. This value is unaffected
286
+ * when ValidityNotBefore is also specified. For example, if Validity is set to 20 days in the
287
+ * future, the certificate will expire 20 days from issuance time regardless of the
288
+ * ValidityNotBefore value. </p>
289
+ */
290
+ export interface ValidityPeriod {
291
+ /**
292
+ * @public
293
+ * <p>The unit of time. You can select hours, days, weeks, months, and years.</p>
294
+ */
295
+ PeriodType: ValidityPeriodType | string | undefined;
296
+ /**
297
+ * @public
298
+ * <p>The numeric value for the validity period.</p>
299
+ */
300
+ Period: number | undefined;
301
+ }
302
+ /**
303
+ * @public
304
+ * <p>Information describing the end of the validity period of the certificate. This parameter
305
+ * sets the “Not After” date for the certificate. Certificate validity is the period of time
306
+ * during which a certificate is valid. Validity can be expressed as an explicit date and time
307
+ * when the certificate expires, or as a span of time after issuance, stated in days, months,
308
+ * or years. For more information, see Validity in RFC 5280. This value is unaffected when
309
+ * ValidityNotBefore is also specified. For example, if Validity is set to 20 days in the
310
+ * future, the certificate will expire 20 days from issuance time regardless of the
311
+ * ValidityNotBefore value.</p>
312
+ */
313
+ export interface CertificateValidity {
314
+ /**
315
+ * @public
316
+ * <p>Information describing the end of the validity period of the certificate. This parameter
317
+ * sets the “Not After” date for the certificate. Certificate validity is the period of time
318
+ * during which a certificate is valid. Validity can be expressed as an explicit date and time
319
+ * when the certificate expires, or as a span of time after issuance, stated in days, months,
320
+ * or years. For more information, see Validity in RFC 5280. This value is unaffected when
321
+ * ValidityNotBefore is also specified. For example, if Validity is set to 20 days in the
322
+ * future, the certificate will expire 20 days from issuance time regardless of the
323
+ * ValidityNotBefore value.</p>
324
+ */
325
+ ValidityPeriod: ValidityPeriod | undefined;
326
+ /**
327
+ * @public
328
+ * <p>Renewal period is the period of time before certificate expiration when a new
329
+ * certificate will be requested.</p>
330
+ */
331
+ RenewalPeriod: ValidityPeriod | undefined;
332
+ }
333
+ /**
334
+ * @public
335
+ * @enum
336
+ */
337
+ export declare const ClientCompatibilityV2: {
338
+ readonly WINDOWS_SERVER_2003: "WINDOWS_SERVER_2003";
339
+ readonly WINDOWS_SERVER_2008: "WINDOWS_SERVER_2008";
340
+ readonly WINDOWS_SERVER_2008_R2: "WINDOWS_SERVER_2008_R2";
341
+ readonly WINDOWS_SERVER_2012: "WINDOWS_SERVER_2012";
342
+ readonly WINDOWS_SERVER_2012_R2: "WINDOWS_SERVER_2012_R2";
343
+ readonly WINDOWS_SERVER_2016: "WINDOWS_SERVER_2016";
344
+ };
345
+ /**
346
+ * @public
347
+ */
348
+ export type ClientCompatibilityV2 = (typeof ClientCompatibilityV2)[keyof typeof ClientCompatibilityV2];
349
+ /**
350
+ * @public
351
+ * @enum
352
+ */
353
+ export declare const ClientCompatibilityV3: {
354
+ readonly WINDOWS_SERVER_2008: "WINDOWS_SERVER_2008";
355
+ readonly WINDOWS_SERVER_2008_R2: "WINDOWS_SERVER_2008_R2";
356
+ readonly WINDOWS_SERVER_2012: "WINDOWS_SERVER_2012";
357
+ readonly WINDOWS_SERVER_2012_R2: "WINDOWS_SERVER_2012_R2";
358
+ readonly WINDOWS_SERVER_2016: "WINDOWS_SERVER_2016";
359
+ };
360
+ /**
361
+ * @public
362
+ */
363
+ export type ClientCompatibilityV3 = (typeof ClientCompatibilityV3)[keyof typeof ClientCompatibilityV3];
364
+ /**
365
+ * @public
366
+ * @enum
367
+ */
368
+ export declare const ClientCompatibilityV4: {
369
+ readonly WINDOWS_SERVER_2012: "WINDOWS_SERVER_2012";
370
+ readonly WINDOWS_SERVER_2012_R2: "WINDOWS_SERVER_2012_R2";
371
+ readonly WINDOWS_SERVER_2016: "WINDOWS_SERVER_2016";
372
+ };
373
+ /**
374
+ * @public
375
+ */
376
+ export type ClientCompatibilityV4 = (typeof ClientCompatibilityV4)[keyof typeof ClientCompatibilityV4];
377
+ /**
378
+ * @public
379
+ * <p>This request cannot be completed for one of the following reasons because the requested
380
+ * resource was being concurrently modified by another request.</p>
381
+ */
382
+ export declare class ConflictException extends __BaseException {
383
+ readonly name: "ConflictException";
384
+ readonly $fault: "client";
385
+ Message: string | undefined;
386
+ /**
387
+ * @public
388
+ * <p>The identifier of the Amazon Web Services resource.</p>
389
+ */
390
+ ResourceId: string | undefined;
391
+ /**
392
+ * @public
393
+ * <p>The resource type, which can be one of <code>Connector</code>, <code>Template</code>, <code>TemplateGroupAccessControlEntry</code>, <code>ServicePrincipalName</code>, or <code>DirectoryRegistration</code>.</p>
394
+ */
395
+ ResourceType: string | undefined;
396
+ /**
397
+ * @internal
398
+ */
399
+ constructor(opts: __ExceptionOptionType<ConflictException, __BaseException>);
400
+ }
401
+ /**
402
+ * @public
403
+ * @enum
404
+ */
405
+ export declare const ConnectorStatus: {
406
+ readonly ACTIVE: "ACTIVE";
407
+ readonly CREATING: "CREATING";
408
+ readonly DELETING: "DELETING";
409
+ readonly FAILED: "FAILED";
410
+ };
411
+ /**
412
+ * @public
413
+ */
414
+ export type ConnectorStatus = (typeof ConnectorStatus)[keyof typeof ConnectorStatus];
415
+ /**
416
+ * @public
417
+ * @enum
418
+ */
419
+ export declare const ConnectorStatusReason: {
420
+ readonly DIRECTORY_ACCESS_DENIED: "DIRECTORY_ACCESS_DENIED";
421
+ readonly INTERNAL_FAILURE: "INTERNAL_FAILURE";
422
+ readonly PRIVATECA_ACCESS_DENIED: "PRIVATECA_ACCESS_DENIED";
423
+ readonly PRIVATECA_RESOURCE_NOT_FOUND: "PRIVATECA_RESOURCE_NOT_FOUND";
424
+ readonly SECURITY_GROUP_NOT_IN_VPC: "SECURITY_GROUP_NOT_IN_VPC";
425
+ readonly VPC_ACCESS_DENIED: "VPC_ACCESS_DENIED";
426
+ readonly VPC_ENDPOINT_LIMIT_EXCEEDED: "VPC_ENDPOINT_LIMIT_EXCEEDED";
427
+ readonly VPC_RESOURCE_NOT_FOUND: "VPC_RESOURCE_NOT_FOUND";
428
+ };
429
+ /**
430
+ * @public
431
+ */
432
+ export type ConnectorStatusReason = (typeof ConnectorStatusReason)[keyof typeof ConnectorStatusReason];
433
+ /**
434
+ * @public
435
+ * <p>Information about your VPC and security groups used with the connector.</p>
436
+ */
437
+ export interface VpcInformation {
438
+ /**
439
+ * @public
440
+ * <p>The security groups used with the connector. You can use a maximum of 4 security groups
441
+ * with a connector.</p>
442
+ */
443
+ SecurityGroupIds: string[] | undefined;
444
+ }
445
+ /**
446
+ * @public
447
+ * <p>Amazon Web Services Private CA Connector for Active Directory is a service that links your Active Directory with Amazon Web Services Private CA. The connector brokers the
448
+ * exchange of certificates from Amazon Web Services Private CA to domain-joined users and machines managed with
449
+ * Active Directory.</p>
450
+ */
451
+ export interface Connector {
452
+ /**
453
+ * @public
454
+ * <p>The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateConnector.html">CreateConnector</a>. </p>
455
+ */
456
+ Arn?: string;
457
+ /**
458
+ * @public
459
+ * <p>The Amazon Resource Name (ARN) of the certificate authority being used. </p>
460
+ */
461
+ CertificateAuthorityArn?: string;
462
+ /**
463
+ * @public
464
+ * <p>Certificate enrollment endpoint for Active Directory domain-joined objects reach out to when
465
+ * requesting certificates.</p>
466
+ */
467
+ CertificateEnrollmentPolicyServerEndpoint?: string;
468
+ /**
469
+ * @public
470
+ * <p>The identifier of the Active Directory.</p>
471
+ */
472
+ DirectoryId?: string;
473
+ /**
474
+ * @public
475
+ * <p>Information of the VPC and security group(s) used with the connector.</p>
476
+ */
477
+ VpcInformation?: VpcInformation;
478
+ /**
479
+ * @public
480
+ * <p>Status of the connector. Status can be creating, active, deleting, or failed.</p>
481
+ */
482
+ Status?: ConnectorStatus | string;
483
+ /**
484
+ * @public
485
+ * <p>Additional information about the connector status if the status is failed.</p>
486
+ */
487
+ StatusReason?: ConnectorStatusReason | string;
488
+ /**
489
+ * @public
490
+ * <p>The date and time that the connector was created.</p>
491
+ */
492
+ CreatedAt?: Date;
493
+ /**
494
+ * @public
495
+ * <p>The date and time that the connector was updated.</p>
496
+ */
497
+ UpdatedAt?: Date;
498
+ }
499
+ /**
500
+ * @public
501
+ * <p>Summary description of the Amazon Web Services Private CA AD connectors belonging to an Amazon Web Services
502
+ * account.</p>
503
+ */
504
+ export interface ConnectorSummary {
505
+ /**
506
+ * @public
507
+ * <p> The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateConnector.html">CreateConnector</a>.</p>
508
+ */
509
+ Arn?: string;
510
+ /**
511
+ * @public
512
+ * <p>The Amazon Resource Name (ARN) of the certificate authority being used.</p>
513
+ */
514
+ CertificateAuthorityArn?: string;
515
+ /**
516
+ * @public
517
+ * <p>Certificate enrollment endpoint for Active Directory domain-joined objects to request
518
+ * certificates.</p>
519
+ */
520
+ CertificateEnrollmentPolicyServerEndpoint?: string;
521
+ /**
522
+ * @public
523
+ * <p>The identifier of the Active Directory.</p>
524
+ */
525
+ DirectoryId?: string;
526
+ /**
527
+ * @public
528
+ * <p>Information of the VPC and security group(s) used with the connector.</p>
529
+ */
530
+ VpcInformation?: VpcInformation;
531
+ /**
532
+ * @public
533
+ * <p>Status of the connector. Status can be creating, active, deleting, or failed.</p>
534
+ */
535
+ Status?: ConnectorStatus | string;
536
+ /**
537
+ * @public
538
+ * <p>Additional information about the connector status if the status is failed.</p>
539
+ */
540
+ StatusReason?: ConnectorStatusReason | string;
541
+ /**
542
+ * @public
543
+ * <p>The date and time that the connector was created.</p>
544
+ */
545
+ CreatedAt?: Date;
546
+ /**
547
+ * @public
548
+ * <p>The date and time that the connector was updated.</p>
549
+ */
550
+ UpdatedAt?: Date;
551
+ }
552
+ /**
553
+ * @public
554
+ */
555
+ export interface CreateConnectorRequest {
556
+ /**
557
+ * @public
558
+ * <p>The identifier of the Active Directory.</p>
559
+ */
560
+ DirectoryId: string | undefined;
561
+ /**
562
+ * @public
563
+ * <p> The Amazon Resource Name (ARN) of the certificate authority being used.</p>
564
+ */
565
+ CertificateAuthorityArn: string | undefined;
566
+ /**
567
+ * @public
568
+ * <p>Security group IDs that describe the inbound and outbound rules.</p>
569
+ */
570
+ VpcInformation: VpcInformation | undefined;
571
+ /**
572
+ * @public
573
+ * <p>Idempotency token.</p>
574
+ */
575
+ ClientToken?: string;
576
+ /**
577
+ * @public
578
+ * <p>Metadata assigned to a connector consisting of a key-value pair.</p>
579
+ */
580
+ Tags?: Record<string, string>;
581
+ }
582
+ /**
583
+ * @public
584
+ */
585
+ export interface CreateConnectorResponse {
586
+ /**
587
+ * @public
588
+ * <p>If successful, the Amazon Resource Name (ARN) of the connector for Active Directory.</p>
589
+ */
590
+ ConnectorArn?: string;
591
+ }
592
+ /**
593
+ * @public
594
+ * <p>The request processing has failed because of an unknown error, exception or failure with
595
+ * an internal server. </p>
596
+ */
597
+ export declare class InternalServerException extends __BaseException {
598
+ readonly name: "InternalServerException";
599
+ readonly $fault: "server";
600
+ $retryable: {};
601
+ Message: string | undefined;
602
+ /**
603
+ * @internal
604
+ */
605
+ constructor(opts: __ExceptionOptionType<InternalServerException, __BaseException>);
606
+ }
607
+ /**
608
+ * @public
609
+ * <p>The operation tried to access a nonexistent resource. The resource might not be
610
+ * specified correctly, or its status might not be ACTIVE.</p>
611
+ */
612
+ export declare class ResourceNotFoundException extends __BaseException {
613
+ readonly name: "ResourceNotFoundException";
614
+ readonly $fault: "client";
615
+ Message: string | undefined;
616
+ /**
617
+ * @public
618
+ * <p>The identifier of the Amazon Web Services resource.</p>
619
+ */
620
+ ResourceId: string | undefined;
621
+ /**
622
+ * @public
623
+ * <p>The resource type, which can be one of <code>Connector</code>, <code>Template</code>, <code>TemplateGroupAccessControlEntry</code>, <code>ServicePrincipalName</code>, or <code>DirectoryRegistration</code>.</p>
624
+ */
625
+ ResourceType: string | undefined;
626
+ /**
627
+ * @internal
628
+ */
629
+ constructor(opts: __ExceptionOptionType<ResourceNotFoundException, __BaseException>);
630
+ }
631
+ /**
632
+ * @public
633
+ * <p>Request would cause a service quota to be exceeded.</p>
634
+ */
635
+ export declare class ServiceQuotaExceededException extends __BaseException {
636
+ readonly name: "ServiceQuotaExceededException";
637
+ readonly $fault: "client";
638
+ Message: string | undefined;
639
+ /**
640
+ * @public
641
+ * <p>The identifier of the Amazon Web Services resource.</p>
642
+ */
643
+ ResourceId: string | undefined;
644
+ /**
645
+ * @public
646
+ * <p>The resource type, which can be one of <code>Connector</code>, <code>Template</code>, <code>TemplateGroupAccessControlEntry</code>, <code>ServicePrincipalName</code>, or <code>DirectoryRegistration</code>.</p>
647
+ */
648
+ ResourceType: string | undefined;
649
+ /**
650
+ * @public
651
+ * <p>Identifies the originating service.</p>
652
+ */
653
+ ServiceCode: string | undefined;
654
+ /**
655
+ * @public
656
+ * <p>The code associated with the service quota.</p>
657
+ */
658
+ QuotaCode: string | undefined;
659
+ /**
660
+ * @internal
661
+ */
662
+ constructor(opts: __ExceptionOptionType<ServiceQuotaExceededException, __BaseException>);
663
+ }
664
+ /**
665
+ * @public
666
+ * <p>The limit on the number of requests per second was exceeded. </p>
667
+ */
668
+ export declare class ThrottlingException extends __BaseException {
669
+ readonly name: "ThrottlingException";
670
+ readonly $fault: "client";
671
+ $retryable: {
672
+ throttling: boolean;
673
+ };
674
+ Message: string | undefined;
675
+ /**
676
+ * @public
677
+ * <p>Identifies the originating service.</p>
678
+ */
679
+ ServiceCode?: string;
680
+ /**
681
+ * @public
682
+ * <p>The code associated with the quota.</p>
683
+ */
684
+ QuotaCode?: string;
685
+ /**
686
+ * @internal
687
+ */
688
+ constructor(opts: __ExceptionOptionType<ThrottlingException, __BaseException>);
689
+ }
690
+ /**
691
+ * @public
692
+ * @enum
693
+ */
694
+ export declare const ValidationExceptionReason: {
695
+ readonly FIELD_VALIDATION_FAILED: "FIELD_VALIDATION_FAILED";
696
+ readonly INVALID_PERMISSION: "INVALID_PERMISSION";
697
+ readonly INVALID_STATE: "INVALID_STATE";
698
+ readonly MISMATCHED_CONNECTOR: "MISMATCHED_CONNECTOR";
699
+ readonly MISMATCHED_VPC: "MISMATCHED_VPC";
700
+ readonly NO_CLIENT_TOKEN: "NO_CLIENT_TOKEN";
701
+ readonly OTHER: "OTHER";
702
+ readonly UNKNOWN_OPERATION: "UNKNOWN_OPERATION";
703
+ };
704
+ /**
705
+ * @public
706
+ */
707
+ export type ValidationExceptionReason = (typeof ValidationExceptionReason)[keyof typeof ValidationExceptionReason];
708
+ /**
709
+ * @public
710
+ * <p>An input validation error occurred. For example, invalid characters in a template name,
711
+ * or if a pagination token is invalid. </p>
712
+ */
713
+ export declare class ValidationException extends __BaseException {
714
+ readonly name: "ValidationException";
715
+ readonly $fault: "client";
716
+ Message: string | undefined;
717
+ /**
718
+ * @public
719
+ * <p>The reason for the validation error. This won't be return for every
720
+ * validation exception.</p>
721
+ */
722
+ Reason?: ValidationExceptionReason | string;
723
+ /**
724
+ * @internal
725
+ */
726
+ constructor(opts: __ExceptionOptionType<ValidationException, __BaseException>);
727
+ }
728
+ /**
729
+ * @public
730
+ */
731
+ export interface DeleteConnectorRequest {
732
+ /**
733
+ * @public
734
+ * <p> The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateConnector.html">CreateConnector</a>.</p>
735
+ */
736
+ ConnectorArn: string | undefined;
737
+ }
738
+ /**
739
+ * @public
740
+ */
741
+ export interface GetConnectorRequest {
742
+ /**
743
+ * @public
744
+ * <p> The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateConnector.html">CreateConnector</a>.</p>
745
+ */
746
+ ConnectorArn: string | undefined;
747
+ }
748
+ /**
749
+ * @public
750
+ */
751
+ export interface GetConnectorResponse {
752
+ /**
753
+ * @public
754
+ * <p>A structure that contains information about your connector.</p>
755
+ */
756
+ Connector?: Connector;
757
+ }
758
+ /**
759
+ * @public
760
+ */
761
+ export interface ListConnectorsRequest {
762
+ /**
763
+ * @public
764
+ * <p>Use this parameter when paginating results to specify the maximum number of items to
765
+ * return in the response on each page. If additional items exist beyond the number you
766
+ * specify, the <code>NextToken</code> element is sent in the response. Use this
767
+ * <code>NextToken</code> value in a subsequent request to retrieve additional
768
+ * items.</p>
769
+ */
770
+ MaxResults?: number;
771
+ /**
772
+ * @public
773
+ * <p>Use this parameter when paginating results in a subsequent request after you receive a
774
+ * response with truncated results. Set it to the value of the <code>NextToken</code>
775
+ * parameter from the response you just received.</p>
776
+ */
777
+ NextToken?: string;
778
+ }
779
+ /**
780
+ * @public
781
+ */
782
+ export interface ListConnectorsResponse {
783
+ /**
784
+ * @public
785
+ * <p>Summary information about each connector you have created.</p>
786
+ */
787
+ Connectors?: ConnectorSummary[];
788
+ /**
789
+ * @public
790
+ * <p>Use this parameter when paginating results in a subsequent request after you receive a
791
+ * response with truncated results. Set it to the value of the NextToken parameter from the
792
+ * response you just received.</p>
793
+ */
794
+ NextToken?: string;
795
+ }
796
+ /**
797
+ * @public
798
+ */
799
+ export interface CreateDirectoryRegistrationRequest {
800
+ /**
801
+ * @public
802
+ * <p> The identifier of the Active Directory.</p>
803
+ */
804
+ DirectoryId: string | undefined;
805
+ /**
806
+ * @public
807
+ * <p>Idempotency token.</p>
808
+ */
809
+ ClientToken?: string;
810
+ /**
811
+ * @public
812
+ * <p>Metadata assigned to a directory registration consisting of a key-value pair.</p>
813
+ */
814
+ Tags?: Record<string, string>;
815
+ }
816
+ /**
817
+ * @public
818
+ */
819
+ export interface CreateDirectoryRegistrationResponse {
820
+ /**
821
+ * @public
822
+ * <p>The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateDirectoryRegistration.html">CreateDirectoryRegistration</a>.</p>
823
+ */
824
+ DirectoryRegistrationArn?: string;
825
+ }
826
+ /**
827
+ * @public
828
+ */
829
+ export interface CreateServicePrincipalNameRequest {
830
+ /**
831
+ * @public
832
+ * <p>The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateDirectoryRegistration.html">CreateDirectoryRegistration</a>.</p>
833
+ */
834
+ DirectoryRegistrationArn: string | undefined;
835
+ /**
836
+ * @public
837
+ * <p> The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateConnector.html">CreateConnector</a>.</p>
838
+ */
839
+ ConnectorArn: string | undefined;
840
+ /**
841
+ * @public
842
+ * <p>Idempotency token.</p>
843
+ */
844
+ ClientToken?: string;
845
+ }
846
+ /**
847
+ * @public
848
+ * <p>Template configurations for v2 template schema.</p>
849
+ */
850
+ export interface EnrollmentFlagsV2 {
851
+ /**
852
+ * @public
853
+ * <p>Include symmetric algorithms allowed by the subject.</p>
854
+ */
855
+ IncludeSymmetricAlgorithms?: boolean;
856
+ /**
857
+ * @public
858
+ * <p>Require user interaction when the subject is enrolled and the private key associated
859
+ * with the certificate is used.</p>
860
+ */
861
+ UserInteractionRequired?: boolean;
862
+ /**
863
+ * @public
864
+ * <p>Delete expired or revoked certificates instead of archiving them.</p>
865
+ */
866
+ RemoveInvalidCertificateFromPersonalStore?: boolean;
867
+ /**
868
+ * @public
869
+ * <p>This flag instructs the CA to not include the security extension
870
+ * szOID_NTDS_CA_SECURITY_EXT (OID:1.3.6.1.4.1.311.25.2), as specified in [MS-WCCE] sections
871
+ * 2.2.2.7.7.4 and 3.2.2.6.2.1.4.5.9, in the issued certificate. This addresses a Windows
872
+ * Kerberos elevation-of-privilege vulnerability.</p>
873
+ */
874
+ NoSecurityExtension?: boolean;
875
+ /**
876
+ * @public
877
+ * <p>Allow renewal using the same key.</p>
878
+ */
879
+ EnableKeyReuseOnNtTokenKeysetStorageFull?: boolean;
880
+ }
881
+ /**
882
+ * @public
883
+ * <p>The key usage flags represent the purpose (e.g., encipherment, signature) of the key
884
+ * contained in the certificate.</p>
885
+ */
886
+ export interface KeyUsageFlags {
887
+ /**
888
+ * @public
889
+ * <p>The digitalSignature is asserted when the subject public key is used for verifying
890
+ * digital signatures.</p>
891
+ */
892
+ DigitalSignature?: boolean;
893
+ /**
894
+ * @public
895
+ * <p>NonRepudiation is asserted when the subject public key is used to verify digital
896
+ * signatures.</p>
897
+ */
898
+ NonRepudiation?: boolean;
899
+ /**
900
+ * @public
901
+ * <p>KeyEncipherment is asserted when the subject public key is used for enciphering private
902
+ * or secret keys, i.e., for key transport.</p>
903
+ */
904
+ KeyEncipherment?: boolean;
905
+ /**
906
+ * @public
907
+ * <p>DataEncipherment is asserted when the subject public key is used for directly
908
+ * enciphering raw user data without the use of an intermediate symmetric cipher.</p>
909
+ */
910
+ DataEncipherment?: boolean;
911
+ /**
912
+ * @public
913
+ * <p>KeyAgreement is asserted when the subject public key is used for key agreement.</p>
914
+ */
915
+ KeyAgreement?: boolean;
916
+ }
917
+ /**
918
+ * @public
919
+ * <p>The key usage extension defines the purpose (e.g., encipherment, signature) of the key
920
+ * contained in the certificate.</p>
921
+ */
922
+ export interface KeyUsage {
923
+ /**
924
+ * @public
925
+ * <p>Sets the key usage extension to critical.</p>
926
+ */
927
+ Critical?: boolean;
928
+ /**
929
+ * @public
930
+ * <p>The key usage flags represent the purpose (e.g., encipherment, signature) of the key
931
+ * contained in the certificate.</p>
932
+ */
933
+ UsageFlags: KeyUsageFlags | undefined;
934
+ }
935
+ /**
936
+ * @public
937
+ * <p>Certificate extensions for v2 template schema</p>
938
+ */
939
+ export interface ExtensionsV2 {
940
+ /**
941
+ * @public
942
+ * <p>The key usage extension defines the purpose (e.g., encipherment, signature, certificate
943
+ * signing) of the key contained in the certificate.</p>
944
+ */
945
+ KeyUsage: KeyUsage | undefined;
946
+ /**
947
+ * @public
948
+ * <p>Application policies specify what the certificate is used for and its purpose. </p>
949
+ */
950
+ ApplicationPolicies?: ApplicationPolicies;
951
+ }
952
+ /**
953
+ * @public
954
+ * <p>General flags for v2 template schema that defines if the template is for a machine or a
955
+ * user and if the template can be issued using autoenrollment.</p>
956
+ */
957
+ export interface GeneralFlagsV2 {
958
+ /**
959
+ * @public
960
+ * <p>Allows certificate issuance using autoenrollment. Set to TRUE to allow
961
+ * autoenrollment.</p>
962
+ */
963
+ AutoEnrollment?: boolean;
964
+ /**
965
+ * @public
966
+ * <p>Defines if the template is for machines or users. Set to TRUE if the template is for
967
+ * machines. Set to FALSE if the template is for users.</p>
968
+ */
969
+ MachineType?: boolean;
970
+ }
971
+ /**
972
+ * @public
973
+ * @enum
974
+ */
975
+ export declare const KeySpec: {
976
+ readonly KEY_EXCHANGE: "KEY_EXCHANGE";
977
+ readonly SIGNATURE: "SIGNATURE";
978
+ };
979
+ /**
980
+ * @public
981
+ */
982
+ export type KeySpec = (typeof KeySpec)[keyof typeof KeySpec];
983
+ /**
984
+ * @public
985
+ * <p>Defines the attributes of the private key.</p>
986
+ */
987
+ export interface PrivateKeyAttributesV2 {
988
+ /**
989
+ * @public
990
+ * <p>Set the minimum key length of the private key.</p>
991
+ */
992
+ MinimalKeyLength: number | undefined;
993
+ /**
994
+ * @public
995
+ * <p>Defines the purpose of the private key. Set it to "KEY_EXCHANGE" or "SIGNATURE"
996
+ * value.</p>
997
+ */
998
+ KeySpec: KeySpec | string | undefined;
999
+ /**
1000
+ * @public
1001
+ * <p>Defines the cryptographic providers used to generate the private key.</p>
1002
+ */
1003
+ CryptoProviders?: string[];
1004
+ }
1005
+ /**
1006
+ * @public
1007
+ * <p>Private key flags for v2 templates specify the client compatibility, if the private key
1008
+ * can be exported, and if user input is required when using a private key.</p>
1009
+ */
1010
+ export interface PrivateKeyFlagsV2 {
1011
+ /**
1012
+ * @public
1013
+ * <p>Allows the private key to be exported.</p>
1014
+ */
1015
+ ExportableKey?: boolean;
1016
+ /**
1017
+ * @public
1018
+ * <p>Require user input when using the private key for enrollment.</p>
1019
+ */
1020
+ StrongKeyProtectionRequired?: boolean;
1021
+ /**
1022
+ * @public
1023
+ * <p>Defines the minimum client compatibility.</p>
1024
+ */
1025
+ ClientVersion: ClientCompatibilityV2 | string | undefined;
1026
+ }
1027
+ /**
1028
+ * @public
1029
+ * <p>Information to include in the subject name and alternate subject name of the
1030
+ * certificate. The subject name can be common name, directory path, DNS as common name, or
1031
+ * left blank. You can optionally include email to the subject name for user templates. If you
1032
+ * leave the subject name blank then you must set a subject alternate name. The subject
1033
+ * alternate name (SAN) can include globally unique identifier (GUID), DNS, domain DNS, email,
1034
+ * service principal name (SPN), and user principal name (UPN). You can leave the SAN blank.
1035
+ * If you leave the SAN blank, then you must set a subject name.</p>
1036
+ */
1037
+ export interface SubjectNameFlagsV2 {
1038
+ /**
1039
+ * @public
1040
+ * <p>Include the domain DNS in the subject alternate name.</p>
1041
+ */
1042
+ SanRequireDomainDns?: boolean;
1043
+ /**
1044
+ * @public
1045
+ * <p>Include the service principal name (SPN) in the subject alternate name.</p>
1046
+ */
1047
+ SanRequireSpn?: boolean;
1048
+ /**
1049
+ * @public
1050
+ * <p>Include the globally unique identifier (GUID) in the subject alternate name.</p>
1051
+ */
1052
+ SanRequireDirectoryGuid?: boolean;
1053
+ /**
1054
+ * @public
1055
+ * <p>Include the user principal name (UPN) in the subject alternate name.</p>
1056
+ */
1057
+ SanRequireUpn?: boolean;
1058
+ /**
1059
+ * @public
1060
+ * <p>Include the subject's email in the subject alternate name.</p>
1061
+ */
1062
+ SanRequireEmail?: boolean;
1063
+ /**
1064
+ * @public
1065
+ * <p>Include the DNS in the subject alternate name.</p>
1066
+ */
1067
+ SanRequireDns?: boolean;
1068
+ /**
1069
+ * @public
1070
+ * <p>Include the DNS as common name in the subject name.</p>
1071
+ */
1072
+ RequireDnsAsCn?: boolean;
1073
+ /**
1074
+ * @public
1075
+ * <p>Include the subject's email in the subject name.</p>
1076
+ */
1077
+ RequireEmail?: boolean;
1078
+ /**
1079
+ * @public
1080
+ * <p>Include the common name in the subject name.</p>
1081
+ */
1082
+ RequireCommonName?: boolean;
1083
+ /**
1084
+ * @public
1085
+ * <p>Include the directory path in the subject name.</p>
1086
+ */
1087
+ RequireDirectoryPath?: boolean;
1088
+ }
1089
+ /**
1090
+ * @public
1091
+ * <p>v2 template schema that uses Legacy Cryptographic Providers.</p>
1092
+ */
1093
+ export interface TemplateV2 {
1094
+ /**
1095
+ * @public
1096
+ * <p>Certificate validity describes the validity and renewal periods of a certificate.</p>
1097
+ */
1098
+ CertificateValidity: CertificateValidity | undefined;
1099
+ /**
1100
+ * @public
1101
+ * <p>List of templates in Active Directory that are superseded by this template.</p>
1102
+ */
1103
+ SupersededTemplates?: string[];
1104
+ /**
1105
+ * @public
1106
+ * <p>Private key attributes allow you to specify the minimal key length, key spec, and
1107
+ * cryptographic providers for the private key of a certificate for v2 templates. V2 templates
1108
+ * allow you to use Legacy Cryptographic Service Providers.</p>
1109
+ */
1110
+ PrivateKeyAttributes: PrivateKeyAttributesV2 | undefined;
1111
+ /**
1112
+ * @public
1113
+ * <p>Private key flags for v2 templates specify the client compatibility, if the private key
1114
+ * can be exported, and if user input is required when using a private key. </p>
1115
+ */
1116
+ PrivateKeyFlags: PrivateKeyFlagsV2 | undefined;
1117
+ /**
1118
+ * @public
1119
+ * <p>Enrollment flags describe the enrollment settings for certificates such as using the
1120
+ * existing private key and deleting expired or revoked certificates.</p>
1121
+ */
1122
+ EnrollmentFlags: EnrollmentFlagsV2 | undefined;
1123
+ /**
1124
+ * @public
1125
+ * <p>Subject name flags describe the subject name and subject alternate name that is included
1126
+ * in a certificate.</p>
1127
+ */
1128
+ SubjectNameFlags: SubjectNameFlagsV2 | undefined;
1129
+ /**
1130
+ * @public
1131
+ * <p>General flags describe whether the template is used for computers or users and if the
1132
+ * template can be used with autoenrollment.</p>
1133
+ */
1134
+ GeneralFlags: GeneralFlagsV2 | undefined;
1135
+ /**
1136
+ * @public
1137
+ * <p>Extensions describe the key usage extensions and application policies for a
1138
+ * template.</p>
1139
+ */
1140
+ Extensions: ExtensionsV2 | undefined;
1141
+ }
1142
+ /**
1143
+ * @public
1144
+ * <p>Template configurations for v3 template schema.</p>
1145
+ */
1146
+ export interface EnrollmentFlagsV3 {
1147
+ /**
1148
+ * @public
1149
+ * <p>Include symmetric algorithms allowed by the subject.</p>
1150
+ */
1151
+ IncludeSymmetricAlgorithms?: boolean;
1152
+ /**
1153
+ * @public
1154
+ * <p>Require user interaction when the subject is enrolled and the private key associated
1155
+ * with the certificate is used.</p>
1156
+ */
1157
+ UserInteractionRequired?: boolean;
1158
+ /**
1159
+ * @public
1160
+ * <p>Delete expired or revoked certificates instead of archiving them.</p>
1161
+ */
1162
+ RemoveInvalidCertificateFromPersonalStore?: boolean;
1163
+ /**
1164
+ * @public
1165
+ * <p>This flag instructs the CA to not include the security extension
1166
+ * szOID_NTDS_CA_SECURITY_EXT (OID:1.3.6.1.4.1.311.25.2), as specified in [MS-WCCE] sections
1167
+ * 2.2.2.7.7.4 and 3.2.2.6.2.1.4.5.9, in the issued certificate. This addresses a Windows
1168
+ * Kerberos elevation-of-privilege vulnerability.</p>
1169
+ */
1170
+ NoSecurityExtension?: boolean;
1171
+ /**
1172
+ * @public
1173
+ * <p>Allow renewal using the same key.</p>
1174
+ */
1175
+ EnableKeyReuseOnNtTokenKeysetStorageFull?: boolean;
1176
+ }
1177
+ /**
1178
+ * @public
1179
+ * <p>Certificate extensions for v3 template schema</p>
1180
+ */
1181
+ export interface ExtensionsV3 {
1182
+ /**
1183
+ * @public
1184
+ * <p>The key usage extension defines the purpose (e.g., encipherment, signature, certificate
1185
+ * signing) of the key contained in the certificate.</p>
1186
+ */
1187
+ KeyUsage: KeyUsage | undefined;
1188
+ /**
1189
+ * @public
1190
+ * <p>Application policies specify what the certificate is used for and its purpose.</p>
1191
+ */
1192
+ ApplicationPolicies?: ApplicationPolicies;
1193
+ }
1194
+ /**
1195
+ * @public
1196
+ * <p>General flags for v3 template schema that defines if the template is for a machine or a
1197
+ * user and if the template can be issued using autoenrollment.</p>
1198
+ */
1199
+ export interface GeneralFlagsV3 {
1200
+ /**
1201
+ * @public
1202
+ * <p>Allows certificate issuance using autoenrollment. Set to TRUE to allow
1203
+ * autoenrollment.</p>
1204
+ */
1205
+ AutoEnrollment?: boolean;
1206
+ /**
1207
+ * @public
1208
+ * <p>Defines if the template is for machines or users. Set to TRUE if the template is for
1209
+ * machines. Set to FALSE if the template is for users</p>
1210
+ */
1211
+ MachineType?: boolean;
1212
+ }
1213
+ /**
1214
+ * @public
1215
+ * @enum
1216
+ */
1217
+ export declare const HashAlgorithm: {
1218
+ readonly SHA256: "SHA256";
1219
+ readonly SHA384: "SHA384";
1220
+ readonly SHA512: "SHA512";
1221
+ };
1222
+ /**
1223
+ * @public
1224
+ */
1225
+ export type HashAlgorithm = (typeof HashAlgorithm)[keyof typeof HashAlgorithm];
1226
+ /**
1227
+ * @public
1228
+ * @enum
1229
+ */
1230
+ export declare const PrivateKeyAlgorithm: {
1231
+ readonly ECDH_P256: "ECDH_P256";
1232
+ readonly ECDH_P384: "ECDH_P384";
1233
+ readonly ECDH_P521: "ECDH_P521";
1234
+ readonly RSA: "RSA";
1235
+ };
1236
+ /**
1237
+ * @public
1238
+ */
1239
+ export type PrivateKeyAlgorithm = (typeof PrivateKeyAlgorithm)[keyof typeof PrivateKeyAlgorithm];
1240
+ /**
1241
+ * @public
1242
+ * <p>Specifies key usage.</p>
1243
+ */
1244
+ export interface KeyUsagePropertyFlags {
1245
+ /**
1246
+ * @public
1247
+ * <p>Allows key for encryption and decryption.</p>
1248
+ */
1249
+ Decrypt?: boolean;
1250
+ /**
1251
+ * @public
1252
+ * <p>Allows key exchange without encryption.</p>
1253
+ */
1254
+ KeyAgreement?: boolean;
1255
+ /**
1256
+ * @public
1257
+ * <p>Allow key use for digital signature.</p>
1258
+ */
1259
+ Sign?: boolean;
1260
+ }
1261
+ /**
1262
+ * @public
1263
+ * @enum
1264
+ */
1265
+ export declare const KeyUsagePropertyType: {
1266
+ readonly ALL: "ALL";
1267
+ };
1268
+ /**
1269
+ * @public
1270
+ */
1271
+ export type KeyUsagePropertyType = (typeof KeyUsagePropertyType)[keyof typeof KeyUsagePropertyType];
1272
+ /**
1273
+ * @public
1274
+ * <p>The key usage property defines the purpose of the private key contained in the
1275
+ * certificate. You can specify specific purposes using property flags or all by using
1276
+ * property type ALL.</p>
1277
+ */
1278
+ export type KeyUsageProperty = KeyUsageProperty.PropertyFlagsMember | KeyUsageProperty.PropertyTypeMember | KeyUsageProperty.$UnknownMember;
1279
+ /**
1280
+ * @public
1281
+ */
1282
+ export declare namespace KeyUsageProperty {
1283
+ /**
1284
+ * @public
1285
+ * <p>You can specify all key usages using property type ALL. You can use property type or
1286
+ * property flags but not both. </p>
1287
+ */
1288
+ interface PropertyTypeMember {
1289
+ PropertyType: KeyUsagePropertyType | string;
1290
+ PropertyFlags?: never;
1291
+ $unknown?: never;
1292
+ }
1293
+ /**
1294
+ * @public
1295
+ * <p>You can specify key usage for encryption, key agreement, and signature. You can use
1296
+ * property flags or property type but not both. </p>
1297
+ */
1298
+ interface PropertyFlagsMember {
1299
+ PropertyType?: never;
1300
+ PropertyFlags: KeyUsagePropertyFlags;
1301
+ $unknown?: never;
1302
+ }
1303
+ /**
1304
+ * @public
1305
+ */
1306
+ interface $UnknownMember {
1307
+ PropertyType?: never;
1308
+ PropertyFlags?: never;
1309
+ $unknown: [string, any];
1310
+ }
1311
+ interface Visitor<T> {
1312
+ PropertyType: (value: KeyUsagePropertyType | string) => T;
1313
+ PropertyFlags: (value: KeyUsagePropertyFlags) => T;
1314
+ _: (name: string, value: any) => T;
1315
+ }
1316
+ const visit: <T>(value: KeyUsageProperty, visitor: Visitor<T>) => T;
1317
+ }
1318
+ /**
1319
+ * @public
1320
+ * <p>Defines the attributes of the private key.</p>
1321
+ */
1322
+ export interface PrivateKeyAttributesV3 {
1323
+ /**
1324
+ * @public
1325
+ * <p>Set the minimum key length of the private key.</p>
1326
+ */
1327
+ MinimalKeyLength: number | undefined;
1328
+ /**
1329
+ * @public
1330
+ * <p>Defines the purpose of the private key. Set it to "KEY_EXCHANGE" or "SIGNATURE"
1331
+ * value.</p>
1332
+ */
1333
+ KeySpec: KeySpec | string | undefined;
1334
+ /**
1335
+ * @public
1336
+ * <p>Defines the cryptographic providers used to generate the private key.</p>
1337
+ */
1338
+ CryptoProviders?: string[];
1339
+ /**
1340
+ * @public
1341
+ * <p>The key usage property defines the purpose of the private key contained in the
1342
+ * certificate. You can specify specific purposes using property flags or all by using
1343
+ * property type ALL.</p>
1344
+ */
1345
+ KeyUsageProperty: KeyUsageProperty | undefined;
1346
+ /**
1347
+ * @public
1348
+ * <p>Defines the algorithm used to generate the private key.</p>
1349
+ */
1350
+ Algorithm: PrivateKeyAlgorithm | string | undefined;
1351
+ }
1352
+ /**
1353
+ * @public
1354
+ * <p>Private key flags for v3 templates specify the client compatibility, if the private key
1355
+ * can be exported, if user input is required when using a private key, and if an alternate
1356
+ * signature algorithm should be used.</p>
1357
+ */
1358
+ export interface PrivateKeyFlagsV3 {
1359
+ /**
1360
+ * @public
1361
+ * <p>Allows the private key to be exported.</p>
1362
+ */
1363
+ ExportableKey?: boolean;
1364
+ /**
1365
+ * @public
1366
+ * <p>Requirer user input when using the private key for enrollment.</p>
1367
+ */
1368
+ StrongKeyProtectionRequired?: boolean;
1369
+ /**
1370
+ * @public
1371
+ * <p>Reguires the PKCS #1 v2.1 signature format for certificates. You should verify that your
1372
+ * CA, objects, and applications can accept this signature format.</p>
1373
+ */
1374
+ RequireAlternateSignatureAlgorithm?: boolean;
1375
+ /**
1376
+ * @public
1377
+ * <p>Defines the minimum client compatibility.</p>
1378
+ */
1379
+ ClientVersion: ClientCompatibilityV3 | string | undefined;
1380
+ }
1381
+ /**
1382
+ * @public
1383
+ * <p>Information to include in the subject name and alternate subject name of the
1384
+ * certificate. The subject name can be common name, directory path, DNS as common name, or
1385
+ * left blank. You can optionally include email to the subject name for user templates. If you
1386
+ * leave the subject name blank then you must set a subject alternate name. The subject
1387
+ * alternate name (SAN) can include globally unique identifier (GUID), DNS, domain DNS, email,
1388
+ * service principal name (SPN), and user principal name (UPN). You can leave the SAN blank.
1389
+ * If you leave the SAN blank, then you must set a subject name.</p>
1390
+ */
1391
+ export interface SubjectNameFlagsV3 {
1392
+ /**
1393
+ * @public
1394
+ * <p>Include the domain DNS in the subject alternate name.</p>
1395
+ */
1396
+ SanRequireDomainDns?: boolean;
1397
+ /**
1398
+ * @public
1399
+ * <p>Include the service principal name (SPN) in the subject alternate name.</p>
1400
+ */
1401
+ SanRequireSpn?: boolean;
1402
+ /**
1403
+ * @public
1404
+ * <p>Include the globally unique identifier (GUID) in the subject alternate name.</p>
1405
+ */
1406
+ SanRequireDirectoryGuid?: boolean;
1407
+ /**
1408
+ * @public
1409
+ * <p>Include the user principal name (UPN) in the subject alternate name.</p>
1410
+ */
1411
+ SanRequireUpn?: boolean;
1412
+ /**
1413
+ * @public
1414
+ * <p>Include the subject's email in the subject alternate name.</p>
1415
+ */
1416
+ SanRequireEmail?: boolean;
1417
+ /**
1418
+ * @public
1419
+ * <p>Include the DNS in the subject alternate name.</p>
1420
+ */
1421
+ SanRequireDns?: boolean;
1422
+ /**
1423
+ * @public
1424
+ * <p>Include the DNS as common name in the subject name.</p>
1425
+ */
1426
+ RequireDnsAsCn?: boolean;
1427
+ /**
1428
+ * @public
1429
+ * <p>Include the subject's email in the subject name.</p>
1430
+ */
1431
+ RequireEmail?: boolean;
1432
+ /**
1433
+ * @public
1434
+ * <p>Include the common name in the subject name. </p>
1435
+ */
1436
+ RequireCommonName?: boolean;
1437
+ /**
1438
+ * @public
1439
+ * <p>Include the directory path in the subject name.</p>
1440
+ */
1441
+ RequireDirectoryPath?: boolean;
1442
+ }
1443
+ /**
1444
+ * @public
1445
+ * <p>v3 template schema that uses Key Storage Providers.</p>
1446
+ */
1447
+ export interface TemplateV3 {
1448
+ /**
1449
+ * @public
1450
+ * <p>Certificate validity describes the validity and renewal periods of a certificate.</p>
1451
+ */
1452
+ CertificateValidity: CertificateValidity | undefined;
1453
+ /**
1454
+ * @public
1455
+ * <p>List of templates in Active Directory that are superseded by this template.</p>
1456
+ */
1457
+ SupersededTemplates?: string[];
1458
+ /**
1459
+ * @public
1460
+ * <p>Private key attributes allow you to specify the algorithm, minimal key length, key spec,
1461
+ * key usage, and cryptographic providers for the private key of a certificate for v3
1462
+ * templates. V3 templates allow you to use Key Storage Providers.</p>
1463
+ */
1464
+ PrivateKeyAttributes: PrivateKeyAttributesV3 | undefined;
1465
+ /**
1466
+ * @public
1467
+ * <p>Private key flags for v3 templates specify the client compatibility, if the private key
1468
+ * can be exported, if user input is required when using a private key, and if an alternate
1469
+ * signature algorithm should be used.</p>
1470
+ */
1471
+ PrivateKeyFlags: PrivateKeyFlagsV3 | undefined;
1472
+ /**
1473
+ * @public
1474
+ * <p>Enrollment flags describe the enrollment settings for certificates such as using the
1475
+ * existing private key and deleting expired or revoked certificates.</p>
1476
+ */
1477
+ EnrollmentFlags: EnrollmentFlagsV3 | undefined;
1478
+ /**
1479
+ * @public
1480
+ * <p>Subject name flags describe the subject name and subject alternate name that is included
1481
+ * in a certificate.</p>
1482
+ */
1483
+ SubjectNameFlags: SubjectNameFlagsV3 | undefined;
1484
+ /**
1485
+ * @public
1486
+ * <p>General flags describe whether the template is used for computers or users and if the
1487
+ * template can be used with autoenrollment.</p>
1488
+ */
1489
+ GeneralFlags: GeneralFlagsV3 | undefined;
1490
+ /**
1491
+ * @public
1492
+ * <p>Specifies the hash algorithm used to hash the private key.</p>
1493
+ */
1494
+ HashAlgorithm: HashAlgorithm | string | undefined;
1495
+ /**
1496
+ * @public
1497
+ * <p>Extensions describe the key usage extensions and application policies for a
1498
+ * template.</p>
1499
+ */
1500
+ Extensions: ExtensionsV3 | undefined;
1501
+ }
1502
+ /**
1503
+ * @public
1504
+ * <p>Template configurations for v4 template schema.</p>
1505
+ */
1506
+ export interface EnrollmentFlagsV4 {
1507
+ /**
1508
+ * @public
1509
+ * <p>Include symmetric algorithms allowed by the subject.</p>
1510
+ */
1511
+ IncludeSymmetricAlgorithms?: boolean;
1512
+ /**
1513
+ * @public
1514
+ * <p>Require user interaction when the subject is enrolled and the private key associated
1515
+ * with the certificate is used.</p>
1516
+ */
1517
+ UserInteractionRequired?: boolean;
1518
+ /**
1519
+ * @public
1520
+ * <p>Delete expired or revoked certificates instead of archiving them.</p>
1521
+ */
1522
+ RemoveInvalidCertificateFromPersonalStore?: boolean;
1523
+ /**
1524
+ * @public
1525
+ * <p>This flag instructs the CA to not include the security extension
1526
+ * szOID_NTDS_CA_SECURITY_EXT (OID:1.3.6.1.4.1.311.25.2), as specified in [MS-WCCE] sections
1527
+ * 2.2.2.7.7.4 and 3.2.2.6.2.1.4.5.9, in the issued certificate. This addresses a Windows
1528
+ * Kerberos elevation-of-privilege vulnerability.</p>
1529
+ */
1530
+ NoSecurityExtension?: boolean;
1531
+ /**
1532
+ * @public
1533
+ * <p>Allow renewal using the same key.</p>
1534
+ */
1535
+ EnableKeyReuseOnNtTokenKeysetStorageFull?: boolean;
1536
+ }
1537
+ /**
1538
+ * @public
1539
+ * <p>Certificate extensions for v4 template schema</p>
1540
+ */
1541
+ export interface ExtensionsV4 {
1542
+ /**
1543
+ * @public
1544
+ * <p>The key usage extension defines the purpose (e.g., encipherment, signature) of the key
1545
+ * contained in the certificate.</p>
1546
+ */
1547
+ KeyUsage: KeyUsage | undefined;
1548
+ /**
1549
+ * @public
1550
+ * <p>Application policies specify what the certificate is used for and its purpose.</p>
1551
+ */
1552
+ ApplicationPolicies?: ApplicationPolicies;
1553
+ }
1554
+ /**
1555
+ * @public
1556
+ * <p>General flags for v4 template schema that defines if the template is for a machine or a
1557
+ * user and if the template can be issued using autoenrollment.</p>
1558
+ */
1559
+ export interface GeneralFlagsV4 {
1560
+ /**
1561
+ * @public
1562
+ * <p>Allows certificate issuance using autoenrollment. Set to TRUE to allow
1563
+ * autoenrollment.</p>
1564
+ */
1565
+ AutoEnrollment?: boolean;
1566
+ /**
1567
+ * @public
1568
+ * <p>Defines if the template is for machines or users. Set to TRUE if the template is for
1569
+ * machines. Set to FALSE if the template is for users</p>
1570
+ */
1571
+ MachineType?: boolean;
1572
+ }
1573
+ /**
1574
+ * @public
1575
+ * <p>Defines the attributes of the private key.</p>
1576
+ */
1577
+ export interface PrivateKeyAttributesV4 {
1578
+ /**
1579
+ * @public
1580
+ * <p>Set the minimum key length of the private key.</p>
1581
+ */
1582
+ MinimalKeyLength: number | undefined;
1583
+ /**
1584
+ * @public
1585
+ * <p>Defines the purpose of the private key. Set it to "KEY_EXCHANGE" or "SIGNATURE"
1586
+ * value.</p>
1587
+ */
1588
+ KeySpec: KeySpec | string | undefined;
1589
+ /**
1590
+ * @public
1591
+ * <p>Defines the cryptographic providers used to generate the private key.</p>
1592
+ */
1593
+ CryptoProviders?: string[];
1594
+ /**
1595
+ * @public
1596
+ * <p>The key usage property defines the purpose of the private key contained in the
1597
+ * certificate. You can specify specific purposes using property flags or all by using
1598
+ * property type ALL.</p>
1599
+ */
1600
+ KeyUsageProperty?: KeyUsageProperty;
1601
+ /**
1602
+ * @public
1603
+ * <p>Defines the algorithm used to generate the private key.</p>
1604
+ */
1605
+ Algorithm?: PrivateKeyAlgorithm | string;
1606
+ }
1607
+ /**
1608
+ * @public
1609
+ * <p>Private key flags for v4 templates specify the client compatibility, if the private key
1610
+ * can be exported, if user input is required when using a private key, if an alternate
1611
+ * signature algorithm should be used, and if certificates are renewed using the same private
1612
+ * key.</p>
1613
+ */
1614
+ export interface PrivateKeyFlagsV4 {
1615
+ /**
1616
+ * @public
1617
+ * <p>Allows the private key to be exported.</p>
1618
+ */
1619
+ ExportableKey?: boolean;
1620
+ /**
1621
+ * @public
1622
+ * <p>Require user input when using the private key for enrollment.</p>
1623
+ */
1624
+ StrongKeyProtectionRequired?: boolean;
1625
+ /**
1626
+ * @public
1627
+ * <p>Requires the PKCS #1 v2.1 signature format for certificates. You should verify that your
1628
+ * CA, objects, and applications can accept this signature format.</p>
1629
+ */
1630
+ RequireAlternateSignatureAlgorithm?: boolean;
1631
+ /**
1632
+ * @public
1633
+ * <p>Renew certificate using the same private key.</p>
1634
+ */
1635
+ RequireSameKeyRenewal?: boolean;
1636
+ /**
1637
+ * @public
1638
+ * <p>Specifies the cryptographic service provider category used to generate private keys. Set
1639
+ * to TRUE to use Legacy Cryptographic Service Providers and FALSE to use Key Storage
1640
+ * Providers.</p>
1641
+ */
1642
+ UseLegacyProvider?: boolean;
1643
+ /**
1644
+ * @public
1645
+ * <p>Defines the minimum client compatibility.</p>
1646
+ */
1647
+ ClientVersion: ClientCompatibilityV4 | string | undefined;
1648
+ }
1649
+ /**
1650
+ * @public
1651
+ * <p>Information to include in the subject name and alternate subject name of the
1652
+ * certificate. The subject name can be common name, directory path, DNS as common name, or
1653
+ * left blank. You can optionally include email to the subject name for user templates. If you
1654
+ * leave the subject name blank then you must set a subject alternate name. The subject
1655
+ * alternate name (SAN) can include globally unique identifier (GUID), DNS, domain DNS, email,
1656
+ * service principal name (SPN), and user principal name (UPN). You can leave the SAN blank.
1657
+ * If you leave the SAN blank, then you must set a subject name.</p>
1658
+ */
1659
+ export interface SubjectNameFlagsV4 {
1660
+ /**
1661
+ * @public
1662
+ * <p>Include the domain DNS in the subject alternate name.</p>
1663
+ */
1664
+ SanRequireDomainDns?: boolean;
1665
+ /**
1666
+ * @public
1667
+ * <p>Include the service principal name (SPN) in the subject alternate name.</p>
1668
+ */
1669
+ SanRequireSpn?: boolean;
1670
+ /**
1671
+ * @public
1672
+ * <p>Include the globally unique identifier (GUID) in the subject alternate name.</p>
1673
+ */
1674
+ SanRequireDirectoryGuid?: boolean;
1675
+ /**
1676
+ * @public
1677
+ * <p>Include the user principal name (UPN) in the subject alternate name.</p>
1678
+ */
1679
+ SanRequireUpn?: boolean;
1680
+ /**
1681
+ * @public
1682
+ * <p>Include the subject's email in the subject alternate name.</p>
1683
+ */
1684
+ SanRequireEmail?: boolean;
1685
+ /**
1686
+ * @public
1687
+ * <p>Include the DNS in the subject alternate name.</p>
1688
+ */
1689
+ SanRequireDns?: boolean;
1690
+ /**
1691
+ * @public
1692
+ * <p>Include the DNS as common name in the subject name.</p>
1693
+ */
1694
+ RequireDnsAsCn?: boolean;
1695
+ /**
1696
+ * @public
1697
+ * <p>Include the subject's email in the subject name.</p>
1698
+ */
1699
+ RequireEmail?: boolean;
1700
+ /**
1701
+ * @public
1702
+ * <p>Include the common name in the subject name.</p>
1703
+ */
1704
+ RequireCommonName?: boolean;
1705
+ /**
1706
+ * @public
1707
+ * <p>Include the directory path in the subject name.</p>
1708
+ */
1709
+ RequireDirectoryPath?: boolean;
1710
+ }
1711
+ /**
1712
+ * @public
1713
+ * <p>v4 template schema that can use either Legacy Cryptographic Providers or Key Storage
1714
+ * Providers.</p>
1715
+ */
1716
+ export interface TemplateV4 {
1717
+ /**
1718
+ * @public
1719
+ * <p>Certificate validity describes the validity and renewal periods of a certificate.</p>
1720
+ */
1721
+ CertificateValidity: CertificateValidity | undefined;
1722
+ /**
1723
+ * @public
1724
+ * <p>List of templates in Active Directory that are superseded by this template.</p>
1725
+ */
1726
+ SupersededTemplates?: string[];
1727
+ /**
1728
+ * @public
1729
+ * <p>Private key attributes allow you to specify the minimal key length, key spec, key usage,
1730
+ * and cryptographic providers for the private key of a certificate for v4 templates. V4
1731
+ * templates allow you to use either Key Storage Providers or Legacy Cryptographic Service
1732
+ * Providers. You specify the cryptography provider category in private key flags.</p>
1733
+ */
1734
+ PrivateKeyAttributes: PrivateKeyAttributesV4 | undefined;
1735
+ /**
1736
+ * @public
1737
+ * <p>Private key flags for v4 templates specify the client compatibility, if the private key
1738
+ * can be exported, if user input is required when using a private key, if an alternate
1739
+ * signature algorithm should be used, and if certificates are renewed using the same private
1740
+ * key.</p>
1741
+ */
1742
+ PrivateKeyFlags: PrivateKeyFlagsV4 | undefined;
1743
+ /**
1744
+ * @public
1745
+ * <p>Enrollment flags describe the enrollment settings for certificates using the existing
1746
+ * private key and deleting expired or revoked certificates.</p>
1747
+ */
1748
+ EnrollmentFlags: EnrollmentFlagsV4 | undefined;
1749
+ /**
1750
+ * @public
1751
+ * <p>Subject name flags describe the subject name and subject alternate name that is included
1752
+ * in a certificate.</p>
1753
+ */
1754
+ SubjectNameFlags: SubjectNameFlagsV4 | undefined;
1755
+ /**
1756
+ * @public
1757
+ * <p>General flags describe whether the template is used for computers or users and if the
1758
+ * template can be used with autoenrollment.</p>
1759
+ */
1760
+ GeneralFlags: GeneralFlagsV4 | undefined;
1761
+ /**
1762
+ * @public
1763
+ * <p>Specifies the hash algorithm used to hash the private key. Hash algorithm can only be
1764
+ * specified when using Key Storage Providers.</p>
1765
+ */
1766
+ HashAlgorithm?: HashAlgorithm | string;
1767
+ /**
1768
+ * @public
1769
+ * <p>Extensions describe the key usage extensions and application policies for a
1770
+ * template.</p>
1771
+ */
1772
+ Extensions: ExtensionsV4 | undefined;
1773
+ }
1774
+ /**
1775
+ * @public
1776
+ * <p>Template configuration to define the information included in certificates. Define
1777
+ * certificate validity and renewal periods, certificate request handling and enrollment
1778
+ * options, key usage extensions, application policies, and cryptography settings.</p>
1779
+ */
1780
+ export type TemplateDefinition = TemplateDefinition.TemplateV2Member | TemplateDefinition.TemplateV3Member | TemplateDefinition.TemplateV4Member | TemplateDefinition.$UnknownMember;
1781
+ /**
1782
+ * @public
1783
+ */
1784
+ export declare namespace TemplateDefinition {
1785
+ /**
1786
+ * @public
1787
+ * <p>Template configuration to define the information included in certificates. Define
1788
+ * certificate validity and renewal periods, certificate request handling and enrollment
1789
+ * options, key usage extensions, application policies, and cryptography settings.</p>
1790
+ */
1791
+ interface TemplateV2Member {
1792
+ TemplateV2: TemplateV2;
1793
+ TemplateV3?: never;
1794
+ TemplateV4?: never;
1795
+ $unknown?: never;
1796
+ }
1797
+ /**
1798
+ * @public
1799
+ * <p>Template configuration to define the information included in certificates. Define
1800
+ * certificate validity and renewal periods, certificate request handling and enrollment
1801
+ * options, key usage extensions, application policies, and cryptography settings.</p>
1802
+ */
1803
+ interface TemplateV3Member {
1804
+ TemplateV2?: never;
1805
+ TemplateV3: TemplateV3;
1806
+ TemplateV4?: never;
1807
+ $unknown?: never;
1808
+ }
1809
+ /**
1810
+ * @public
1811
+ * <p>Template configuration to define the information included in certificates. Define
1812
+ * certificate validity and renewal periods, certificate request handling and enrollment
1813
+ * options, key usage extensions, application policies, and cryptography settings.</p>
1814
+ */
1815
+ interface TemplateV4Member {
1816
+ TemplateV2?: never;
1817
+ TemplateV3?: never;
1818
+ TemplateV4: TemplateV4;
1819
+ $unknown?: never;
1820
+ }
1821
+ /**
1822
+ * @public
1823
+ */
1824
+ interface $UnknownMember {
1825
+ TemplateV2?: never;
1826
+ TemplateV3?: never;
1827
+ TemplateV4?: never;
1828
+ $unknown: [string, any];
1829
+ }
1830
+ interface Visitor<T> {
1831
+ TemplateV2: (value: TemplateV2) => T;
1832
+ TemplateV3: (value: TemplateV3) => T;
1833
+ TemplateV4: (value: TemplateV4) => T;
1834
+ _: (name: string, value: any) => T;
1835
+ }
1836
+ const visit: <T>(value: TemplateDefinition, visitor: Visitor<T>) => T;
1837
+ }
1838
+ /**
1839
+ * @public
1840
+ */
1841
+ export interface CreateTemplateRequest {
1842
+ /**
1843
+ * @public
1844
+ * <p>The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateConnector.html">CreateConnector</a>.</p>
1845
+ */
1846
+ ConnectorArn: string | undefined;
1847
+ /**
1848
+ * @public
1849
+ * <p>Name of the template. The template name must be unique.</p>
1850
+ */
1851
+ Name: string | undefined;
1852
+ /**
1853
+ * @public
1854
+ * <p>Template configuration to define the information included in certificates. Define
1855
+ * certificate validity and renewal periods, certificate request handling and enrollment
1856
+ * options, key usage extensions, application policies, and cryptography settings.</p>
1857
+ */
1858
+ Definition: TemplateDefinition | undefined;
1859
+ /**
1860
+ * @public
1861
+ * <p>Idempotency token.</p>
1862
+ */
1863
+ ClientToken?: string;
1864
+ /**
1865
+ * @public
1866
+ * <p>Metadata assigned to a template consisting of a key-value pair.</p>
1867
+ */
1868
+ Tags?: Record<string, string>;
1869
+ }
1870
+ /**
1871
+ * @public
1872
+ */
1873
+ export interface CreateTemplateResponse {
1874
+ /**
1875
+ * @public
1876
+ * <p>If successful, the Amazon Resource Name (ARN) of the template.</p>
1877
+ */
1878
+ TemplateArn?: string;
1879
+ }
1880
+ /**
1881
+ * @public
1882
+ */
1883
+ export interface CreateTemplateGroupAccessControlEntryRequest {
1884
+ /**
1885
+ * @public
1886
+ * <p>The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateTemplate.html">CreateTemplate</a>.</p>
1887
+ */
1888
+ TemplateArn: string | undefined;
1889
+ /**
1890
+ * @public
1891
+ * <p>Security identifier (SID) of the group object from Active Directory. The SID starts with
1892
+ * "S-".</p>
1893
+ */
1894
+ GroupSecurityIdentifier: string | undefined;
1895
+ /**
1896
+ * @public
1897
+ * <p>Name of the Active Directory group. This name does not need to match the group name in Active Directory.</p>
1898
+ */
1899
+ GroupDisplayName: string | undefined;
1900
+ /**
1901
+ * @public
1902
+ * <p> Allow or deny permissions for an Active Directory group to enroll or autoenroll certificates for a
1903
+ * template.</p>
1904
+ */
1905
+ AccessRights: AccessRights | undefined;
1906
+ /**
1907
+ * @public
1908
+ * <p>Idempotency token.</p>
1909
+ */
1910
+ ClientToken?: string;
1911
+ }
1912
+ /**
1913
+ * @public
1914
+ */
1915
+ export interface DeleteDirectoryRegistrationRequest {
1916
+ /**
1917
+ * @public
1918
+ * <p>The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateDirectoryRegistration.html">CreateDirectoryRegistration</a>.</p>
1919
+ */
1920
+ DirectoryRegistrationArn: string | undefined;
1921
+ }
1922
+ /**
1923
+ * @public
1924
+ */
1925
+ export interface DeleteServicePrincipalNameRequest {
1926
+ /**
1927
+ * @public
1928
+ * <p>The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateDirectoryRegistration.html">CreateDirectoryRegistration</a>.</p>
1929
+ */
1930
+ DirectoryRegistrationArn: string | undefined;
1931
+ /**
1932
+ * @public
1933
+ * <p> The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateConnector.html">CreateConnector</a>.</p>
1934
+ */
1935
+ ConnectorArn: string | undefined;
1936
+ }
1937
+ /**
1938
+ * @public
1939
+ */
1940
+ export interface DeleteTemplateRequest {
1941
+ /**
1942
+ * @public
1943
+ * <p>The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateTemplate.html">CreateTemplate</a>.</p>
1944
+ */
1945
+ TemplateArn: string | undefined;
1946
+ }
1947
+ /**
1948
+ * @public
1949
+ */
1950
+ export interface DeleteTemplateGroupAccessControlEntryRequest {
1951
+ /**
1952
+ * @public
1953
+ * <p>The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateTemplate.html">CreateTemplate</a>.</p>
1954
+ */
1955
+ TemplateArn: string | undefined;
1956
+ /**
1957
+ * @public
1958
+ * <p>Security identifier (SID) of the group object from Active Directory. The SID starts with
1959
+ * "S-".</p>
1960
+ */
1961
+ GroupSecurityIdentifier: string | undefined;
1962
+ }
1963
+ /**
1964
+ * @public
1965
+ * @enum
1966
+ */
1967
+ export declare const DirectoryRegistrationStatus: {
1968
+ readonly ACTIVE: "ACTIVE";
1969
+ readonly CREATING: "CREATING";
1970
+ readonly DELETING: "DELETING";
1971
+ readonly FAILED: "FAILED";
1972
+ };
1973
+ /**
1974
+ * @public
1975
+ */
1976
+ export type DirectoryRegistrationStatus = (typeof DirectoryRegistrationStatus)[keyof typeof DirectoryRegistrationStatus];
1977
+ /**
1978
+ * @public
1979
+ * @enum
1980
+ */
1981
+ export declare const DirectoryRegistrationStatusReason: {
1982
+ readonly DIRECTORY_ACCESS_DENIED: "DIRECTORY_ACCESS_DENIED";
1983
+ readonly DIRECTORY_NOT_ACTIVE: "DIRECTORY_NOT_ACTIVE";
1984
+ readonly DIRECTORY_NOT_REACHABLE: "DIRECTORY_NOT_REACHABLE";
1985
+ readonly DIRECTORY_RESOURCE_NOT_FOUND: "DIRECTORY_RESOURCE_NOT_FOUND";
1986
+ readonly DIRECTORY_TYPE_NOT_SUPPORTED: "DIRECTORY_TYPE_NOT_SUPPORTED";
1987
+ readonly INTERNAL_FAILURE: "INTERNAL_FAILURE";
1988
+ };
1989
+ /**
1990
+ * @public
1991
+ */
1992
+ export type DirectoryRegistrationStatusReason = (typeof DirectoryRegistrationStatusReason)[keyof typeof DirectoryRegistrationStatusReason];
1993
+ /**
1994
+ * @public
1995
+ * <p>The directory registration represents the authorization of the connector service with a
1996
+ * directory.</p>
1997
+ */
1998
+ export interface DirectoryRegistration {
1999
+ /**
2000
+ * @public
2001
+ * <p>The Amazon Resource Name (ARN) that was returned when you called
2002
+ * CreateDirectoryRegistration. </p>
2003
+ */
2004
+ Arn?: string;
2005
+ /**
2006
+ * @public
2007
+ * <p>The identifier of the Active Directory.</p>
2008
+ */
2009
+ DirectoryId?: string;
2010
+ /**
2011
+ * @public
2012
+ * <p>Status of the directory registration.</p>
2013
+ */
2014
+ Status?: DirectoryRegistrationStatus | string;
2015
+ /**
2016
+ * @public
2017
+ * <p>Additional information about the directory registration status if the status is
2018
+ * failed.</p>
2019
+ */
2020
+ StatusReason?: DirectoryRegistrationStatusReason | string;
2021
+ /**
2022
+ * @public
2023
+ * <p>The date and time that the directory registration was created.</p>
2024
+ */
2025
+ CreatedAt?: Date;
2026
+ /**
2027
+ * @public
2028
+ * <p>The date and time that the directory registration was updated.</p>
2029
+ */
2030
+ UpdatedAt?: Date;
2031
+ }
2032
+ /**
2033
+ * @public
2034
+ * <p>The directory registration represents the authorization of the connector service with
2035
+ * the Active Directory.</p>
2036
+ */
2037
+ export interface DirectoryRegistrationSummary {
2038
+ /**
2039
+ * @public
2040
+ * <p>The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateDirectoryRegistration.html">CreateDirectoryRegistration</a>.</p>
2041
+ */
2042
+ Arn?: string;
2043
+ /**
2044
+ * @public
2045
+ * <p>The identifier of the Active Directory.</p>
2046
+ */
2047
+ DirectoryId?: string;
2048
+ /**
2049
+ * @public
2050
+ * <p>Status of the directory registration.</p>
2051
+ */
2052
+ Status?: DirectoryRegistrationStatus | string;
2053
+ /**
2054
+ * @public
2055
+ * <p>Additional information about the directory registration status if the status is
2056
+ * failed.</p>
2057
+ */
2058
+ StatusReason?: DirectoryRegistrationStatusReason | string;
2059
+ /**
2060
+ * @public
2061
+ * <p>The date and time that the directory registration was created.</p>
2062
+ */
2063
+ CreatedAt?: Date;
2064
+ /**
2065
+ * @public
2066
+ * <p>The date and time that the directory registration was updated.</p>
2067
+ */
2068
+ UpdatedAt?: Date;
2069
+ }
2070
+ /**
2071
+ * @public
2072
+ */
2073
+ export interface GetDirectoryRegistrationRequest {
2074
+ /**
2075
+ * @public
2076
+ * <p>The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateDirectoryRegistration.html">CreateDirectoryRegistration</a>.</p>
2077
+ */
2078
+ DirectoryRegistrationArn: string | undefined;
2079
+ }
2080
+ /**
2081
+ * @public
2082
+ */
2083
+ export interface GetDirectoryRegistrationResponse {
2084
+ /**
2085
+ * @public
2086
+ * <p>The directory registration represents the authorization of the connector service with a
2087
+ * directory.</p>
2088
+ */
2089
+ DirectoryRegistration?: DirectoryRegistration;
2090
+ }
2091
+ /**
2092
+ * @public
2093
+ */
2094
+ export interface ListDirectoryRegistrationsRequest {
2095
+ /**
2096
+ * @public
2097
+ * <p>Use this parameter when paginating results to specify the maximum number of items to
2098
+ * return in the response on each page. If additional items exist beyond the number you
2099
+ * specify, the <code>NextToken</code> element is sent in the response. Use this
2100
+ * <code>NextToken</code> value in a subsequent request to retrieve additional
2101
+ * items.</p>
2102
+ */
2103
+ MaxResults?: number;
2104
+ /**
2105
+ * @public
2106
+ * <p>Use this parameter when paginating results in a subsequent request after you receive a
2107
+ * response with truncated results. Set it to the value of the <code>NextToken</code>
2108
+ * parameter from the response you just received.</p>
2109
+ */
2110
+ NextToken?: string;
2111
+ }
2112
+ /**
2113
+ * @public
2114
+ */
2115
+ export interface ListDirectoryRegistrationsResponse {
2116
+ /**
2117
+ * @public
2118
+ * <p>Summary information about each directory registration you have created.</p>
2119
+ */
2120
+ DirectoryRegistrations?: DirectoryRegistrationSummary[];
2121
+ /**
2122
+ * @public
2123
+ * <p>Use this parameter when paginating results in a subsequent request after you receive a
2124
+ * response with truncated results. Set it to the value of the <code>NextToken</code>
2125
+ * parameter from the response you just received.</p>
2126
+ */
2127
+ NextToken?: string;
2128
+ }
2129
+ /**
2130
+ * @public
2131
+ */
2132
+ export interface GetServicePrincipalNameRequest {
2133
+ /**
2134
+ * @public
2135
+ * <p>The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateDirectoryRegistration.html">CreateDirectoryRegistration</a>.</p>
2136
+ */
2137
+ DirectoryRegistrationArn: string | undefined;
2138
+ /**
2139
+ * @public
2140
+ * <p>The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateConnector.html">CreateConnector</a>.</p>
2141
+ */
2142
+ ConnectorArn: string | undefined;
2143
+ }
2144
+ /**
2145
+ * @public
2146
+ * @enum
2147
+ */
2148
+ export declare const ServicePrincipalNameStatus: {
2149
+ readonly ACTIVE: "ACTIVE";
2150
+ readonly CREATING: "CREATING";
2151
+ readonly DELETING: "DELETING";
2152
+ readonly FAILED: "FAILED";
2153
+ };
2154
+ /**
2155
+ * @public
2156
+ */
2157
+ export type ServicePrincipalNameStatus = (typeof ServicePrincipalNameStatus)[keyof typeof ServicePrincipalNameStatus];
2158
+ /**
2159
+ * @public
2160
+ * @enum
2161
+ */
2162
+ export declare const ServicePrincipalNameStatusReason: {
2163
+ readonly DIRECTORY_ACCESS_DENIED: "DIRECTORY_ACCESS_DENIED";
2164
+ readonly DIRECTORY_NOT_REACHABLE: "DIRECTORY_NOT_REACHABLE";
2165
+ readonly DIRECTORY_RESOURCE_NOT_FOUND: "DIRECTORY_RESOURCE_NOT_FOUND";
2166
+ readonly INTERNAL_FAILURE: "INTERNAL_FAILURE";
2167
+ readonly SPN_EXISTS_ON_DIFFERENT_AD_OBJECT: "SPN_EXISTS_ON_DIFFERENT_AD_OBJECT";
2168
+ };
2169
+ /**
2170
+ * @public
2171
+ */
2172
+ export type ServicePrincipalNameStatusReason = (typeof ServicePrincipalNameStatusReason)[keyof typeof ServicePrincipalNameStatusReason];
2173
+ /**
2174
+ * @public
2175
+ * <p>The service principal name that the connector uses to authenticate with Active Directory.</p>
2176
+ */
2177
+ export interface ServicePrincipalName {
2178
+ /**
2179
+ * @public
2180
+ * <p>The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateDirectoryRegistration.html">CreateDirectoryRegistration</a>.</p>
2181
+ */
2182
+ DirectoryRegistrationArn?: string;
2183
+ /**
2184
+ * @public
2185
+ * <p>The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateConnector.html">CreateConnector.html</a>.</p>
2186
+ */
2187
+ ConnectorArn?: string;
2188
+ /**
2189
+ * @public
2190
+ * <p>The status of a service principal name.</p>
2191
+ */
2192
+ Status?: ServicePrincipalNameStatus | string;
2193
+ /**
2194
+ * @public
2195
+ * <p>Additional information for the status of a service principal name if the status is
2196
+ * failed.</p>
2197
+ */
2198
+ StatusReason?: ServicePrincipalNameStatusReason | string;
2199
+ /**
2200
+ * @public
2201
+ * <p>The date and time that the service principal name was created.</p>
2202
+ */
2203
+ CreatedAt?: Date;
2204
+ /**
2205
+ * @public
2206
+ * <p>The date and time that the service principal name was updated.</p>
2207
+ */
2208
+ UpdatedAt?: Date;
2209
+ }
2210
+ /**
2211
+ * @public
2212
+ */
2213
+ export interface GetServicePrincipalNameResponse {
2214
+ /**
2215
+ * @public
2216
+ * <p>The service principal name that the connector uses to authenticate with Active Directory.</p>
2217
+ */
2218
+ ServicePrincipalName?: ServicePrincipalName;
2219
+ }
2220
+ /**
2221
+ * @public
2222
+ */
2223
+ export interface GetTemplateRequest {
2224
+ /**
2225
+ * @public
2226
+ * <p>The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateTemplate.html">CreateTemplate</a>.</p>
2227
+ */
2228
+ TemplateArn: string | undefined;
2229
+ }
2230
+ /**
2231
+ * @public
2232
+ * <p>The revision version of the template. Template updates will increment the minor
2233
+ * revision. Re-enrolling all certificate holders will increment the major revision.</p>
2234
+ */
2235
+ export interface TemplateRevision {
2236
+ /**
2237
+ * @public
2238
+ * <p>The revision version of the template. Re-enrolling all certificate holders will
2239
+ * increment the major revision.</p>
2240
+ */
2241
+ MajorRevision: number | undefined;
2242
+ /**
2243
+ * @public
2244
+ * <p>The revision version of the template. Re-enrolling all certificate holders will
2245
+ * increment the major revision.</p>
2246
+ */
2247
+ MinorRevision: number | undefined;
2248
+ }
2249
+ /**
2250
+ * @public
2251
+ * @enum
2252
+ */
2253
+ export declare const TemplateStatus: {
2254
+ readonly ACTIVE: "ACTIVE";
2255
+ readonly DELETING: "DELETING";
2256
+ };
2257
+ /**
2258
+ * @public
2259
+ */
2260
+ export type TemplateStatus = (typeof TemplateStatus)[keyof typeof TemplateStatus];
2261
+ /**
2262
+ * @public
2263
+ * <p>An Active Directory compatible certificate template. Connectors issue certificates against these
2264
+ * templates based on the requestor's Active Directory group membership. </p>
2265
+ */
2266
+ export interface Template {
2267
+ /**
2268
+ * @public
2269
+ * <p>The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateTemplate.html">CreateTemplate</a>.</p>
2270
+ */
2271
+ Arn?: string;
2272
+ /**
2273
+ * @public
2274
+ * <p> The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateConnector.html">CreateConnector</a>.</p>
2275
+ */
2276
+ ConnectorArn?: string;
2277
+ /**
2278
+ * @public
2279
+ * <p>Template configuration to define the information included in certificates. Define
2280
+ * certificate validity and renewal periods, certificate request handling and enrollment
2281
+ * options, key usage extensions, application policies, and cryptography settings.</p>
2282
+ */
2283
+ Definition?: TemplateDefinition;
2284
+ /**
2285
+ * @public
2286
+ * <p>Name of the templates. Template names must be unique.</p>
2287
+ */
2288
+ Name?: string;
2289
+ /**
2290
+ * @public
2291
+ * <p>Object identifier of a template.</p>
2292
+ */
2293
+ ObjectIdentifier?: string;
2294
+ /**
2295
+ * @public
2296
+ * <p>The template schema version. Template schema versions can be v2, v3, or v4. The template
2297
+ * configuration options change based on the template schema version.</p>
2298
+ */
2299
+ PolicySchema?: number;
2300
+ /**
2301
+ * @public
2302
+ * <p>Status of the template. Status can be creating, active, deleting, or failed.</p>
2303
+ */
2304
+ Status?: TemplateStatus | string;
2305
+ /**
2306
+ * @public
2307
+ * <p>The version of the template. Template updates will increment the minor revision.
2308
+ * Re-enrolling all certificate holders will increment the major revision.</p>
2309
+ */
2310
+ Revision?: TemplateRevision;
2311
+ /**
2312
+ * @public
2313
+ * <p>The date and time that the template was created.</p>
2314
+ */
2315
+ CreatedAt?: Date;
2316
+ /**
2317
+ * @public
2318
+ * <p>The date and time that the template was updated.</p>
2319
+ */
2320
+ UpdatedAt?: Date;
2321
+ }
2322
+ /**
2323
+ * @public
2324
+ */
2325
+ export interface GetTemplateResponse {
2326
+ /**
2327
+ * @public
2328
+ * <p>A certificate template that the connector uses to issue certificates from a private
2329
+ * CA.</p>
2330
+ */
2331
+ Template?: Template;
2332
+ }
2333
+ /**
2334
+ * @public
2335
+ */
2336
+ export interface GetTemplateGroupAccessControlEntryRequest {
2337
+ /**
2338
+ * @public
2339
+ * <p>The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateTemplate.html">CreateTemplate</a>.</p>
2340
+ */
2341
+ TemplateArn: string | undefined;
2342
+ /**
2343
+ * @public
2344
+ * <p>Security identifier (SID) of the group object from Active Directory. The SID starts with
2345
+ * "S-".</p>
2346
+ */
2347
+ GroupSecurityIdentifier: string | undefined;
2348
+ }
2349
+ /**
2350
+ * @public
2351
+ */
2352
+ export interface GetTemplateGroupAccessControlEntryResponse {
2353
+ /**
2354
+ * @public
2355
+ * <p>An access control entry allows or denies an Active Directory group from enrolling and/or
2356
+ * autoenrolling with a template.</p>
2357
+ */
2358
+ AccessControlEntry?: AccessControlEntry;
2359
+ }
2360
+ /**
2361
+ * @public
2362
+ */
2363
+ export interface ListServicePrincipalNamesRequest {
2364
+ /**
2365
+ * @public
2366
+ * <p>Use this parameter when paginating results to specify the maximum number of items to
2367
+ * return in the response on each page. If additional items exist beyond the number you
2368
+ * specify, the <code>NextToken</code> element is sent in the response. Use this
2369
+ * <code>NextToken</code> value in a subsequent request to retrieve additional
2370
+ * items.</p>
2371
+ */
2372
+ MaxResults?: number;
2373
+ /**
2374
+ * @public
2375
+ * <p>Use this parameter when paginating results in a subsequent request after you receive a
2376
+ * response with truncated results. Set it to the value of the <code>NextToken</code>
2377
+ * parameter from the response you just received.</p>
2378
+ */
2379
+ NextToken?: string;
2380
+ /**
2381
+ * @public
2382
+ * <p>The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateDirectoryRegistration.html">CreateDirectoryRegistration</a>.</p>
2383
+ */
2384
+ DirectoryRegistrationArn: string | undefined;
2385
+ }
2386
+ /**
2387
+ * @public
2388
+ * <p>The service principal name that the connector uses to authenticate with Active Directory.</p>
2389
+ */
2390
+ export interface ServicePrincipalNameSummary {
2391
+ /**
2392
+ * @public
2393
+ * <p>The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateDirectoryRegistration.html">CreateDirectoryRegistration</a>.</p>
2394
+ */
2395
+ DirectoryRegistrationArn?: string;
2396
+ /**
2397
+ * @public
2398
+ * <p>The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateConnector.html">CreateConnector</a>.</p>
2399
+ */
2400
+ ConnectorArn?: string;
2401
+ /**
2402
+ * @public
2403
+ * <p>The status of a service principal name.</p>
2404
+ */
2405
+ Status?: ServicePrincipalNameStatus | string;
2406
+ /**
2407
+ * @public
2408
+ * <p>Additional information for the status of a service principal name if the status is
2409
+ * failed.</p>
2410
+ */
2411
+ StatusReason?: ServicePrincipalNameStatusReason | string;
2412
+ /**
2413
+ * @public
2414
+ * <p>The date and time that the service principal name was created.</p>
2415
+ */
2416
+ CreatedAt?: Date;
2417
+ /**
2418
+ * @public
2419
+ * <p>Time when the service principal name was updated.</p>
2420
+ */
2421
+ UpdatedAt?: Date;
2422
+ }
2423
+ /**
2424
+ * @public
2425
+ */
2426
+ export interface ListServicePrincipalNamesResponse {
2427
+ /**
2428
+ * @public
2429
+ * <p>The service principal name, if any, that the connector uses to authenticate with
2430
+ * Active Directory.</p>
2431
+ */
2432
+ ServicePrincipalNames?: ServicePrincipalNameSummary[];
2433
+ /**
2434
+ * @public
2435
+ * <p>Use this parameter when paginating results in a subsequent request after you receive a
2436
+ * response with truncated results. Set it to the value of the <code>NextToken</code>
2437
+ * parameter from the response you just received.</p>
2438
+ */
2439
+ NextToken?: string;
2440
+ }
2441
+ /**
2442
+ * @public
2443
+ */
2444
+ export interface ListTagsForResourceRequest {
2445
+ /**
2446
+ * @public
2447
+ * <p>The Amazon Resource Name (ARN) that was returned when you created the resource. </p>
2448
+ */
2449
+ ResourceArn: string | undefined;
2450
+ }
2451
+ /**
2452
+ * @public
2453
+ */
2454
+ export interface ListTagsForResourceResponse {
2455
+ /**
2456
+ * @public
2457
+ * <p>The tags, if any, that are associated with your resource.</p>
2458
+ */
2459
+ Tags?: Record<string, string>;
2460
+ }
2461
+ /**
2462
+ * @public
2463
+ */
2464
+ export interface ListTemplateGroupAccessControlEntriesRequest {
2465
+ /**
2466
+ * @public
2467
+ * <p>Use this parameter when paginating results to specify the maximum number of items to
2468
+ * return in the response on each page. If additional items exist beyond the number you
2469
+ * specify, the <code>NextToken</code> element is sent in the response. Use this
2470
+ * <code>NextToken</code> value in a subsequent request to retrieve additional
2471
+ * items.</p>
2472
+ */
2473
+ MaxResults?: number;
2474
+ /**
2475
+ * @public
2476
+ * <p>Use this parameter when paginating results in a subsequent request after you receive a
2477
+ * response with truncated results. Set it to the value of the <code>NextToken</code>
2478
+ * parameter from the response you just received.</p>
2479
+ */
2480
+ NextToken?: string;
2481
+ /**
2482
+ * @public
2483
+ * <p>The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateTemplate.html">CreateTemplate</a>.</p>
2484
+ */
2485
+ TemplateArn: string | undefined;
2486
+ }
2487
+ /**
2488
+ * @public
2489
+ */
2490
+ export interface ListTemplateGroupAccessControlEntriesResponse {
2491
+ /**
2492
+ * @public
2493
+ * <p>An access control entry grants or denies permission to an Active Directory group to enroll
2494
+ * certificates for a template.</p>
2495
+ */
2496
+ AccessControlEntries?: AccessControlEntrySummary[];
2497
+ /**
2498
+ * @public
2499
+ * <p>Use this parameter when paginating results in a subsequent request after you receive a
2500
+ * response with truncated results. Set it to the value of the <code>NextToken</code>
2501
+ * parameter from the response you just received.</p>
2502
+ */
2503
+ NextToken?: string;
2504
+ }
2505
+ /**
2506
+ * @public
2507
+ */
2508
+ export interface ListTemplatesRequest {
2509
+ /**
2510
+ * @public
2511
+ * <p>Use this parameter when paginating results to specify the maximum number of items to
2512
+ * return in the response on each page. If additional items exist beyond the number you
2513
+ * specify, the <code>NextToken</code> element is sent in the response. Use this
2514
+ * <code>NextToken</code> value in a subsequent request to retrieve additional
2515
+ * items.</p>
2516
+ */
2517
+ MaxResults?: number;
2518
+ /**
2519
+ * @public
2520
+ * <p>Use this parameter when paginating results in a subsequent request after you receive a
2521
+ * response with truncated results. Set it to the value of the <code>NextToken</code>
2522
+ * parameter from the response you just received.</p>
2523
+ */
2524
+ NextToken?: string;
2525
+ /**
2526
+ * @public
2527
+ * <p>The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateConnector.html">CreateConnector</a>.</p>
2528
+ */
2529
+ ConnectorArn: string | undefined;
2530
+ }
2531
+ /**
2532
+ * @public
2533
+ * <p>An Active Directory compatible certificate template. Connectors issue certificates against these
2534
+ * templates based on the requestor's Active Directory group membership.</p>
2535
+ */
2536
+ export interface TemplateSummary {
2537
+ /**
2538
+ * @public
2539
+ * <p>The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateTemplate.html">CreateTemplate</a>.</p>
2540
+ */
2541
+ Arn?: string;
2542
+ /**
2543
+ * @public
2544
+ * <p> The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateConnector.html">CreateConnector</a>.</p>
2545
+ */
2546
+ ConnectorArn?: string;
2547
+ /**
2548
+ * @public
2549
+ * <p>Template configuration to define the information included in certificates. Define
2550
+ * certificate validity and renewal periods, certificate request handling and enrollment
2551
+ * options, key usage extensions, application policies, and cryptography settings.</p>
2552
+ */
2553
+ Definition?: TemplateDefinition;
2554
+ /**
2555
+ * @public
2556
+ * <p>Name of the template. The template name must be unique.</p>
2557
+ */
2558
+ Name?: string;
2559
+ /**
2560
+ * @public
2561
+ * <p>Object identifier of a template.</p>
2562
+ */
2563
+ ObjectIdentifier?: string;
2564
+ /**
2565
+ * @public
2566
+ * <p>The template schema version. Template schema versions can be v2, v3, or v4. The template
2567
+ * configuration options change based on the template schema version.</p>
2568
+ */
2569
+ PolicySchema?: number;
2570
+ /**
2571
+ * @public
2572
+ * <p>Status of the template. Status can be creating, active, deleting, or failed.</p>
2573
+ */
2574
+ Status?: TemplateStatus | string;
2575
+ /**
2576
+ * @public
2577
+ * <p>The revision version of the template. Template updates will increment the minor
2578
+ * revision. Re-enrolling all certificate holders will increment the major revision.</p>
2579
+ */
2580
+ Revision?: TemplateRevision;
2581
+ /**
2582
+ * @public
2583
+ * <p>The date and time that the template was created.</p>
2584
+ */
2585
+ CreatedAt?: Date;
2586
+ /**
2587
+ * @public
2588
+ * <p>The date and time that the template was updated.</p>
2589
+ */
2590
+ UpdatedAt?: Date;
2591
+ }
2592
+ /**
2593
+ * @public
2594
+ */
2595
+ export interface ListTemplatesResponse {
2596
+ /**
2597
+ * @public
2598
+ * <p>Custom configuration templates used when issuing a certificate. </p>
2599
+ */
2600
+ Templates?: TemplateSummary[];
2601
+ /**
2602
+ * @public
2603
+ * <p>Use this parameter when paginating results in a subsequent request after you receive a
2604
+ * response with truncated results. Set it to the value of the <code>NextToken</code>
2605
+ * parameter from the response you just received.</p>
2606
+ */
2607
+ NextToken?: string;
2608
+ }
2609
+ /**
2610
+ * @public
2611
+ */
2612
+ export interface TagResourceRequest {
2613
+ /**
2614
+ * @public
2615
+ * <p>The Amazon Resource Name (ARN) that was returned when you created the resource. </p>
2616
+ */
2617
+ ResourceArn: string | undefined;
2618
+ /**
2619
+ * @public
2620
+ * <p>Metadata assigned to a directory registration consisting of a key-value pair.</p>
2621
+ */
2622
+ Tags: Record<string, string> | undefined;
2623
+ }
2624
+ /**
2625
+ * @public
2626
+ */
2627
+ export interface UpdateTemplateGroupAccessControlEntryRequest {
2628
+ /**
2629
+ * @public
2630
+ * <p>The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateTemplate.html">CreateTemplate</a>.</p>
2631
+ */
2632
+ TemplateArn: string | undefined;
2633
+ /**
2634
+ * @public
2635
+ * <p>Security identifier (SID) of the group object from Active Directory. The SID starts with
2636
+ * "S-".</p>
2637
+ */
2638
+ GroupSecurityIdentifier: string | undefined;
2639
+ /**
2640
+ * @public
2641
+ * <p>Name of the Active Directory group. This name does not need to match the group name in Active Directory.</p>
2642
+ */
2643
+ GroupDisplayName?: string;
2644
+ /**
2645
+ * @public
2646
+ * <p>Allow or deny permissions for an Active Directory group to enroll or autoenroll certificates for a
2647
+ * template.</p>
2648
+ */
2649
+ AccessRights?: AccessRights;
2650
+ }
2651
+ /**
2652
+ * @public
2653
+ */
2654
+ export interface UpdateTemplateRequest {
2655
+ /**
2656
+ * @public
2657
+ * <p>The Amazon Resource Name (ARN) that was returned when you called <a href="https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateTemplate.html">CreateTemplate</a>.</p>
2658
+ */
2659
+ TemplateArn: string | undefined;
2660
+ /**
2661
+ * @public
2662
+ * <p>Template configuration to define the information included in certificates. Define
2663
+ * certificate validity and renewal periods, certificate request handling and enrollment
2664
+ * options, key usage extensions, application policies, and cryptography settings.</p>
2665
+ */
2666
+ Definition?: TemplateDefinition;
2667
+ /**
2668
+ * @public
2669
+ * <p>This setting allows the major version of a template to be increased automatically. All
2670
+ * members of Active Directory groups that are allowed to enroll with a template will receive a new
2671
+ * certificate issued using that template.</p>
2672
+ */
2673
+ ReenrollAllCertificateHolders?: boolean;
2674
+ }
2675
+ /**
2676
+ * @public
2677
+ */
2678
+ export interface UntagResourceRequest {
2679
+ /**
2680
+ * @public
2681
+ * <p>The Amazon Resource Name (ARN) that was returned when you created the resource.</p>
2682
+ */
2683
+ ResourceArn: string | undefined;
2684
+ /**
2685
+ * @public
2686
+ * <p>Specifies a list of tag keys that you want to remove from the specified
2687
+ * resources.</p>
2688
+ */
2689
+ TagKeys: string[] | undefined;
2690
+ }