UNPKG

aws-delivlib

Version:

A fabulous library for defining continuous pipelines for building, testing and releasing code libraries.

68 lines (67 loc) 2.19 kB
import { aws_s3 as s3 } from 'aws-cdk-lib'; import { Construct } from 'constructs'; import { RsaPrivateKeySecret } from './private-key'; export interface CertificateSigningRequestProps { /** * The RSA Private Key to use for this CSR. */ privateKey: RsaPrivateKeySecret; /** * The Distinguished Name for this CSR. */ dn: DistinguishedName; /** * The key usage requests for this CSR. * * @example critical,digitalSignature */ keyUsage: string; /** * The extended key usage requests for this CSR. * * @example critical,codeSigning */ extendedKeyUsage?: string; } /** * Creates a Certificate Signing Request (CSR), which will allow a Certificate Authority to provide a signed certificate * that uses the specified RSA Private Key. A CSR document can usually be shared publicly, however it must be noted that * the information provided in the ``dn`` fields, information about the public key and the intended ley usage will be * readable by anyone who can access the CSR. * * @see https://www.openssl.org/docs/manmaster/man1/req.html */ export declare class CertificateSigningRequest extends Construct { /** * The S3 URL to the CSR document. */ readonly pemRequest: string; /** * The S3 URL to a self-signed certificate that corresponds with this CSR. */ readonly selfSignedPemCertificate: string; /** * The S3 bucket where the self-signed certificate is stored. */ readonly outputBucket: s3.IBucket; constructor(parent: Construct, id: string, props: CertificateSigningRequestProps); } /** * Fields that compose the distinguished name of a certificate */ export interface DistinguishedName { /** The Common Name (CN) */ commonName: string; /** The email address (emailAddress) */ emailAddress: string; /** The Country (C) */ country: string; /** The State or Province (ST) */ stateOrProvince: string; /** The locality (L) */ locality: string; /** The organization name (O) */ organizationName: string; /** The organizational unit name (OU) */ organizationalUnitName: string; }