本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
以下 Java 示例显示了如何使用该CreateCertificateAuthorityAuditReport操作。
该操作会创建一个审计报告,该报告会列出每次的证书颁发和吊销。该报告保存在您通过输入指定的 Amazon S3 桶中。您可以每 30 分钟生成一次新报告。
package com.amazonaws.samples;
import com.amazonaws.auth.AWSCredentials;
import com.amazonaws.auth.profile.ProfileCredentialsProvider;
import com.amazonaws.client.builder.AwsClientBuilder;
import com.amazonaws.client.builder.AwsClientBuilder.EndpointConfiguration;
import com.amazonaws.AmazonClientException;
import com.amazonaws.auth.AWSStaticCredentialsProvider;
import com.amazonaws.services.acmpca.AWSACMPCA;
import com.amazonaws.services.acmpca.AWSACMPCAClientBuilder;
import com.amazonaws.services.acmpca.model.CreateCertificateAuthorityAuditReportRequest;
import com.amazonaws.services.acmpca.model.CreateCertificateAuthorityAuditReportResult;
import com.amazonaws.services.acmpca.model.RequestInProgressException;
import com.amazonaws.services.acmpca.model.RequestFailedException;
import com.amazonaws.services.acmpca.model.InvalidArgsException;
import com.amazonaws.services.acmpca.model.InvalidArnException;
import com.amazonaws.services.acmpca.model.ResourceNotFoundException;
import com.amazonaws.services.acmpca.model.InvalidStateException;
public class CreateCertificateAuthorityAuditReport {
public static void main(String[] args) throws Exception {
// Retrieve your credentials from the C:\Users\name\.aws\credentials file
// in Windows or the .aws/credentials file in Linux.
AWSCredentials credentials = null;
try {
credentials = new ProfileCredentialsProvider("default").getCredentials();
} catch (Exception e) {
throw new AmazonClientException("Cannot load your credentials from file.", e);
}
// Define the endpoint for your sample.
String endpointRegion = "region
"; // Substitute your region here, e.g. "us-west-2"
String endpointProtocol = "https://acm-pca." + endpointRegion + ".amazonaws.com/";
EndpointConfiguration endpoint =
new AwsClientBuilder.EndpointConfiguration(endpointProtocol, endpointRegion);
// Create a client that you can use to make requests.
AWSACMPCA client = AWSACMPCAClientBuilder.standard()
.withEndpointConfiguration(endpoint)
.withCredentials(new AWSStaticCredentialsProvider(credentials))
.build();
// Create a request object and set the certificate authority ARN.
CreateCertificateAuthorityAuditReportRequest req =
new CreateCertificateAuthorityAuditReportRequest();
// Set the certificate authority ARN.
req.setCertificateAuthorityArn("arn:aws
:acm-pca:us-east-1
:111122223333
:certificate-authority/11223344-1234-1122-2233-112233445566
");
// Specify the S3 bucket name for your report.
req.setS3BucketName("your-bucket-name
");
// Specify the audit response format.
req.setAuditReportResponseFormat("JSON");
// Create a result object.
CreateCertificateAuthorityAuditReportResult result = null;
try {
result = client.createCertificateAuthorityAuditReport(req);
} catch (RequestInProgressException ex) {
throw ex;
} catch (RequestFailedException ex) {
throw ex;
} catch (ResourceNotFoundException ex) {
throw ex;
} catch (InvalidArnException ex) {
throw ex;
} catch (InvalidArgsException ex) {
throw ex;
} catch (InvalidStateException ex) {
throw ex;
}
String ID = result.getAuditReportId();
String S3Key = result.getS3Key();
System.out.println(ID);
System.out.println(S3Key);
}
}
您的输出应类似于以下内容:
58904752-7de3-4bdf-ba89-6953e48c3cc7
audit-report/16075838-061c-4f7a-b54b-49bbc111bcff
/58904752-7de3-4bdf-ba89-6953e48c3cc7
.json