Skip to content

Commit 6c01059

Browse files
author
awstools
committed
feat(client-acm): Adds support for Exportable Public Certificates
1 parent d41fa29 commit 6c01059

23 files changed

+607
-814
lines changed

clients/client-acm/README.md

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,7 @@
66

77
AWS SDK for JavaScript ACM Client for Node.js, Browser and React Native.
88

9-
<fullname>Certificate Manager</fullname>
10-
11-
<p>You can use Certificate Manager (ACM) to manage SSL/TLS certificates for your Amazon Web Services-based websites
12-
and applications. For more information about using ACM, see the <a href="https://docs.aws.amazon.com/acm/latest/userguide/">Certificate Manager User Guide</a>.</p>
9+
<fullname>Certificate Manager</fullname> <p>You can use Certificate Manager (ACM) to manage SSL/TLS certificates for your Amazon Web Services-based websites and applications. For more information about using ACM, see the <a href="https://docs.aws.amazon.com/acm/latest/userguide/">Certificate Manager User Guide</a>.</p>
1310

1411
## Installing
1512

@@ -317,6 +314,14 @@ ResendValidationEmail
317314

318315
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/acm/command/ResendValidationEmailCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-acm/Interface/ResendValidationEmailCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-acm/Interface/ResendValidationEmailCommandOutput/)
319316

317+
</details>
318+
<details>
319+
<summary>
320+
RevokeCertificate
321+
</summary>
322+
323+
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/acm/command/RevokeCertificateCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-acm/Interface/RevokeCertificateCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-acm/Interface/RevokeCertificateCommandOutput/)
324+
320325
</details>
321326
<details>
322327
<summary>

clients/client-acm/src/ACM.ts

