/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the acm-pca-2017-08-22.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.ACMPCA.Model
{
///
/// Container for the parameters to the CreateCertificateAuthorityAuditReport operation.
/// 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
/// actions use the private key.
///
///
///
/// Both Amazon Web Services Private CA and the IAM principal must have permission to
/// write to the S3 bucket that you specify. If the IAM principal making the call does
/// not have permission to write to the bucket, then an exception is thrown. For more
/// information, see Access
/// policies for CRLs in Amazon S3.
///
///
///
/// 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.
///
///
///
public partial class CreateCertificateAuthorityAuditReportRequest : AmazonACMPCARequest
{
private AuditReportResponseFormat _auditReportResponseFormat;
private string _certificateAuthorityArn;
private string _s3BucketName;
///
/// Gets and sets the property AuditReportResponseFormat.
///
/// The format in which to create the report. This can be either JSON or CSV.
///
///
[AWSProperty(Required=true)]
public AuditReportResponseFormat AuditReportResponseFormat
{
get { return this._auditReportResponseFormat; }
set { this._auditReportResponseFormat = value; }
}
// Check to see if AuditReportResponseFormat property is set
internal bool IsSetAuditReportResponseFormat()
{
return this._auditReportResponseFormat != null;
}
///
/// Gets and sets the property CertificateAuthorityArn.
///
/// The Amazon Resource Name (ARN) of the CA to be audited. This is of the form:
///
///
///
/// arn:aws:acm-pca:region:account:certificate-authority/12345678-1234-1234-1234-123456789012
///
.
///
///
[AWSProperty(Required=true, Min=5, Max=200)]
public string CertificateAuthorityArn
{
get { return this._certificateAuthorityArn; }
set { this._certificateAuthorityArn = value; }
}
// Check to see if CertificateAuthorityArn property is set
internal bool IsSetCertificateAuthorityArn()
{
return this._certificateAuthorityArn != null;
}
///
/// Gets and sets the property S3BucketName.
///
/// The name of the S3 bucket that will contain the audit report.
///
///
[AWSProperty(Required=true, Min=3, Max=63)]
public string S3BucketName
{
get { return this._s3BucketName; }
set { this._s3BucketName = value; }
}
// Check to see if S3BucketName property is set
internal bool IsSetS3BucketName()
{
return this._s3BucketName != null;
}
}
}