/* * 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 ImportCertificateAuthorityCertificate operation. /// Imports a signed private CA certificate into Amazon Web Services Private CA. This /// action is used when you are using a chain of trust whose root is located outside Amazon /// Web Services Private CA. Before you can call this action, the following preparations /// must in place: /// ///
  1. /// /// In Amazon Web Services Private CA, call the CreateCertificateAuthority /// action to create the private CA that you plan to back with the imported certificate. /// ///
  2. /// /// Call the GetCertificateAuthorityCsr /// action to generate a certificate signing request (CSR). /// ///
  3. /// /// Sign the CSR using a root or intermediate CA hosted by either an on-premises PKI hierarchy /// or by a commercial CA. /// ///
  4. /// /// Create a certificate chain and copy the signed certificate and the certificate chain /// to your working directory. /// ///
/// /// Amazon Web Services Private CA supports three scenarios for installing a CA certificate: /// /// /// /// The following additional requirements apply when you import a CA certificate. /// /// /// /// Enforcement of Critical Constraints /// /// /// /// Amazon Web Services Private CA allows the following extensions to be marked critical /// in the imported CA certificate or chain. /// /// /// /// Amazon Web Services Private CA rejects the following extensions when they are marked /// critical in an imported CA certificate or chain. /// /// ///
public partial class ImportCertificateAuthorityCertificateRequest : AmazonACMPCARequest { private MemoryStream _certificate; private string _certificateAuthorityArn; private MemoryStream _certificateChain; /// /// Gets and sets the property Certificate. /// /// The PEM-encoded certificate for a private CA. This may be a self-signed certificate /// in the case of a root CA, or it may be signed by another CA that you control. /// /// [AWSProperty(Required=true, Min=1, Max=32768)] public MemoryStream Certificate { get { return this._certificate; } set { this._certificate = value; } } // Check to see if Certificate property is set internal bool IsSetCertificate() { return this._certificate != null; } /// /// Gets and sets the property CertificateAuthorityArn. /// /// The Amazon Resource Name (ARN) that was returned when you called CreateCertificateAuthority. /// This must be 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 CertificateChain. /// /// A PEM-encoded file that contains all of your certificates, other than the certificate /// you're importing, chaining up to your root CA. Your Amazon Web Services Private CA-hosted /// or on-premises root certificate is the last in the chain, and each certificate in /// the chain signs the one preceding. /// /// /// /// This parameter must be supplied when you import a subordinate CA. When you import /// a root CA, there is no chain. /// /// [AWSProperty(Min=0, Max=2097152)] public MemoryStream CertificateChain { get { return this._certificateChain; } set { this._certificateChain = value; } } // Check to see if CertificateChain property is set internal bool IsSetCertificateChain() { return this._certificateChain != null; } } }