Lines changed: 24 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,11 @@ import {
7373
ResendValidationEmailCommandInput,
7474
ResendValidationEmailCommandOutput,
7575
} from "./commands/ResendValidationEmailCommand";
76+
import {
77+
RevokeCertificateCommand,
78+
RevokeCertificateCommandInput,
79+
RevokeCertificateCommandOutput,
80+
} from "./commands/RevokeCertificateCommand";
7681
import {
7782
UpdateCertificateOptionsCommand,
7883
UpdateCertificateOptionsCommandInput,
@@ -94,6 +99,7 @@ const commands = {
9499
RenewCertificateCommand,
95100
RequestCertificateCommand,
96101
ResendValidationEmailCommand,
102+
RevokeCertificateCommand,
97103
UpdateCertificateOptionsCommand,
98104
};
99105

@@ -335,6 +341,23 @@ export interface ACM {
335341
cb: (err: any, data?: ResendValidationEmailCommandOutput) => void
336342
): void;
337343

344+
/**
345+
* @see {@link RevokeCertificateCommand}
346+
*/
347+
revokeCertificate(
348+
args: RevokeCertificateCommandInput,
349+
options?: __HttpHandlerOptions
350+
): Promise<RevokeCertificateCommandOutput>;
351+
revokeCertificate(
352+
args: RevokeCertificateCommandInput,
353+
cb: (err: any, data?: RevokeCertificateCommandOutput) => void
354+
): void;
355+
revokeCertificate(
356+
args: RevokeCertificateCommandInput,
357+
options: __HttpHandlerOptions,
358+
cb: (err: any, data?: RevokeCertificateCommandOutput) => void
359+
): void;
360+
338361
/**
339362
* @see {@link UpdateCertificateOptionsCommand}
340363
*/
@@ -354,9 +377,7 @@ export interface ACM {
354377
}
355378

356379
/**
357-
* <fullname>Certificate Manager</fullname>
358-
* <p>You can use Certificate Manager (ACM) to manage SSL/TLS certificates for your Amazon Web Services-based websites
359-
* and applications. For more information about using ACM, see the <a href="https://docs.aws.amazon.com/acm/latest/userguide/">Certificate Manager User Guide</a>.</p>
380+
* <fullname>Certificate Manager</fullname> <p>You can use Certificate Manager (ACM) to manage SSL/TLS certificates for your Amazon Web Services-based websites and applications. For more information about using ACM, see the <a href="https://docs.aws.amazon.com/acm/latest/userguide/">Certificate Manager User Guide</a>.</p>
360381
* @public
361382
*/
362383
export class ACM extends ACMClient implements ACM {}

clients/client-acm/src/ACMClient.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,7 @@ import {
8888
ResendValidationEmailCommandInput,
8989
ResendValidationEmailCommandOutput,
9090
} from "./commands/ResendValidationEmailCommand";
91+
import { RevokeCertificateCommandInput, RevokeCertificateCommandOutput } from "./commands/RevokeCertificateCommand";
9192
import {
9293
UpdateCertificateOptionsCommandInput,
9394
UpdateCertificateOptionsCommandOutput,
@@ -121,6 +122,7 @@ export type ServiceInputTypes =
121122
| RenewCertificateCommandInput
122123
| RequestCertificateCommandInput
123124
| ResendValidationEmailCommandInput
125+
| RevokeCertificateCommandInput
124126
| UpdateCertificateOptionsCommandInput;
125127

126128
/**
@@ -141,6 +143,7 @@ export type ServiceOutputTypes =
141143
| RenewCertificateCommandOutput
142144
| RequestCertificateCommandOutput
143145
| ResendValidationEmailCommandOutput
146+
| RevokeCertificateCommandOutput
144147
| UpdateCertificateOptionsCommandOutput;
145148

146149
/**
@@ -334,9 +337,7 @@ export type ACMClientResolvedConfigType = __SmithyResolvedConfiguration<__HttpHa
334337
export interface ACMClientResolvedConfig extends ACMClientResolvedConfigType {}
335338

336339
/**
337-
* <fullname>Certificate Manager</fullname>
338-
* <p>You can use Certificate Manager (ACM) to manage SSL/TLS certificates for your Amazon Web Services-based websites
339-
* and applications. For more information about using ACM, see the <a href="https://docs.aws.amazon.com/acm/latest/userguide/">Certificate Manager User Guide</a>.</p>
340+
* <fullname>Certificate Manager</fullname> <p>You can use Certificate Manager (ACM) to manage SSL/TLS certificates for your Amazon Web Services-based websites and applications. For more information about using ACM, see the <a href="https://docs.aws.amazon.com/acm/latest/userguide/">Certificate Manager User Guide</a>.</p>
340341
* @public
341342
*/
342343
export class ACMClient extends __Client<

clients/client-acm/src/commands/AddTagsToCertificateCommand.ts

Lines changed: 3 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -28,20 +28,7 @@ export interface AddTagsToCertificateCommandInput extends AddTagsToCertificateRe
2828
export interface AddTagsToCertificateCommandOutput extends __MetadataBearer {}
2929

3030
/**
31-
* <p>Adds one or more tags to an ACM certificate. Tags are labels that you can use to
32-
* identify and organize your Amazon Web Services resources. Each tag consists of a <code>key</code> and an
33-
* optional <code>value</code>. You specify the certificate on input by its Amazon Resource Name
34-
* (ARN). You specify the tag by using a key-value pair. </p>
35-
* <p>You can apply a tag to just one certificate if you want to identify a specific
36-
* characteristic of that certificate, or you can apply the same tag to multiple certificates if
37-
* you want to filter for a common relationship among those certificates. Similarly, you can
38-
* apply the same tag to multiple resources if you want to specify a relationship among those
39-
* resources. For example, you can add the same tag to an ACM certificate and an Elastic Load
40-
* Balancing load balancer to indicate that they are both used by the same website. For more
41-
* information, see <a href="https://docs.aws.amazon.com/acm/latest/userguide/tags.html">Tagging ACM
42-
* certificates</a>. </p>
43-
* <p>To remove one or more tags, use the <a>RemoveTagsFromCertificate</a> action. To
44-
* view all of the tags that have been applied to the certificate, use the <a>ListTagsForCertificate</a> action. </p>
31+
* <p>Adds one or more tags to an ACM certificate. Tags are labels that you can use to identify and organize your Amazon Web Services resources. Each tag consists of a <code>key</code> and an optional <code>value</code>. You specify the certificate on input by its Amazon Resource Name (ARN). You specify the tag by using a key-value pair. </p> <p>You can apply a tag to just one certificate if you want to identify a specific characteristic of that certificate, or you can apply the same tag to multiple certificates if you want to filter for a common relationship among those certificates. Similarly, you can apply the same tag to multiple resources if you want to specify a relationship among those resources. For example, you can add the same tag to an ACM certificate and an Elastic Load Balancing load balancer to indicate that they are both used by the same website. For more information, see <a href="https://docs.aws.amazon.com/acm/latest/userguide/tags.html">Tagging ACM certificates</a>. </p> <p>To remove one or more tags, use the <a>RemoveTagsFromCertificate</a> action. To view all of the tags that have been applied to the certificate, use the <a>ListTagsForCertificate</a> action. </p>
4532
* @example
4633
* Use a bare-bones client and the command you need to make an API call.
4734
* ```javascript
@@ -76,12 +63,10 @@ export interface AddTagsToCertificateCommandOutput extends __MetadataBearer {}
7663
* <p>An input parameter was invalid.</p>
7764
*
7865
* @throws {@link InvalidTagException} (client fault)
79-
* <p>One or both of the values that make up the key-value pair is not valid. For example, you
80-
* cannot specify a tag value that begins with <code>aws:</code>.</p>
66+
* <p>One or both of the values that make up the key-value pair is not valid. For example, you cannot specify a tag value that begins with <code>aws:</code>.</p>
8167
*
8268
* @throws {@link ResourceNotFoundException} (client fault)
83-
* <p>The specified certificate cannot be found in the caller's account or the caller's account
84-
* cannot be found.</p>
69+
* <p>The specified certificate cannot be found in the caller's account or the caller's account cannot be found.</p>
8570
*
8671
* @throws {@link TagPolicyException} (client fault)
8772
* <p>A specified tag did not comply with an existing tag policy and was rejected.</p>

clients/client-acm/src/commands/DeleteCertificateCommand.ts

Lines changed: 4 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -28,14 +28,7 @@ export interface DeleteCertificateCommandInput extends DeleteCertificateRequest
2828
export interface DeleteCertificateCommandOutput extends __MetadataBearer {}
2929

3030
/**
31-
* <p>Deletes a certificate and its associated private key. If this action succeeds, the
32-
* certificate no longer appears in the list that can be displayed by calling the <a>ListCertificates</a> action or be retrieved by calling the <a>GetCertificate</a> action. The certificate will not be available for use by Amazon Web Services
33-
* services integrated with ACM. </p>
34-
* <note>
35-
* <p>You cannot delete an ACM certificate that is being used by another Amazon Web Services service. To
36-
* delete a certificate that is in use, the certificate association must first be
37-
* removed.</p>
38-
* </note>
31+
* <p>Deletes a certificate and its associated private key. If this action succeeds, the certificate no longer appears in the list that can be displayed by calling the <a>ListCertificates</a> action or be retrieved by calling the <a>GetCertificate</a> action. The certificate will not be available for use by Amazon Web Services services integrated with ACM. </p> <note> <p>You cannot delete an ACM certificate that is being used by another Amazon Web Services service. To delete a certificate that is in use, the certificate association must first be removed.</p> </note>
3932
* @example
4033
* Use a bare-bones client and the command you need to make an API call.
4134
* ```javascript
@@ -61,19 +54,16 @@ export interface DeleteCertificateCommandOutput extends __MetadataBearer {}
6154
* <p>You do not have access required to perform this action.</p>
6255
*
6356
* @throws {@link ConflictException} (client fault)
64-
* <p>You are trying to update a resource or configuration that is already being created or
65-
* updated. Wait for the previous operation to finish and try again.</p>
57+
* <p>You are trying to update a resource or configuration that is already being created or updated. Wait for the previous operation to finish and try again.</p>
6658
*
6759
* @throws {@link InvalidArnException} (client fault)
6860
* <p>The requested Amazon Resource Name (ARN) does not refer to an existing resource.</p>
6961
*
7062
* @throws {@link ResourceInUseException} (client fault)
71-
* <p>The certificate is in use by another Amazon Web Services service in the caller's account. Remove the
72-
* association and try again.</p>
63+
* <p>The certificate is in use by another Amazon Web Services service in the caller's account. Remove the association and try again.</p>
7364
*
7465
* @throws {@link ResourceNotFoundException} (client fault)
75-
* <p>The specified certificate cannot be found in the caller's account or the caller's account
76-
* cannot be found.</p>
66+
* <p>The specified certificate cannot be found in the caller's account or the caller's account cannot be found.</p>
7767
*
7868
* @throws {@link ThrottlingException} (client fault)
7969
* <p>The request was denied because it exceeded a quota.</p>

clients/client-acm/src/commands/DescribeCertificateCommand.ts

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,7 @@ export interface DescribeCertificateCommandInput extends DescribeCertificateRequ
2828
export interface DescribeCertificateCommandOutput extends DescribeCertificateResponse, __MetadataBearer {}
2929

3030
/**
31-
* <p>Returns detailed metadata about the specified ACM certificate.</p>
32-
* <p>If you have just created a certificate using the <code>RequestCertificate</code> action,
33-
* there is a delay of several seconds before you can retrieve information about it.</p>
31+
* <p>Returns detailed metadata about the specified ACM certificate.</p> <p>If you have just created a certificate using the <code>RequestCertificate</code> action, there is a delay of several seconds before you can retrieve information about it.</p>
3432
* @example
3533
* Use a bare-bones client and the command you need to make an API call.
3634
* ```javascript
@@ -128,6 +126,7 @@ export interface DescribeCertificateCommandOutput extends DescribeCertificateRes
128126
* // RenewalEligibility: "ELIGIBLE" || "INELIGIBLE",
129127
* // Options: { // CertificateOptions
130128
* // CertificateTransparencyLoggingPreference: "ENABLED" || "DISABLED",
129+
* // Export: "ENABLED" || "DISABLED",
131130
* // },
132131
* // },
133132
* // };
@@ -144,8 +143,7 @@ export interface DescribeCertificateCommandOutput extends DescribeCertificateRes
144143
* <p>The requested Amazon Resource Name (ARN) does not refer to an existing resource.</p>
145144
*
146145
* @throws {@link ResourceNotFoundException} (client fault)
147-
* <p>The specified certificate cannot be found in the caller's account or the caller's account
148-
* cannot be found.</p>
146+
* <p>The specified certificate cannot be found in the caller's account or the caller's account cannot be found.</p>
149147
*
150148
* @throws {@link ACMServiceException}
151149
* <p>Base exception class for all service exceptions from ACM service.</p>

clients/client-acm/src/commands/ExportCertificateCommand.ts

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -33,13 +33,7 @@ export interface ExportCertificateCommandInput extends ExportCertificateRequest
3333
export interface ExportCertificateCommandOutput extends ExportCertificateResponse, __MetadataBearer {}
3434

3535
/**
36-
* <p>Exports a private certificate issued by a private certificate authority (CA) for use
37-
* anywhere. The exported file contains the certificate, the certificate chain, and the encrypted
38-
* private 2048-bit RSA key associated with the public key that is embedded in the certificate.
39-
* For security, you must assign a passphrase for the private key when exporting it. </p>
40-
* <p>For information about exporting and formatting a certificate using the ACM console or
41-
* CLI, see <a href="https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-export-private.html">Export a
42-
* Private Certificate</a>.</p>
36+
* <p>Exports a private certificate issued by a private certificate authority (CA) or public certificate for use anywhere. The exported file contains the certificate, the certificate chain, and the encrypted private key associated with the public key that is embedded in the certificate. For security, you must assign a passphrase for the private key when exporting it. </p> <p>For information about exporting and formatting a certificate using the ACM console or CLI, see <a href="https://docs.aws.amazon.com/acm/latest/userguide/export-private.html">Export a private certificate</a> and <a href="https://docs.aws.amazon.com/acm/latest/userguide/export-public-certificate">Export a public certificate</a>.</p>
4337
* @example
4438
* Use a bare-bones client and the command you need to make an API call.
4539
* ```javascript
@@ -70,12 +64,10 @@ export interface ExportCertificateCommandOutput extends ExportCertificateRespons
7064
* <p>The requested Amazon Resource Name (ARN) does not refer to an existing resource.</p>
7165
*
7266
* @throws {@link RequestInProgressException} (client fault)
73-
* <p>The certificate request is in process and the certificate in your account has not yet been
74-
* issued.</p>
67+
* <p>The certificate request is in process and the certificate in your account has not yet been issued.</p>
7568
*
7669
* @throws {@link ResourceNotFoundException} (client fault)
77-
* <p>The specified certificate cannot be found in the caller's account or the caller's account
78-
* cannot be found.</p>
70+
* <p>The specified certificate cannot be found in the caller's account or the caller's account cannot be found.</p>
7971
*
8072
* @throws {@link ACMServiceException}
8173
* <p>Base exception class for all service exceptions from ACM service.</p>

clients/client-acm/src/commands/GetCertificateCommand.ts

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -28,12 +28,7 @@ export interface GetCertificateCommandInput extends GetCertificateRequest {}
2828
export interface GetCertificateCommandOutput extends GetCertificateResponse, __MetadataBearer {}
2929

3030
/**
31-
* <p>Retrieves a certificate and its certificate chain. The certificate may be either a public
32-
* or private certificate issued using the ACM <code>RequestCertificate</code> action, or a
33-
* certificate imported into ACM using the <code>ImportCertificate</code> action. The chain
34-
* consists of the certificate of the issuing CA and the intermediate certificates of any other
35-
* subordinate CAs. All of the certificates are base64 encoded. You can use <a href="https://wiki.openssl.org/index.php/Command_Line_Utilities">OpenSSL</a> to decode
36-
* the certificates and inspect individual fields.</p>
31+
* <p>Retrieves a certificate and its certificate chain. The certificate may be either a public or private certificate issued using the ACM <code>RequestCertificate</code> action, or a certificate imported into ACM using the <code>ImportCertificate</code> action. The chain consists of the certificate of the issuing CA and the intermediate certificates of any other subordinate CAs. All of the certificates are base64 encoded. You can use <a href="https://wiki.openssl.org/index.php/Command_Line_Utilities">OpenSSL</a> to decode the certificates and inspect individual fields.</p>
3732
* @example
3833
* Use a bare-bones client and the command you need to make an API call.
3934
* ```javascript
@@ -62,12 +57,10 @@ export interface GetCertificateCommandOutput extends GetCertificateResponse, __M
6257
* <p>The requested Amazon Resource Name (ARN) does not refer to an existing resource.</p>
6358
*
6459
* @throws {@link RequestInProgressException} (client fault)
65-
* <p>The certificate request is in process and the certificate in your account has not yet been
66-
* issued.</p>
60+
* <p>The certificate request is in process and the certificate in your account has not yet been issued.</p>
6761
*
6862
* @throws {@link ResourceNotFoundException} (client fault)
69-
* <p>The specified certificate cannot be found in the caller's account or the caller's account
70-
* cannot be found.</p>
63+
* <p>The specified certificate cannot be found in the caller's account or the caller's account cannot be found.</p>
7164
*
7265
* @throws {@link ACMServiceException}
7366
* <p>Base exception class for all service exceptions from ACM service.</p>

0 commit comments

Comments
 (0)