Class: AWS.ACMPCA
- Inherits:
-
AWS.Service
- Object
- AWS.Service
- AWS.ACMPCA
- Identifier:
- acmpca
- API Version:
- 2017-08-22
- Defined in:
- (unknown)
Overview
Constructs a service interface object. Each API operation is exposed as a function on service.
Service Description
You can use the ACM PCA API to create a private certificate authority (CA). You must first call the CreateCertificateAuthority operation. If successful, the operation returns an Amazon Resource Name (ARN) for your private CA. Use this ARN as input to the GetCertificateAuthorityCsr operation to retrieve the certificate signing request (CSR) for your private CA certificate. Sign the CSR using the root or an intermediate CA in your on-premises PKI hierarchy, and call the ImportCertificateAuthorityCertificate to import your signed private CA certificate into ACM PCA.
Use your private CA to issue and revoke certificates. These are private certificates that identify and secure client computers, servers, applications, services, devices, and users over SSLS/TLS connections within your organization. Call the IssueCertificate operation to issue a certificate. Call the RevokeCertificate operation to revoke a certificate.
Your private CA can optionally create a certificate revocation list (CRL) to track the certificates you revoke. To create a CRL, you must specify a RevocationConfiguration object when you call the CreateCertificateAuthority operation. ACM PCA writes the CRL to an S3 bucket that you specify. You must specify a bucket policy that grants ACM PCA write permission.
You can also call the CreateCertificateAuthorityAuditReport to create an optional audit report, which enumerates all of the issued, valid, expired, and revoked certificates from the CA.
Sending a Request Using ACMPCA
var acmpca = new AWS.ACMPCA();
acmpca.createCertificateAuthority(params, function (err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
Locking the API Version
In order to ensure that the ACMPCA object uses this specific API, you can
construct the object by passing the apiVersion
option to the constructor:
var acmpca = new AWS.ACMPCA({apiVersion: '2017-08-22'});
You can also set the API version globally in AWS.config.apiVersions
using
the acmpca service identifier:
AWS.config.apiVersions = {
acmpca: '2017-08-22',
// other service API versions
};
var acmpca = new AWS.ACMPCA();
Waiter Resource States
This service supports a list of resource states that can be polled using the waitFor() method. The resource states are:
certificateAuthorityCSRCreated, certificateIssued, auditReportCreated
Constructor Summary
-
new AWS.ACMPCA(options = {}) ⇒ Object
constructor
Constructs a service object.
Property Summary
-
endpoint ⇒ AWS.Endpoint
readwrite
An Endpoint object representing the endpoint URL for service requests.
Properties inherited from AWS.Service
Method Summary
-
createCertificateAuthority(params = {}, callback) ⇒ AWS.Request
Creates a private subordinate certificate authority (CA).
-
createCertificateAuthorityAuditReport(params = {}, callback) ⇒ AWS.Request
Creates an audit report that lists every time that your CA private key is used.
-
createPermission(params = {}, callback) ⇒ AWS.Request
Assigns permissions from a private CA to a designated AWS service.
-
deleteCertificateAuthority(params = {}, callback) ⇒ AWS.Request
Deletes a private certificate authority (CA).
-
deletePermission(params = {}, callback) ⇒ AWS.Request
Revokes permissions that a private CA assigned to a designated AWS service.
-
describeCertificateAuthority(params = {}, callback) ⇒ AWS.Request
Lists information about your private certificate authority (CA).
-
describeCertificateAuthorityAuditReport(params = {}, callback) ⇒ AWS.Request
Lists information about a specific audit report created by calling the CreateCertificateAuthorityAuditReport operation.
-
getCertificate(params = {}, callback) ⇒ AWS.Request
Retrieves a certificate from your private CA.
-
getCertificateAuthorityCertificate(params = {}, callback) ⇒ AWS.Request
Retrieves the certificate and certificate chain for your private certificate authority (CA).
-
getCertificateAuthorityCsr(params = {}, callback) ⇒ AWS.Request
Retrieves the certificate signing request (CSR) for your private certificate authority (CA).
-
importCertificateAuthorityCertificate(params = {}, callback) ⇒ AWS.Request
Imports your signed private CA certificate into ACM PCA.
-
issueCertificate(params = {}, callback) ⇒ AWS.Request
Uses your private certificate authority (CA) to issue a client certificate.
-
listCertificateAuthorities(params = {}, callback) ⇒ AWS.Request
Lists the private certificate authorities that you created by using the CreateCertificateAuthority operation.
-
listPermissions(params = {}, callback) ⇒ AWS.Request
Lists all the permissions, if any, that have been assigned by a private CA.
-
listTags(params = {}, callback) ⇒ AWS.Request
Lists the tags, if any, that are associated with your private CA.
-
restoreCertificateAuthority(params = {}, callback) ⇒ AWS.Request
Restores a certificate authority (CA) that is in the DELETED state.
-
revokeCertificate(params = {}, callback) ⇒ AWS.Request
Revokes a certificate that you issued by calling the IssueCertificate operation.
-
tagCertificateAuthority(params = {}, callback) ⇒ AWS.Request
Adds one or more tags to your private CA.
-
untagCertificateAuthority(params = {}, callback) ⇒ AWS.Request
Remove one or more tags from your private CA.
-
updateCertificateAuthority(params = {}, callback) ⇒ AWS.Request
Updates the status or configuration of a private certificate authority (CA).
-
waitFor(state, params = {}, callback) ⇒ AWS.Request
Waits for a given ACMPCA resource.
Methods inherited from AWS.Service
makeRequest, makeUnauthenticatedRequest, setupRequestListeners, defineService
Constructor Details
Property Details
Method Details
createCertificateAuthority(params = {}, callback) ⇒ AWS.Request
Creates a private subordinate certificate authority (CA). You must specify the CA configuration, the revocation configuration, the CA type, and an optional idempotency token. The CA configuration specifies the name of the algorithm and key size to be used to create the CA private key, the type of signing algorithm that the CA uses to sign, and X.500 subject information. The CRL (certificate revocation list) configuration specifies the CRL expiration period in days (the validity period of the CRL), the Amazon S3 bucket that will contain the CRL, and a CNAME alias for the S3 bucket that is included in certificates issued by the CA. If successful, this operation returns the Amazon Resource Name (ARN) of the CA.
createCertificateAuthorityAuditReport(params = {}, callback) ⇒ AWS.Request
Creates an audit report that lists every time that your CA private key is used. The report is saved in the Amazon S3 bucket that you specify on input. The IssueCertificate and RevokeCertificate operations use the private key. You can generate a new report every 30 minutes.
createPermission(params = {}, callback) ⇒ AWS.Request
Assigns permissions from a private CA to a designated AWS service. Services are specified by their service principals and can be given permission to create and retrieve certificates on a private CA. Services can also be given permission to list the active permissions that the private CA has granted. For ACM to automatically renew your private CA's certificates, you must assign all possible permissions from the CA to the ACM service principal.
At this time, you can only assign permissions to ACM (acm.amazonaws.com
). Permissions can be revoked with the DeletePermission operation and listed with the ListPermissions operation.
deleteCertificateAuthority(params = {}, callback) ⇒ AWS.Request
Deletes a private certificate authority (CA). You must provide the ARN (Amazon Resource Name) of the private CA that you want to delete. You can find the ARN by calling the ListCertificateAuthorities operation. Before you can delete a CA, you must disable it. Call the UpdateCertificateAuthority operation and set the CertificateAuthorityStatus parameter to DISABLED
.
Additionally, you can delete a CA if you are waiting for it to be created (the Status field of the CertificateAuthority is CREATING
). You can also delete it if the CA has been created but you haven't yet imported the signed certificate (the Status is PENDING_CERTIFICATE
) into ACM PCA.
If the CA is in one of the previously mentioned states and you call DeleteCertificateAuthority, the CA's status changes to DELETED
. However, the CA won't be permanently deleted until the restoration period has passed. By default, if you do not set the PermanentDeletionTimeInDays
parameter, the CA remains restorable for 30 days. You can set the parameter from 7 to 30 days. The DescribeCertificateAuthority operation returns the time remaining in the restoration window of a Private CA in the DELETED
state. To restore an eligible CA, call the RestoreCertificateAuthority operation.
deletePermission(params = {}, callback) ⇒ AWS.Request
Revokes permissions that a private CA assigned to a designated AWS service. Permissions can be created with the CreatePermission operation and listed with the ListPermissions operation.
describeCertificateAuthority(params = {}, callback) ⇒ AWS.Request
Lists information about your private certificate authority (CA). You specify the private CA on input by its ARN (Amazon Resource Name). The output contains the status of your CA. This can be any of the following:
-
CREATING
- ACM PCA is creating your private certificate authority. -
PENDING_CERTIFICATE
- The certificate is pending. You must use your on-premises root or subordinate CA to sign your private CA CSR and then import it into PCA. -
ACTIVE
- Your private CA is active. -
DISABLED
- Your private CA has been disabled. -
EXPIRED
- Your private CA certificate has expired. -
FAILED
- Your private CA has failed. Your CA can fail because of problems such a network outage or backend AWS failure or other errors. A failed CA can never return to the pending state. You must create a new CA. -
DELETED
- Your private CA is within the restoration period, after which it is permanently deleted. The length of time remaining in the CA's restoration period is also included in this operation's output.
describeCertificateAuthorityAuditReport(params = {}, callback) ⇒ AWS.Request
Lists information about a specific audit report created by calling the CreateCertificateAuthorityAuditReport operation. Audit information is created every time the certificate authority (CA) private key is used. The private key is used when you call the IssueCertificate operation or the RevokeCertificate operation.
getCertificate(params = {}, callback) ⇒ AWS.Request
Retrieves a certificate from your private CA. The ARN of the certificate is returned when you call the IssueCertificate operation. You must specify both the ARN of your private CA and the ARN of the issued certificate when calling the GetCertificate operation. You can retrieve the certificate if it is in the ISSUED state. You can call the CreateCertificateAuthorityAuditReport operation to create a report that contains information about all of the certificates issued and revoked by your private CA.
getCertificateAuthorityCertificate(params = {}, callback) ⇒ AWS.Request
Retrieves the certificate and certificate chain for your private certificate authority (CA). Both the certificate and the chain are base64 PEM-encoded. The chain does not include the CA certificate. Each certificate in the chain signs the one before it.
getCertificateAuthorityCsr(params = {}, callback) ⇒ AWS.Request
Retrieves the certificate signing request (CSR) for your private certificate authority (CA). The CSR is created when you call the CreateCertificateAuthority operation. Take the CSR to your on-premises X.509 infrastructure and sign it by using your root or a subordinate CA. Then import the signed certificate back into ACM PCA by calling the ImportCertificateAuthorityCertificate operation. The CSR is returned as a base64 PEM-encoded string.
importCertificateAuthorityCertificate(params = {}, callback) ⇒ AWS.Request
Imports your signed private CA certificate into ACM PCA. Before you can call this operation, you must create the private certificate authority by calling the CreateCertificateAuthority operation. You must then generate a certificate signing request (CSR) by calling the GetCertificateAuthorityCsr operation. Take the CSR to your on-premises CA and use the root certificate or a subordinate certificate to sign it. Create a certificate chain and copy the signed certificate and the certificate chain to your working directory.
issueCertificate(params = {}, callback) ⇒ AWS.Request
Uses your private certificate authority (CA) to issue a client certificate. This operation returns the Amazon Resource Name (ARN) of the certificate. You can retrieve the certificate by calling the GetCertificate operation and specifying the ARN.
listCertificateAuthorities(params = {}, callback) ⇒ AWS.Request
Lists the private certificate authorities that you created by using the CreateCertificateAuthority operation.
listPermissions(params = {}, callback) ⇒ AWS.Request
Lists all the permissions, if any, that have been assigned by a private CA. Permissions can be granted with the CreatePermission operation and revoked with the DeletePermission operation.
listTags(params = {}, callback) ⇒ AWS.Request
Lists the tags, if any, that are associated with your private CA. Tags are labels that you can use to identify and organize your CAs. Each tag consists of a key and an optional value. Call the TagCertificateAuthority operation to add one or more tags to your CA. Call the UntagCertificateAuthority operation to remove tags.
restoreCertificateAuthority(params = {}, callback) ⇒ AWS.Request
Restores a certificate authority (CA) that is in the DELETED
state. You can restore a CA during the period that you defined in the PermanentDeletionTimeInDays parameter of the DeleteCertificateAuthority operation. Currently, you can specify 7 to 30 days. If you did not specify a PermanentDeletionTimeInDays value, by default you can restore the CA at any time in a 30 day period. You can check the time remaining in the restoration period of a private CA in the DELETED
state by calling the DescribeCertificateAuthority or ListCertificateAuthorities operations. The status of a restored CA is set to its pre-deletion status when the RestoreCertificateAuthority operation returns. To change its status to ACTIVE
, call the UpdateCertificateAuthority operation. If the private CA was in the PENDING_CERTIFICATE
state at deletion, you must use the ImportCertificateAuthorityCertificate operation to import a certificate authority into the private CA before it can be activated. You cannot restore a CA after the restoration period has ended.
revokeCertificate(params = {}, callback) ⇒ AWS.Request
Revokes a certificate that you issued by calling the IssueCertificate operation. If you enable a certificate revocation list (CRL) when you create or update your private CA, information about the revoked certificates will be included in the CRL. ACM PCA writes the CRL to an S3 bucket that you specify. For more information about revocation, see the CrlConfiguration structure. ACM PCA also writes revocation information to the audit report. For more information, see CreateCertificateAuthorityAuditReport.
tagCertificateAuthority(params = {}, callback) ⇒ AWS.Request
Adds one or more tags to your private CA. Tags are labels that you can use to identify and organize your AWS resources. Each tag consists of a key and an optional value. You specify the private CA on input by its Amazon Resource Name (ARN). You specify the tag by using a key-value pair. You can apply a tag to just one private CA if you want to identify a specific characteristic of that CA, or you can apply the same tag to multiple private CAs if you want to filter for a common relationship among those CAs. To remove one or more tags, use the UntagCertificateAuthority operation. Call the ListTags operation to see what tags are associated with your CA.
untagCertificateAuthority(params = {}, callback) ⇒ AWS.Request
Remove one or more tags from your private CA. A tag consists of a key-value pair. If you do not specify the value portion of the tag when calling this operation, the tag will be removed regardless of value. If you specify a value, the tag is removed only if it is associated with the specified value. To add tags to a private CA, use the TagCertificateAuthority. Call the ListTags operation to see what tags are associated with your CA.
updateCertificateAuthority(params = {}, callback) ⇒ AWS.Request
Updates the status or configuration of a private certificate authority (CA). Your private CA must be in the ACTIVE
or DISABLED
state before you can update it. You can disable a private CA that is in the ACTIVE
state or make a CA that is in the DISABLED
state active again.
waitFor(state, params = {}, callback) ⇒ AWS.Request
Waits for a given ACMPCA resource. The final callback or 'complete' event will be fired only when the resource is either in its final state or the waiter has timed out and stopped polling for the final state.
Waiter Resource Details
acmpca.waitFor('certificateAuthorityCSRCreated', params = {}, [callback]) ⇒ AWS.Request
Waits for the certificateAuthorityCSRCreated
state by periodically calling the underlying
ACMPCA.getCertificateAuthorityCsr() operation every 3 seconds
(at most 60 times).
acmpca.waitFor('certificateIssued', params = {}, [callback]) ⇒ AWS.Request
Waits for the certificateIssued
state by periodically calling the underlying
ACMPCA.getCertificate() operation every 3 seconds
(at most 60 times).
acmpca.waitFor('auditReportCreated', params = {}, [callback]) ⇒ AWS.Request
Waits for the auditReportCreated
state by periodically calling the underlying
ACMPCA.describeCertificateAuthorityAuditReport() operation every 3 seconds
(at most 60 times).