import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { CreateCertificateAuthorityAuditReportRequest, CreateCertificateAuthorityAuditReportResponse } from "../models/models_0"; /** * @public */ export type { __MetadataBearer }; /** * @public * * The input for {@link CreateCertificateAuthorityAuditReportCommand}. */ export interface CreateCertificateAuthorityAuditReportCommandInput extends CreateCertificateAuthorityAuditReportRequest { } /** * @public * * The output of {@link CreateCertificateAuthorityAuditReportCommand}. */ export interface CreateCertificateAuthorityAuditReportCommandOutput extends CreateCertificateAuthorityAuditReportResponse, __MetadataBearer { } declare const CreateCertificateAuthorityAuditReportCommand_base: { new (input: CreateCertificateAuthorityAuditReportCommandInput): import("@smithy/core/client").CommandImpl; new (input: CreateCertificateAuthorityAuditReportCommandInput): import("@smithy/core/client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/types").EndpointParameterInstructions; }; /** *

Creates an audit report that lists every time that your CA private key is used to issue a certificate. The IssueCertificate and RevokeCertificate actions use the private key.

To save the audit report to your designated Amazon S3 bucket, you must create a bucket policy that grants Amazon Web Services Private CA permission to access and write to it. For an example policy, see Prepare an Amazon S3 bucket for audit reports.

Amazon Web Services Private CA assets that are stored in Amazon S3 can be protected with encryption. For more information, see Encrypting Your Audit Reports.

You can generate a maximum of one report every 30 minutes.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { ACMPCAClient, CreateCertificateAuthorityAuditReportCommand } from "@aws-sdk/client-acm-pca"; // ES Modules import * // const { ACMPCAClient, CreateCertificateAuthorityAuditReportCommand } = require("@aws-sdk/client-acm-pca"); // CommonJS import * // import type { ACMPCAClientConfig } from "@aws-sdk/client-acm-pca"; * const config = {}; // type is ACMPCAClientConfig * const client = new ACMPCAClient(config); * const input = { // CreateCertificateAuthorityAuditReportRequest * CertificateAuthorityArn: "STRING_VALUE", // required * S3BucketName: "STRING_VALUE", // required * AuditReportResponseFormat: "JSON" || "CSV", // required * }; * const command = new CreateCertificateAuthorityAuditReportCommand(input); * const response = await client.send(command); * // { // CreateCertificateAuthorityAuditReportResponse * // AuditReportId: "STRING_VALUE", * // S3Key: "STRING_VALUE", * // }; * * ``` * * @param CreateCertificateAuthorityAuditReportCommandInput - {@link CreateCertificateAuthorityAuditReportCommandInput} * @returns {@link CreateCertificateAuthorityAuditReportCommandOutput} * @see {@link CreateCertificateAuthorityAuditReportCommandInput} for command's `input` shape. * @see {@link CreateCertificateAuthorityAuditReportCommandOutput} for command's `response` shape. * @see {@link ACMPCAClientResolvedConfig | config} for ACMPCAClient's `config` shape. * * @throws {@link InvalidArgsException} (client fault) *

One or more of the specified arguments was not valid.

* * @throws {@link InvalidArnException} (client fault) *

The requested Amazon Resource Name (ARN) does not refer to an existing resource.

* * @throws {@link InvalidStateException} (client fault) *

The state of the private CA does not allow this action to occur.

* * @throws {@link RequestFailedException} (client fault) *

The request has failed for an unspecified reason.

* * @throws {@link RequestInProgressException} (client fault) *

Your request is already in progress.

* * @throws {@link ResourceNotFoundException} (client fault) *

A resource such as a private CA, S3 bucket, certificate, audit report, or policy cannot be found.

* * @throws {@link ACMPCAServiceException} *

Base exception class for all service exceptions from ACMPCA service.

* * * @public */ export declare class CreateCertificateAuthorityAuditReportCommand extends CreateCertificateAuthorityAuditReportCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: CreateCertificateAuthorityAuditReportRequest; output: CreateCertificateAuthorityAuditReportResponse; }; sdk: { input: CreateCertificateAuthorityAuditReportCommandInput; output: CreateCertificateAuthorityAuditReportCommandOutput; }; }; }