66 lines
2.4 KiB
TypeScript
66 lines
2.4 KiB
TypeScript
import type { Construct } from 'constructs';
|
|
import type { ICertificate, KeyAlgorithm } from './certificate';
|
|
import { CertificateBase } from './certificate-base';
|
|
import type * as acmpca from '../../aws-acmpca';
|
|
/**
|
|
* Properties for your private certificate
|
|
*/
|
|
export interface PrivateCertificateProps {
|
|
/**
|
|
* Fully-qualified domain name to request a private certificate for.
|
|
*
|
|
* May contain wildcards, such as ``*.domain.com``.
|
|
*/
|
|
readonly domainName: string;
|
|
/**
|
|
* Alternative domain names on your private certificate.
|
|
*
|
|
* Use this to register alternative domain names that represent the same site.
|
|
*
|
|
* @default - No additional FQDNs will be included as alternative domain names.
|
|
*/
|
|
readonly subjectAlternativeNames?: string[];
|
|
/**
|
|
* Private certificate authority (CA) that will be used to issue the certificate.
|
|
*/
|
|
readonly certificateAuthority: acmpca.ICertificateAuthorityRef;
|
|
/**
|
|
* Specifies the algorithm of the public and private key pair that your certificate uses to encrypt data.
|
|
*
|
|
* When you request a private PKI certificate signed by a CA from AWS Private CA, the specified signing algorithm family
|
|
* (RSA or ECDSA) must match the algorithm family of the CA's secret key.
|
|
*
|
|
* @see https://docs.aws.amazon.com/acm/latest/userguide/acm-certificate.html#algorithms.title
|
|
*
|
|
* @default KeyAlgorithm.RSA_2048
|
|
*/
|
|
readonly keyAlgorithm?: KeyAlgorithm;
|
|
/**
|
|
* Enable or disable export of this certificate.
|
|
*
|
|
* If you issue an exportable public certificate, there is a charge at certificate issuance and again when the certificate renews.
|
|
* Ref: https://aws.amazon.com/certificate-manager/pricing
|
|
*
|
|
* @default false
|
|
*/
|
|
readonly allowExport?: boolean;
|
|
}
|
|
/**
|
|
* A private certificate managed by AWS Certificate Manager
|
|
*
|
|
* @resource AWS::CertificateManager::Certificate
|
|
*/
|
|
export declare class PrivateCertificate extends CertificateBase implements ICertificate {
|
|
/** Uniquely identifies this class. */
|
|
static readonly PROPERTY_INJECTION_ID: string;
|
|
/**
|
|
* Import a certificate
|
|
*/
|
|
static fromCertificateArn(scope: Construct, id: string, certificateArn: string): ICertificate;
|
|
/**
|
|
* The certificate's ARN
|
|
*/
|
|
readonly certificateArn: string;
|
|
constructor(scope: Construct, id: string, props: PrivateCertificateProps);
|
|
}
|