gcp.certificateauthority.Authority
Explore with Pulumi AI
A CertificateAuthority represents an individual Certificate Authority. A CertificateAuthority can be used to create Certificates.
To get more information about CertificateAuthority, see:
- API documentation
- How-to Guides
Warning: On newer versions of the provider, you must explicitly set
deletion_protection=false(and runpulumi upto write the field to state) in order to destroy a CertificateAuthority. It is recommended to not set this field (or set it to true) until you’re ready to destroy.
Example Usage
Privateca Certificate Authority Basic
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const _default = new gcp.certificateauthority.Authority("default", {
    pool: "ca-pool",
    certificateAuthorityId: "my-certificate-authority",
    location: "us-central1",
    deletionProtection: true,
    config: {
        subjectConfig: {
            subject: {
                organization: "ACME",
                commonName: "my-certificate-authority",
            },
        },
        x509Config: {
            caOptions: {
                isCa: true,
            },
            keyUsage: {
                baseKeyUsage: {
                    certSign: true,
                    crlSign: true,
                },
                extendedKeyUsage: {},
            },
        },
    },
    lifetime: `${10 * 365 * 24 * 3600}s`,
    keySpec: {
        algorithm: "RSA_PKCS1_4096_SHA256",
    },
});
import pulumi
import pulumi_gcp as gcp
default = gcp.certificateauthority.Authority("default",
    pool="ca-pool",
    certificate_authority_id="my-certificate-authority",
    location="us-central1",
    deletion_protection=True,
    config={
        "subject_config": {
            "subject": {
                "organization": "ACME",
                "common_name": "my-certificate-authority",
            },
        },
        "x509_config": {
            "ca_options": {
                "is_ca": True,
            },
            "key_usage": {
                "base_key_usage": {
                    "cert_sign": True,
                    "crl_sign": True,
                },
                "extended_key_usage": {},
            },
        },
    },
    lifetime=f"{10 * 365 * 24 * 3600}s",
    key_spec={
        "algorithm": "RSA_PKCS1_4096_SHA256",
    })
package main
import (
	"fmt"
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/certificateauthority"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := certificateauthority.NewAuthority(ctx, "default", &certificateauthority.AuthorityArgs{
			Pool:                   pulumi.String("ca-pool"),
			CertificateAuthorityId: pulumi.String("my-certificate-authority"),
			Location:               pulumi.String("us-central1"),
			DeletionProtection:     pulumi.Bool(true),
			Config: &certificateauthority.AuthorityConfigArgs{
				SubjectConfig: &certificateauthority.AuthorityConfigSubjectConfigArgs{
					Subject: &certificateauthority.AuthorityConfigSubjectConfigSubjectArgs{
						Organization: pulumi.String("ACME"),
						CommonName:   pulumi.String("my-certificate-authority"),
					},
				},
				X509Config: &certificateauthority.AuthorityConfigX509ConfigArgs{
					CaOptions: &certificateauthority.AuthorityConfigX509ConfigCaOptionsArgs{
						IsCa: pulumi.Bool(true),
					},
					KeyUsage: &certificateauthority.AuthorityConfigX509ConfigKeyUsageArgs{
						BaseKeyUsage: &certificateauthority.AuthorityConfigX509ConfigKeyUsageBaseKeyUsageArgs{
							CertSign: pulumi.Bool(true),
							CrlSign:  pulumi.Bool(true),
						},
						ExtendedKeyUsage: &certificateauthority.AuthorityConfigX509ConfigKeyUsageExtendedKeyUsageArgs{},
					},
				},
			},
			Lifetime: pulumi.Sprintf("%vs", 10*365*24*3600),
			KeySpec: &certificateauthority.AuthorityKeySpecArgs{
				Algorithm: pulumi.String("RSA_PKCS1_4096_SHA256"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() => 
{
    var @default = new Gcp.CertificateAuthority.Authority("default", new()
    {
        Pool = "ca-pool",
        CertificateAuthorityId = "my-certificate-authority",
        Location = "us-central1",
        DeletionProtection = true,
        Config = new Gcp.CertificateAuthority.Inputs.AuthorityConfigArgs
        {
            SubjectConfig = new Gcp.CertificateAuthority.Inputs.AuthorityConfigSubjectConfigArgs
            {
                Subject = new Gcp.CertificateAuthority.Inputs.AuthorityConfigSubjectConfigSubjectArgs
                {
                    Organization = "ACME",
                    CommonName = "my-certificate-authority",
                },
            },
            X509Config = new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigArgs
            {
                CaOptions = new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigCaOptionsArgs
                {
                    IsCa = true,
                },
                KeyUsage = new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigKeyUsageArgs
                {
                    BaseKeyUsage = new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigKeyUsageBaseKeyUsageArgs
                    {
                        CertSign = true,
                        CrlSign = true,
                    },
                    ExtendedKeyUsage = null,
                },
            },
        },
        Lifetime = $"{10 * 365 * 24 * 3600}s",
        KeySpec = new Gcp.CertificateAuthority.Inputs.AuthorityKeySpecArgs
        {
            Algorithm = "RSA_PKCS1_4096_SHA256",
        },
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.certificateauthority.Authority;
import com.pulumi.gcp.certificateauthority.AuthorityArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigSubjectConfigArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigSubjectConfigSubjectArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigX509ConfigArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigX509ConfigCaOptionsArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigX509ConfigKeyUsageArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigX509ConfigKeyUsageBaseKeyUsageArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigX509ConfigKeyUsageExtendedKeyUsageArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityKeySpecArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var default_ = new Authority("default", AuthorityArgs.builder()
            .pool("ca-pool")
            .certificateAuthorityId("my-certificate-authority")
            .location("us-central1")
            .deletionProtection(true)
            .config(AuthorityConfigArgs.builder()
                .subjectConfig(AuthorityConfigSubjectConfigArgs.builder()
                    .subject(AuthorityConfigSubjectConfigSubjectArgs.builder()
                        .organization("ACME")
                        .commonName("my-certificate-authority")
                        .build())
                    .build())
                .x509Config(AuthorityConfigX509ConfigArgs.builder()
                    .caOptions(AuthorityConfigX509ConfigCaOptionsArgs.builder()
                        .isCa(true)
                        .build())
                    .keyUsage(AuthorityConfigX509ConfigKeyUsageArgs.builder()
                        .baseKeyUsage(AuthorityConfigX509ConfigKeyUsageBaseKeyUsageArgs.builder()
                            .certSign(true)
                            .crlSign(true)
                            .build())
                        .extendedKeyUsage()
                        .build())
                    .build())
                .build())
            .lifetime(String.format("%ss", 10 * 365 * 24 * 3600))
            .keySpec(AuthorityKeySpecArgs.builder()
                .algorithm("RSA_PKCS1_4096_SHA256")
                .build())
            .build());
    }
}
Coming soon!
Privateca Certificate Authority Subordinate
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const root_ca = new gcp.certificateauthority.Authority("root-ca", {
    pool: "ca-pool",
    certificateAuthorityId: "my-certificate-authority-root",
    location: "us-central1",
    config: {
        subjectConfig: {
            subject: {
                organization: "ACME",
                commonName: "my-certificate-authority",
            },
        },
        x509Config: {
            caOptions: {
                isCa: true,
            },
            keyUsage: {
                baseKeyUsage: {
                    certSign: true,
                    crlSign: true,
                },
                extendedKeyUsage: {},
            },
        },
    },
    keySpec: {
        algorithm: "RSA_PKCS1_4096_SHA256",
    },
    deletionProtection: false,
    skipGracePeriod: true,
    ignoreActiveCertificatesOnDeletion: true,
});
const _default = new gcp.certificateauthority.Authority("default", {
    pool: "ca-pool",
    certificateAuthorityId: "my-certificate-authority-sub",
    location: "us-central1",
    deletionProtection: true,
    subordinateConfig: {
        certificateAuthority: root_ca.name,
    },
    config: {
        subjectConfig: {
            subject: {
                organization: "ACME",
                commonName: "my-subordinate-authority",
            },
        },
        x509Config: {
            caOptions: {
                isCa: true,
                zeroMaxIssuerPathLength: true,
            },
            keyUsage: {
                baseKeyUsage: {
                    certSign: true,
                    crlSign: true,
                },
                extendedKeyUsage: {},
            },
        },
    },
    lifetime: `${5 * 365 * 24 * 3600}s`,
    keySpec: {
        algorithm: "RSA_PKCS1_2048_SHA256",
    },
    type: "SUBORDINATE",
});
import pulumi
import pulumi_gcp as gcp
root_ca = gcp.certificateauthority.Authority("root-ca",
    pool="ca-pool",
    certificate_authority_id="my-certificate-authority-root",
    location="us-central1",
    config={
        "subject_config": {
            "subject": {
                "organization": "ACME",
                "common_name": "my-certificate-authority",
            },
        },
        "x509_config": {
            "ca_options": {
                "is_ca": True,
            },
            "key_usage": {
                "base_key_usage": {
                    "cert_sign": True,
                    "crl_sign": True,
                },
                "extended_key_usage": {},
            },
        },
    },
    key_spec={
        "algorithm": "RSA_PKCS1_4096_SHA256",
    },
    deletion_protection=False,
    skip_grace_period=True,
    ignore_active_certificates_on_deletion=True)
default = gcp.certificateauthority.Authority("default",
    pool="ca-pool",
    certificate_authority_id="my-certificate-authority-sub",
    location="us-central1",
    deletion_protection=True,
    subordinate_config={
        "certificate_authority": root_ca.name,
    },
    config={
        "subject_config": {
            "subject": {
                "organization": "ACME",
                "common_name": "my-subordinate-authority",
            },
        },
        "x509_config": {
            "ca_options": {
                "is_ca": True,
                "zero_max_issuer_path_length": True,
            },
            "key_usage": {
                "base_key_usage": {
                    "cert_sign": True,
                    "crl_sign": True,
                },
                "extended_key_usage": {},
            },
        },
    },
    lifetime=f"{5 * 365 * 24 * 3600}s",
    key_spec={
        "algorithm": "RSA_PKCS1_2048_SHA256",
    },
    type="SUBORDINATE")
package main
import (
	"fmt"
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/certificateauthority"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		root_ca, err := certificateauthority.NewAuthority(ctx, "root-ca", &certificateauthority.AuthorityArgs{
			Pool:                   pulumi.String("ca-pool"),
			CertificateAuthorityId: pulumi.String("my-certificate-authority-root"),
			Location:               pulumi.String("us-central1"),
			Config: &certificateauthority.AuthorityConfigArgs{
				SubjectConfig: &certificateauthority.AuthorityConfigSubjectConfigArgs{
					Subject: &certificateauthority.AuthorityConfigSubjectConfigSubjectArgs{
						Organization: pulumi.String("ACME"),
						CommonName:   pulumi.String("my-certificate-authority"),
					},
				},
				X509Config: &certificateauthority.AuthorityConfigX509ConfigArgs{
					CaOptions: &certificateauthority.AuthorityConfigX509ConfigCaOptionsArgs{
						IsCa: pulumi.Bool(true),
					},
					KeyUsage: &certificateauthority.AuthorityConfigX509ConfigKeyUsageArgs{
						BaseKeyUsage: &certificateauthority.AuthorityConfigX509ConfigKeyUsageBaseKeyUsageArgs{
							CertSign: pulumi.Bool(true),
							CrlSign:  pulumi.Bool(true),
						},
						ExtendedKeyUsage: &certificateauthority.AuthorityConfigX509ConfigKeyUsageExtendedKeyUsageArgs{},
					},
				},
			},
			KeySpec: &certificateauthority.AuthorityKeySpecArgs{
				Algorithm: pulumi.String("RSA_PKCS1_4096_SHA256"),
			},
			DeletionProtection:                 pulumi.Bool(false),
			SkipGracePeriod:                    pulumi.Bool(true),
			IgnoreActiveCertificatesOnDeletion: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = certificateauthority.NewAuthority(ctx, "default", &certificateauthority.AuthorityArgs{
			Pool:                   pulumi.String("ca-pool"),
			CertificateAuthorityId: pulumi.String("my-certificate-authority-sub"),
			Location:               pulumi.String("us-central1"),
			DeletionProtection:     pulumi.Bool(true),
			SubordinateConfig: &certificateauthority.AuthoritySubordinateConfigArgs{
				CertificateAuthority: root_ca.Name,
			},
			Config: &certificateauthority.AuthorityConfigArgs{
				SubjectConfig: &certificateauthority.AuthorityConfigSubjectConfigArgs{
					Subject: &certificateauthority.AuthorityConfigSubjectConfigSubjectArgs{
						Organization: pulumi.String("ACME"),
						CommonName:   pulumi.String("my-subordinate-authority"),
					},
				},
				X509Config: &certificateauthority.AuthorityConfigX509ConfigArgs{
					CaOptions: &certificateauthority.AuthorityConfigX509ConfigCaOptionsArgs{
						IsCa:                    pulumi.Bool(true),
						ZeroMaxIssuerPathLength: pulumi.Bool(true),
					},
					KeyUsage: &certificateauthority.AuthorityConfigX509ConfigKeyUsageArgs{
						BaseKeyUsage: &certificateauthority.AuthorityConfigX509ConfigKeyUsageBaseKeyUsageArgs{
							CertSign: pulumi.Bool(true),
							CrlSign:  pulumi.Bool(true),
						},
						ExtendedKeyUsage: &certificateauthority.AuthorityConfigX509ConfigKeyUsageExtendedKeyUsageArgs{},
					},
				},
			},
			Lifetime: pulumi.Sprintf("%vs", 5*365*24*3600),
			KeySpec: &certificateauthority.AuthorityKeySpecArgs{
				Algorithm: pulumi.String("RSA_PKCS1_2048_SHA256"),
			},
			Type: pulumi.String("SUBORDINATE"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() => 
{
    var root_ca = new Gcp.CertificateAuthority.Authority("root-ca", new()
    {
        Pool = "ca-pool",
        CertificateAuthorityId = "my-certificate-authority-root",
        Location = "us-central1",
        Config = new Gcp.CertificateAuthority.Inputs.AuthorityConfigArgs
        {
            SubjectConfig = new Gcp.CertificateAuthority.Inputs.AuthorityConfigSubjectConfigArgs
            {
                Subject = new Gcp.CertificateAuthority.Inputs.AuthorityConfigSubjectConfigSubjectArgs
                {
                    Organization = "ACME",
                    CommonName = "my-certificate-authority",
                },
            },
            X509Config = new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigArgs
            {
                CaOptions = new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigCaOptionsArgs
                {
                    IsCa = true,
                },
                KeyUsage = new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigKeyUsageArgs
                {
                    BaseKeyUsage = new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigKeyUsageBaseKeyUsageArgs
                    {
                        CertSign = true,
                        CrlSign = true,
                    },
                    ExtendedKeyUsage = null,
                },
            },
        },
        KeySpec = new Gcp.CertificateAuthority.Inputs.AuthorityKeySpecArgs
        {
            Algorithm = "RSA_PKCS1_4096_SHA256",
        },
        DeletionProtection = false,
        SkipGracePeriod = true,
        IgnoreActiveCertificatesOnDeletion = true,
    });
    var @default = new Gcp.CertificateAuthority.Authority("default", new()
    {
        Pool = "ca-pool",
        CertificateAuthorityId = "my-certificate-authority-sub",
        Location = "us-central1",
        DeletionProtection = true,
        SubordinateConfig = new Gcp.CertificateAuthority.Inputs.AuthoritySubordinateConfigArgs
        {
            CertificateAuthority = root_ca.Name,
        },
        Config = new Gcp.CertificateAuthority.Inputs.AuthorityConfigArgs
        {
            SubjectConfig = new Gcp.CertificateAuthority.Inputs.AuthorityConfigSubjectConfigArgs
            {
                Subject = new Gcp.CertificateAuthority.Inputs.AuthorityConfigSubjectConfigSubjectArgs
                {
                    Organization = "ACME",
                    CommonName = "my-subordinate-authority",
                },
            },
            X509Config = new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigArgs
            {
                CaOptions = new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigCaOptionsArgs
                {
                    IsCa = true,
                    ZeroMaxIssuerPathLength = true,
                },
                KeyUsage = new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigKeyUsageArgs
                {
                    BaseKeyUsage = new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigKeyUsageBaseKeyUsageArgs
                    {
                        CertSign = true,
                        CrlSign = true,
                    },
                    ExtendedKeyUsage = null,
                },
            },
        },
        Lifetime = $"{5 * 365 * 24 * 3600}s",
        KeySpec = new Gcp.CertificateAuthority.Inputs.AuthorityKeySpecArgs
        {
            Algorithm = "RSA_PKCS1_2048_SHA256",
        },
        Type = "SUBORDINATE",
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.certificateauthority.Authority;
import com.pulumi.gcp.certificateauthority.AuthorityArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigSubjectConfigArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigSubjectConfigSubjectArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigX509ConfigArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigX509ConfigCaOptionsArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigX509ConfigKeyUsageArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigX509ConfigKeyUsageBaseKeyUsageArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigX509ConfigKeyUsageExtendedKeyUsageArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityKeySpecArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthoritySubordinateConfigArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var root_ca = new Authority("root-ca", AuthorityArgs.builder()
            .pool("ca-pool")
            .certificateAuthorityId("my-certificate-authority-root")
            .location("us-central1")
            .config(AuthorityConfigArgs.builder()
                .subjectConfig(AuthorityConfigSubjectConfigArgs.builder()
                    .subject(AuthorityConfigSubjectConfigSubjectArgs.builder()
                        .organization("ACME")
                        .commonName("my-certificate-authority")
                        .build())
                    .build())
                .x509Config(AuthorityConfigX509ConfigArgs.builder()
                    .caOptions(AuthorityConfigX509ConfigCaOptionsArgs.builder()
                        .isCa(true)
                        .build())
                    .keyUsage(AuthorityConfigX509ConfigKeyUsageArgs.builder()
                        .baseKeyUsage(AuthorityConfigX509ConfigKeyUsageBaseKeyUsageArgs.builder()
                            .certSign(true)
                            .crlSign(true)
                            .build())
                        .extendedKeyUsage()
                        .build())
                    .build())
                .build())
            .keySpec(AuthorityKeySpecArgs.builder()
                .algorithm("RSA_PKCS1_4096_SHA256")
                .build())
            .deletionProtection(false)
            .skipGracePeriod(true)
            .ignoreActiveCertificatesOnDeletion(true)
            .build());
        var default_ = new Authority("default", AuthorityArgs.builder()
            .pool("ca-pool")
            .certificateAuthorityId("my-certificate-authority-sub")
            .location("us-central1")
            .deletionProtection(true)
            .subordinateConfig(AuthoritySubordinateConfigArgs.builder()
                .certificateAuthority(root_ca.name())
                .build())
            .config(AuthorityConfigArgs.builder()
                .subjectConfig(AuthorityConfigSubjectConfigArgs.builder()
                    .subject(AuthorityConfigSubjectConfigSubjectArgs.builder()
                        .organization("ACME")
                        .commonName("my-subordinate-authority")
                        .build())
                    .build())
                .x509Config(AuthorityConfigX509ConfigArgs.builder()
                    .caOptions(AuthorityConfigX509ConfigCaOptionsArgs.builder()
                        .isCa(true)
                        .zeroMaxIssuerPathLength(true)
                        .build())
                    .keyUsage(AuthorityConfigX509ConfigKeyUsageArgs.builder()
                        .baseKeyUsage(AuthorityConfigX509ConfigKeyUsageBaseKeyUsageArgs.builder()
                            .certSign(true)
                            .crlSign(true)
                            .build())
                        .extendedKeyUsage()
                        .build())
                    .build())
                .build())
            .lifetime(String.format("%ss", 5 * 365 * 24 * 3600))
            .keySpec(AuthorityKeySpecArgs.builder()
                .algorithm("RSA_PKCS1_2048_SHA256")
                .build())
            .type("SUBORDINATE")
            .build());
    }
}
Coming soon!
Privateca Certificate Authority Byo Key
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const privatecaSa = new gcp.projects.ServiceIdentity("privateca_sa", {service: "privateca.googleapis.com"});
const privatecaSaKeyuserSignerverifier = new gcp.kms.CryptoKeyIAMMember("privateca_sa_keyuser_signerverifier", {
    cryptoKeyId: "projects/keys-project/locations/us-central1/keyRings/key-ring/cryptoKeys/crypto-key",
    role: "roles/cloudkms.signerVerifier",
    member: privatecaSa.member,
});
const privatecaSaKeyuserViewer = new gcp.kms.CryptoKeyIAMMember("privateca_sa_keyuser_viewer", {
    cryptoKeyId: "projects/keys-project/locations/us-central1/keyRings/key-ring/cryptoKeys/crypto-key",
    role: "roles/viewer",
    member: privatecaSa.member,
});
const _default = new gcp.certificateauthority.Authority("default", {
    pool: "ca-pool",
    certificateAuthorityId: "my-certificate-authority",
    location: "us-central1",
    deletionProtection: true,
    keySpec: {
        cloudKmsKeyVersion: "projects/keys-project/locations/us-central1/keyRings/key-ring/cryptoKeys/crypto-key/cryptoKeyVersions/1",
    },
    config: {
        subjectConfig: {
            subject: {
                organization: "Example, Org.",
                commonName: "Example Authority",
            },
        },
        x509Config: {
            caOptions: {
                isCa: true,
            },
            keyUsage: {
                baseKeyUsage: {
                    certSign: true,
                    crlSign: true,
                },
                extendedKeyUsage: {},
            },
            nameConstraints: {
                critical: true,
                permittedDnsNames: ["*.example.com"],
                excludedDnsNames: ["*.deny.example.com"],
                permittedIpRanges: ["10.0.0.0/8"],
                excludedIpRanges: ["10.1.1.0/24"],
                permittedEmailAddresses: [".example.com"],
                excludedEmailAddresses: [".deny.example.com"],
                permittedUris: [".example.com"],
                excludedUris: [".deny.example.com"],
            },
        },
    },
}, {
    dependsOn: [
        privatecaSaKeyuserSignerverifier,
        privatecaSaKeyuserViewer,
    ],
});
import pulumi
import pulumi_gcp as gcp
privateca_sa = gcp.projects.ServiceIdentity("privateca_sa", service="privateca.googleapis.com")
privateca_sa_keyuser_signerverifier = gcp.kms.CryptoKeyIAMMember("privateca_sa_keyuser_signerverifier",
    crypto_key_id="projects/keys-project/locations/us-central1/keyRings/key-ring/cryptoKeys/crypto-key",
    role="roles/cloudkms.signerVerifier",
    member=privateca_sa.member)
privateca_sa_keyuser_viewer = gcp.kms.CryptoKeyIAMMember("privateca_sa_keyuser_viewer",
    crypto_key_id="projects/keys-project/locations/us-central1/keyRings/key-ring/cryptoKeys/crypto-key",
    role="roles/viewer",
    member=privateca_sa.member)
default = gcp.certificateauthority.Authority("default",
    pool="ca-pool",
    certificate_authority_id="my-certificate-authority",
    location="us-central1",
    deletion_protection=True,
    key_spec={
        "cloud_kms_key_version": "projects/keys-project/locations/us-central1/keyRings/key-ring/cryptoKeys/crypto-key/cryptoKeyVersions/1",
    },
    config={
        "subject_config": {
            "subject": {
                "organization": "Example, Org.",
                "common_name": "Example Authority",
            },
        },
        "x509_config": {
            "ca_options": {
                "is_ca": True,
            },
            "key_usage": {
                "base_key_usage": {
                    "cert_sign": True,
                    "crl_sign": True,
                },
                "extended_key_usage": {},
            },
            "name_constraints": {
                "critical": True,
                "permitted_dns_names": ["*.example.com"],
                "excluded_dns_names": ["*.deny.example.com"],
                "permitted_ip_ranges": ["10.0.0.0/8"],
                "excluded_ip_ranges": ["10.1.1.0/24"],
                "permitted_email_addresses": [".example.com"],
                "excluded_email_addresses": [".deny.example.com"],
                "permitted_uris": [".example.com"],
                "excluded_uris": [".deny.example.com"],
            },
        },
    },
    opts = pulumi.ResourceOptions(depends_on=[
            privateca_sa_keyuser_signerverifier,
            privateca_sa_keyuser_viewer,
        ]))
package main
import (
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/certificateauthority"
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/kms"
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/projects"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		privatecaSa, err := projects.NewServiceIdentity(ctx, "privateca_sa", &projects.ServiceIdentityArgs{
			Service: pulumi.String("privateca.googleapis.com"),
		})
		if err != nil {
			return err
		}
		privatecaSaKeyuserSignerverifier, err := kms.NewCryptoKeyIAMMember(ctx, "privateca_sa_keyuser_signerverifier", &kms.CryptoKeyIAMMemberArgs{
			CryptoKeyId: pulumi.String("projects/keys-project/locations/us-central1/keyRings/key-ring/cryptoKeys/crypto-key"),
			Role:        pulumi.String("roles/cloudkms.signerVerifier"),
			Member:      privatecaSa.Member,
		})
		if err != nil {
			return err
		}
		privatecaSaKeyuserViewer, err := kms.NewCryptoKeyIAMMember(ctx, "privateca_sa_keyuser_viewer", &kms.CryptoKeyIAMMemberArgs{
			CryptoKeyId: pulumi.String("projects/keys-project/locations/us-central1/keyRings/key-ring/cryptoKeys/crypto-key"),
			Role:        pulumi.String("roles/viewer"),
			Member:      privatecaSa.Member,
		})
		if err != nil {
			return err
		}
		_, err = certificateauthority.NewAuthority(ctx, "default", &certificateauthority.AuthorityArgs{
			Pool:                   pulumi.String("ca-pool"),
			CertificateAuthorityId: pulumi.String("my-certificate-authority"),
			Location:               pulumi.String("us-central1"),
			DeletionProtection:     pulumi.Bool(true),
			KeySpec: &certificateauthority.AuthorityKeySpecArgs{
				CloudKmsKeyVersion: pulumi.String("projects/keys-project/locations/us-central1/keyRings/key-ring/cryptoKeys/crypto-key/cryptoKeyVersions/1"),
			},
			Config: &certificateauthority.AuthorityConfigArgs{
				SubjectConfig: &certificateauthority.AuthorityConfigSubjectConfigArgs{
					Subject: &certificateauthority.AuthorityConfigSubjectConfigSubjectArgs{
						Organization: pulumi.String("Example, Org."),
						CommonName:   pulumi.String("Example Authority"),
					},
				},
				X509Config: &certificateauthority.AuthorityConfigX509ConfigArgs{
					CaOptions: &certificateauthority.AuthorityConfigX509ConfigCaOptionsArgs{
						IsCa: pulumi.Bool(true),
					},
					KeyUsage: &certificateauthority.AuthorityConfigX509ConfigKeyUsageArgs{
						BaseKeyUsage: &certificateauthority.AuthorityConfigX509ConfigKeyUsageBaseKeyUsageArgs{
							CertSign: pulumi.Bool(true),
							CrlSign:  pulumi.Bool(true),
						},
						ExtendedKeyUsage: &certificateauthority.AuthorityConfigX509ConfigKeyUsageExtendedKeyUsageArgs{},
					},
					NameConstraints: &certificateauthority.AuthorityConfigX509ConfigNameConstraintsArgs{
						Critical: pulumi.Bool(true),
						PermittedDnsNames: pulumi.StringArray{
							pulumi.String("*.example.com"),
						},
						ExcludedDnsNames: pulumi.StringArray{
							pulumi.String("*.deny.example.com"),
						},
						PermittedIpRanges: pulumi.StringArray{
							pulumi.String("10.0.0.0/8"),
						},
						ExcludedIpRanges: pulumi.StringArray{
							pulumi.String("10.1.1.0/24"),
						},
						PermittedEmailAddresses: pulumi.StringArray{
							pulumi.String(".example.com"),
						},
						ExcludedEmailAddresses: pulumi.StringArray{
							pulumi.String(".deny.example.com"),
						},
						PermittedUris: pulumi.StringArray{
							pulumi.String(".example.com"),
						},
						ExcludedUris: pulumi.StringArray{
							pulumi.String(".deny.example.com"),
						},
					},
				},
			},
		}, pulumi.DependsOn([]pulumi.Resource{
			privatecaSaKeyuserSignerverifier,
			privatecaSaKeyuserViewer,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() => 
{
    var privatecaSa = new Gcp.Projects.ServiceIdentity("privateca_sa", new()
    {
        Service = "privateca.googleapis.com",
    });
    var privatecaSaKeyuserSignerverifier = new Gcp.Kms.CryptoKeyIAMMember("privateca_sa_keyuser_signerverifier", new()
    {
        CryptoKeyId = "projects/keys-project/locations/us-central1/keyRings/key-ring/cryptoKeys/crypto-key",
        Role = "roles/cloudkms.signerVerifier",
        Member = privatecaSa.Member,
    });
    var privatecaSaKeyuserViewer = new Gcp.Kms.CryptoKeyIAMMember("privateca_sa_keyuser_viewer", new()
    {
        CryptoKeyId = "projects/keys-project/locations/us-central1/keyRings/key-ring/cryptoKeys/crypto-key",
        Role = "roles/viewer",
        Member = privatecaSa.Member,
    });
    var @default = new Gcp.CertificateAuthority.Authority("default", new()
    {
        Pool = "ca-pool",
        CertificateAuthorityId = "my-certificate-authority",
        Location = "us-central1",
        DeletionProtection = true,
        KeySpec = new Gcp.CertificateAuthority.Inputs.AuthorityKeySpecArgs
        {
            CloudKmsKeyVersion = "projects/keys-project/locations/us-central1/keyRings/key-ring/cryptoKeys/crypto-key/cryptoKeyVersions/1",
        },
        Config = new Gcp.CertificateAuthority.Inputs.AuthorityConfigArgs
        {
            SubjectConfig = new Gcp.CertificateAuthority.Inputs.AuthorityConfigSubjectConfigArgs
            {
                Subject = new Gcp.CertificateAuthority.Inputs.AuthorityConfigSubjectConfigSubjectArgs
                {
                    Organization = "Example, Org.",
                    CommonName = "Example Authority",
                },
            },
            X509Config = new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigArgs
            {
                CaOptions = new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigCaOptionsArgs
                {
                    IsCa = true,
                },
                KeyUsage = new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigKeyUsageArgs
                {
                    BaseKeyUsage = new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigKeyUsageBaseKeyUsageArgs
                    {
                        CertSign = true,
                        CrlSign = true,
                    },
                    ExtendedKeyUsage = null,
                },
                NameConstraints = new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigNameConstraintsArgs
                {
                    Critical = true,
                    PermittedDnsNames = new[]
                    {
                        "*.example.com",
                    },
                    ExcludedDnsNames = new[]
                    {
                        "*.deny.example.com",
                    },
                    PermittedIpRanges = new[]
                    {
                        "10.0.0.0/8",
                    },
                    ExcludedIpRanges = new[]
                    {
                        "10.1.1.0/24",
                    },
                    PermittedEmailAddresses = new[]
                    {
                        ".example.com",
                    },
                    ExcludedEmailAddresses = new[]
                    {
                        ".deny.example.com",
                    },
                    PermittedUris = new[]
                    {
                        ".example.com",
                    },
                    ExcludedUris = new[]
                    {
                        ".deny.example.com",
                    },
                },
            },
        },
    }, new CustomResourceOptions
    {
        DependsOn =
        {
            privatecaSaKeyuserSignerverifier,
            privatecaSaKeyuserViewer,
        },
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.projects.ServiceIdentity;
import com.pulumi.gcp.projects.ServiceIdentityArgs;
import com.pulumi.gcp.kms.CryptoKeyIAMMember;
import com.pulumi.gcp.kms.CryptoKeyIAMMemberArgs;
import com.pulumi.gcp.certificateauthority.Authority;
import com.pulumi.gcp.certificateauthority.AuthorityArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityKeySpecArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigSubjectConfigArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigSubjectConfigSubjectArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigX509ConfigArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigX509ConfigCaOptionsArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigX509ConfigKeyUsageArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigX509ConfigKeyUsageBaseKeyUsageArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigX509ConfigKeyUsageExtendedKeyUsageArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigX509ConfigNameConstraintsArgs;
import com.pulumi.resources.CustomResourceOptions;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var privatecaSa = new ServiceIdentity("privatecaSa", ServiceIdentityArgs.builder()
            .service("privateca.googleapis.com")
            .build());
        var privatecaSaKeyuserSignerverifier = new CryptoKeyIAMMember("privatecaSaKeyuserSignerverifier", CryptoKeyIAMMemberArgs.builder()
            .cryptoKeyId("projects/keys-project/locations/us-central1/keyRings/key-ring/cryptoKeys/crypto-key")
            .role("roles/cloudkms.signerVerifier")
            .member(privatecaSa.member())
            .build());
        var privatecaSaKeyuserViewer = new CryptoKeyIAMMember("privatecaSaKeyuserViewer", CryptoKeyIAMMemberArgs.builder()
            .cryptoKeyId("projects/keys-project/locations/us-central1/keyRings/key-ring/cryptoKeys/crypto-key")
            .role("roles/viewer")
            .member(privatecaSa.member())
            .build());
        var default_ = new Authority("default", AuthorityArgs.builder()
            .pool("ca-pool")
            .certificateAuthorityId("my-certificate-authority")
            .location("us-central1")
            .deletionProtection(true)
            .keySpec(AuthorityKeySpecArgs.builder()
                .cloudKmsKeyVersion("projects/keys-project/locations/us-central1/keyRings/key-ring/cryptoKeys/crypto-key/cryptoKeyVersions/1")
                .build())
            .config(AuthorityConfigArgs.builder()
                .subjectConfig(AuthorityConfigSubjectConfigArgs.builder()
                    .subject(AuthorityConfigSubjectConfigSubjectArgs.builder()
                        .organization("Example, Org.")
                        .commonName("Example Authority")
                        .build())
                    .build())
                .x509Config(AuthorityConfigX509ConfigArgs.builder()
                    .caOptions(AuthorityConfigX509ConfigCaOptionsArgs.builder()
                        .isCa(true)
                        .build())
                    .keyUsage(AuthorityConfigX509ConfigKeyUsageArgs.builder()
                        .baseKeyUsage(AuthorityConfigX509ConfigKeyUsageBaseKeyUsageArgs.builder()
                            .certSign(true)
                            .crlSign(true)
                            .build())
                        .extendedKeyUsage()
                        .build())
                    .nameConstraints(AuthorityConfigX509ConfigNameConstraintsArgs.builder()
                        .critical(true)
                        .permittedDnsNames("*.example.com")
                        .excludedDnsNames("*.deny.example.com")
                        .permittedIpRanges("10.0.0.0/8")
                        .excludedIpRanges("10.1.1.0/24")
                        .permittedEmailAddresses(".example.com")
                        .excludedEmailAddresses(".deny.example.com")
                        .permittedUris(".example.com")
                        .excludedUris(".deny.example.com")
                        .build())
                    .build())
                .build())
            .build(), CustomResourceOptions.builder()
                .dependsOn(                
                    privatecaSaKeyuserSignerverifier,
                    privatecaSaKeyuserViewer)
                .build());
    }
}
resources:
  privatecaSa:
    type: gcp:projects:ServiceIdentity
    name: privateca_sa
    properties:
      service: privateca.googleapis.com
  privatecaSaKeyuserSignerverifier:
    type: gcp:kms:CryptoKeyIAMMember
    name: privateca_sa_keyuser_signerverifier
    properties:
      cryptoKeyId: projects/keys-project/locations/us-central1/keyRings/key-ring/cryptoKeys/crypto-key
      role: roles/cloudkms.signerVerifier
      member: ${privatecaSa.member}
  privatecaSaKeyuserViewer:
    type: gcp:kms:CryptoKeyIAMMember
    name: privateca_sa_keyuser_viewer
    properties:
      cryptoKeyId: projects/keys-project/locations/us-central1/keyRings/key-ring/cryptoKeys/crypto-key
      role: roles/viewer
      member: ${privatecaSa.member}
  default:
    type: gcp:certificateauthority:Authority
    properties:
      pool: ca-pool
      certificateAuthorityId: my-certificate-authority
      location: us-central1
      deletionProtection: true
      keySpec:
        cloudKmsKeyVersion: projects/keys-project/locations/us-central1/keyRings/key-ring/cryptoKeys/crypto-key/cryptoKeyVersions/1
      config:
        subjectConfig:
          subject:
            organization: Example, Org.
            commonName: Example Authority
        x509Config:
          caOptions:
            isCa: true
          keyUsage:
            baseKeyUsage:
              certSign: true
              crlSign: true
            extendedKeyUsage: {}
          nameConstraints:
            critical: true
            permittedDnsNames:
              - '*.example.com'
            excludedDnsNames:
              - '*.deny.example.com'
            permittedIpRanges:
              - 10.0.0.0/8
            excludedIpRanges:
              - 10.1.1.0/24
            permittedEmailAddresses:
              - .example.com
            excludedEmailAddresses:
              - .deny.example.com
            permittedUris:
              - .example.com
            excludedUris:
              - .deny.example.com
    options:
      dependsOn:
        - ${privatecaSaKeyuserSignerverifier}
        - ${privatecaSaKeyuserViewer}
Privateca Certificate Authority Custom Ski
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const _default = new gcp.certificateauthority.Authority("default", {
    pool: "ca-pool",
    certificateAuthorityId: "my-certificate-authority",
    location: "us-central1",
    deletionProtection: true,
    config: {
        subjectConfig: {
            subject: {
                organization: "ACME",
                commonName: "my-certificate-authority",
            },
        },
        subjectKeyId: {
            keyId: "4cf3372289b1d411b999dbb9ebcd44744b6b2fca",
        },
        x509Config: {
            caOptions: {
                isCa: true,
            },
            keyUsage: {
                baseKeyUsage: {
                    certSign: true,
                    crlSign: true,
                },
                extendedKeyUsage: {},
            },
        },
    },
    lifetime: `${10 * 365 * 24 * 3600}s`,
    keySpec: {
        cloudKmsKeyVersion: "projects/keys-project/locations/us-central1/keyRings/key-ring/cryptoKeys/crypto-key/cryptoKeyVersions/1",
    },
});
import pulumi
import pulumi_gcp as gcp
default = gcp.certificateauthority.Authority("default",
    pool="ca-pool",
    certificate_authority_id="my-certificate-authority",
    location="us-central1",
    deletion_protection=True,
    config={
        "subject_config": {
            "subject": {
                "organization": "ACME",
                "common_name": "my-certificate-authority",
            },
        },
        "subject_key_id": {
            "key_id": "4cf3372289b1d411b999dbb9ebcd44744b6b2fca",
        },
        "x509_config": {
            "ca_options": {
                "is_ca": True,
            },
            "key_usage": {
                "base_key_usage": {
                    "cert_sign": True,
                    "crl_sign": True,
                },
                "extended_key_usage": {},
            },
        },
    },
    lifetime=f"{10 * 365 * 24 * 3600}s",
    key_spec={
        "cloud_kms_key_version": "projects/keys-project/locations/us-central1/keyRings/key-ring/cryptoKeys/crypto-key/cryptoKeyVersions/1",
    })
package main
import (
	"fmt"
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/certificateauthority"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := certificateauthority.NewAuthority(ctx, "default", &certificateauthority.AuthorityArgs{
			Pool:                   pulumi.String("ca-pool"),
			CertificateAuthorityId: pulumi.String("my-certificate-authority"),
			Location:               pulumi.String("us-central1"),
			DeletionProtection:     pulumi.Bool(true),
			Config: &certificateauthority.AuthorityConfigArgs{
				SubjectConfig: &certificateauthority.AuthorityConfigSubjectConfigArgs{
					Subject: &certificateauthority.AuthorityConfigSubjectConfigSubjectArgs{
						Organization: pulumi.String("ACME"),
						CommonName:   pulumi.String("my-certificate-authority"),
					},
				},
				SubjectKeyId: &certificateauthority.AuthorityConfigSubjectKeyIdArgs{
					KeyId: pulumi.String("4cf3372289b1d411b999dbb9ebcd44744b6b2fca"),
				},
				X509Config: &certificateauthority.AuthorityConfigX509ConfigArgs{
					CaOptions: &certificateauthority.AuthorityConfigX509ConfigCaOptionsArgs{
						IsCa: pulumi.Bool(true),
					},
					KeyUsage: &certificateauthority.AuthorityConfigX509ConfigKeyUsageArgs{
						BaseKeyUsage: &certificateauthority.AuthorityConfigX509ConfigKeyUsageBaseKeyUsageArgs{
							CertSign: pulumi.Bool(true),
							CrlSign:  pulumi.Bool(true),
						},
						ExtendedKeyUsage: &certificateauthority.AuthorityConfigX509ConfigKeyUsageExtendedKeyUsageArgs{},
					},
				},
			},
			Lifetime: pulumi.Sprintf("%vs", 10*365*24*3600),
			KeySpec: &certificateauthority.AuthorityKeySpecArgs{
				CloudKmsKeyVersion: pulumi.String("projects/keys-project/locations/us-central1/keyRings/key-ring/cryptoKeys/crypto-key/cryptoKeyVersions/1"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() => 
{
    var @default = new Gcp.CertificateAuthority.Authority("default", new()
    {
        Pool = "ca-pool",
        CertificateAuthorityId = "my-certificate-authority",
        Location = "us-central1",
        DeletionProtection = true,
        Config = new Gcp.CertificateAuthority.Inputs.AuthorityConfigArgs
        {
            SubjectConfig = new Gcp.CertificateAuthority.Inputs.AuthorityConfigSubjectConfigArgs
            {
                Subject = new Gcp.CertificateAuthority.Inputs.AuthorityConfigSubjectConfigSubjectArgs
                {
                    Organization = "ACME",
                    CommonName = "my-certificate-authority",
                },
            },
            SubjectKeyId = new Gcp.CertificateAuthority.Inputs.AuthorityConfigSubjectKeyIdArgs
            {
                KeyId = "4cf3372289b1d411b999dbb9ebcd44744b6b2fca",
            },
            X509Config = new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigArgs
            {
                CaOptions = new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigCaOptionsArgs
                {
                    IsCa = true,
                },
                KeyUsage = new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigKeyUsageArgs
                {
                    BaseKeyUsage = new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigKeyUsageBaseKeyUsageArgs
                    {
                        CertSign = true,
                        CrlSign = true,
                    },
                    ExtendedKeyUsage = null,
                },
            },
        },
        Lifetime = $"{10 * 365 * 24 * 3600}s",
        KeySpec = new Gcp.CertificateAuthority.Inputs.AuthorityKeySpecArgs
        {
            CloudKmsKeyVersion = "projects/keys-project/locations/us-central1/keyRings/key-ring/cryptoKeys/crypto-key/cryptoKeyVersions/1",
        },
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.certificateauthority.Authority;
import com.pulumi.gcp.certificateauthority.AuthorityArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigSubjectConfigArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigSubjectConfigSubjectArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigSubjectKeyIdArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigX509ConfigArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigX509ConfigCaOptionsArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigX509ConfigKeyUsageArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigX509ConfigKeyUsageBaseKeyUsageArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigX509ConfigKeyUsageExtendedKeyUsageArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityKeySpecArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var default_ = new Authority("default", AuthorityArgs.builder()
            .pool("ca-pool")
            .certificateAuthorityId("my-certificate-authority")
            .location("us-central1")
            .deletionProtection(true)
            .config(AuthorityConfigArgs.builder()
                .subjectConfig(AuthorityConfigSubjectConfigArgs.builder()
                    .subject(AuthorityConfigSubjectConfigSubjectArgs.builder()
                        .organization("ACME")
                        .commonName("my-certificate-authority")
                        .build())
                    .build())
                .subjectKeyId(AuthorityConfigSubjectKeyIdArgs.builder()
                    .keyId("4cf3372289b1d411b999dbb9ebcd44744b6b2fca")
                    .build())
                .x509Config(AuthorityConfigX509ConfigArgs.builder()
                    .caOptions(AuthorityConfigX509ConfigCaOptionsArgs.builder()
                        .isCa(true)
                        .build())
                    .keyUsage(AuthorityConfigX509ConfigKeyUsageArgs.builder()
                        .baseKeyUsage(AuthorityConfigX509ConfigKeyUsageBaseKeyUsageArgs.builder()
                            .certSign(true)
                            .crlSign(true)
                            .build())
                        .extendedKeyUsage()
                        .build())
                    .build())
                .build())
            .lifetime(String.format("%ss", 10 * 365 * 24 * 3600))
            .keySpec(AuthorityKeySpecArgs.builder()
                .cloudKmsKeyVersion("projects/keys-project/locations/us-central1/keyRings/key-ring/cryptoKeys/crypto-key/cryptoKeyVersions/1")
                .build())
            .build());
    }
}
Coming soon!
Privateca Certificate Authority Basic With Custom Cdp Aia Urls
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const _default = new gcp.certificateauthority.Authority("default", {
    pool: "ca-pool",
    certificateAuthorityId: "my-certificate-authority",
    location: "us-central1",
    deletionProtection: true,
    config: {
        subjectConfig: {
            subject: {
                organization: "ACME",
                commonName: "my-certificate-authority",
            },
        },
        x509Config: {
            caOptions: {
                isCa: true,
            },
            keyUsage: {
                baseKeyUsage: {
                    certSign: true,
                    crlSign: true,
                },
                extendedKeyUsage: {},
            },
        },
    },
    lifetime: `${10 * 365 * 24 * 3600}s`,
    keySpec: {
        algorithm: "RSA_PKCS1_4096_SHA256",
    },
    userDefinedAccessUrls: {
        aiaIssuingCertificateUrls: [
            "http://example.com/ca.crt",
            "http://example.com/anotherca.crt",
        ],
        crlAccessUrls: [
            "http://example.com/crl1.crt",
            "http://example.com/crl2.crt",
        ],
    },
});
import pulumi
import pulumi_gcp as gcp
default = gcp.certificateauthority.Authority("default",
    pool="ca-pool",
    certificate_authority_id="my-certificate-authority",
    location="us-central1",
    deletion_protection=True,
    config={
        "subject_config": {
            "subject": {
                "organization": "ACME",
                "common_name": "my-certificate-authority",
            },
        },
        "x509_config": {
            "ca_options": {
                "is_ca": True,
            },
            "key_usage": {
                "base_key_usage": {
                    "cert_sign": True,
                    "crl_sign": True,
                },
                "extended_key_usage": {},
            },
        },
    },
    lifetime=f"{10 * 365 * 24 * 3600}s",
    key_spec={
        "algorithm": "RSA_PKCS1_4096_SHA256",
    },
    user_defined_access_urls={
        "aia_issuing_certificate_urls": [
            "http://example.com/ca.crt",
            "http://example.com/anotherca.crt",
        ],
        "crl_access_urls": [
            "http://example.com/crl1.crt",
            "http://example.com/crl2.crt",
        ],
    })
package main
import (
	"fmt"
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/certificateauthority"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := certificateauthority.NewAuthority(ctx, "default", &certificateauthority.AuthorityArgs{
			Pool:                   pulumi.String("ca-pool"),
			CertificateAuthorityId: pulumi.String("my-certificate-authority"),
			Location:               pulumi.String("us-central1"),
			DeletionProtection:     pulumi.Bool(true),
			Config: &certificateauthority.AuthorityConfigArgs{
				SubjectConfig: &certificateauthority.AuthorityConfigSubjectConfigArgs{
					Subject: &certificateauthority.AuthorityConfigSubjectConfigSubjectArgs{
						Organization: pulumi.String("ACME"),
						CommonName:   pulumi.String("my-certificate-authority"),
					},
				},
				X509Config: &certificateauthority.AuthorityConfigX509ConfigArgs{
					CaOptions: &certificateauthority.AuthorityConfigX509ConfigCaOptionsArgs{
						IsCa: pulumi.Bool(true),
					},
					KeyUsage: &certificateauthority.AuthorityConfigX509ConfigKeyUsageArgs{
						BaseKeyUsage: &certificateauthority.AuthorityConfigX509ConfigKeyUsageBaseKeyUsageArgs{
							CertSign: pulumi.Bool(true),
							CrlSign:  pulumi.Bool(true),
						},
						ExtendedKeyUsage: &certificateauthority.AuthorityConfigX509ConfigKeyUsageExtendedKeyUsageArgs{},
					},
				},
			},
			Lifetime: pulumi.Sprintf("%vs", 10*365*24*3600),
			KeySpec: &certificateauthority.AuthorityKeySpecArgs{
				Algorithm: pulumi.String("RSA_PKCS1_4096_SHA256"),
			},
			UserDefinedAccessUrls: &certificateauthority.AuthorityUserDefinedAccessUrlsArgs{
				AiaIssuingCertificateUrls: pulumi.StringArray{
					pulumi.String("http://example.com/ca.crt"),
					pulumi.String("http://example.com/anotherca.crt"),
				},
				CrlAccessUrls: pulumi.StringArray{
					pulumi.String("http://example.com/crl1.crt"),
					pulumi.String("http://example.com/crl2.crt"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() => 
{
    var @default = new Gcp.CertificateAuthority.Authority("default", new()
    {
        Pool = "ca-pool",
        CertificateAuthorityId = "my-certificate-authority",
        Location = "us-central1",
        DeletionProtection = true,
        Config = new Gcp.CertificateAuthority.Inputs.AuthorityConfigArgs
        {
            SubjectConfig = new Gcp.CertificateAuthority.Inputs.AuthorityConfigSubjectConfigArgs
            {
                Subject = new Gcp.CertificateAuthority.Inputs.AuthorityConfigSubjectConfigSubjectArgs
                {
                    Organization = "ACME",
                    CommonName = "my-certificate-authority",
                },
            },
            X509Config = new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigArgs
            {
                CaOptions = new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigCaOptionsArgs
                {
                    IsCa = true,
                },
                KeyUsage = new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigKeyUsageArgs
                {
                    BaseKeyUsage = new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigKeyUsageBaseKeyUsageArgs
                    {
                        CertSign = true,
                        CrlSign = true,
                    },
                    ExtendedKeyUsage = null,
                },
            },
        },
        Lifetime = $"{10 * 365 * 24 * 3600}s",
        KeySpec = new Gcp.CertificateAuthority.Inputs.AuthorityKeySpecArgs
        {
            Algorithm = "RSA_PKCS1_4096_SHA256",
        },
        UserDefinedAccessUrls = new Gcp.CertificateAuthority.Inputs.AuthorityUserDefinedAccessUrlsArgs
        {
            AiaIssuingCertificateUrls = new[]
            {
                "http://example.com/ca.crt",
                "http://example.com/anotherca.crt",
            },
            CrlAccessUrls = new[]
            {
                "http://example.com/crl1.crt",
                "http://example.com/crl2.crt",
            },
        },
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.certificateauthority.Authority;
import com.pulumi.gcp.certificateauthority.AuthorityArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigSubjectConfigArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigSubjectConfigSubjectArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigX509ConfigArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigX509ConfigCaOptionsArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigX509ConfigKeyUsageArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigX509ConfigKeyUsageBaseKeyUsageArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityConfigX509ConfigKeyUsageExtendedKeyUsageArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityKeySpecArgs;
import com.pulumi.gcp.certificateauthority.inputs.AuthorityUserDefinedAccessUrlsArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var default_ = new Authority("default", AuthorityArgs.builder()
            .pool("ca-pool")
            .certificateAuthorityId("my-certificate-authority")
            .location("us-central1")
            .deletionProtection(true)
            .config(AuthorityConfigArgs.builder()
                .subjectConfig(AuthorityConfigSubjectConfigArgs.builder()
                    .subject(AuthorityConfigSubjectConfigSubjectArgs.builder()
                        .organization("ACME")
                        .commonName("my-certificate-authority")
                        .build())
                    .build())
                .x509Config(AuthorityConfigX509ConfigArgs.builder()
                    .caOptions(AuthorityConfigX509ConfigCaOptionsArgs.builder()
                        .isCa(true)
                        .build())
                    .keyUsage(AuthorityConfigX509ConfigKeyUsageArgs.builder()
                        .baseKeyUsage(AuthorityConfigX509ConfigKeyUsageBaseKeyUsageArgs.builder()
                            .certSign(true)
                            .crlSign(true)
                            .build())
                        .extendedKeyUsage()
                        .build())
                    .build())
                .build())
            .lifetime(String.format("%ss", 10 * 365 * 24 * 3600))
            .keySpec(AuthorityKeySpecArgs.builder()
                .algorithm("RSA_PKCS1_4096_SHA256")
                .build())
            .userDefinedAccessUrls(AuthorityUserDefinedAccessUrlsArgs.builder()
                .aiaIssuingCertificateUrls(                
                    "http://example.com/ca.crt",
                    "http://example.com/anotherca.crt")
                .crlAccessUrls(                
                    "http://example.com/crl1.crt",
                    "http://example.com/crl2.crt")
                .build())
            .build());
    }
}
Coming soon!
Create Authority Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new Authority(name: string, args: AuthorityArgs, opts?: CustomResourceOptions);@overload
def Authority(resource_name: str,
              args: AuthorityArgs,
              opts: Optional[ResourceOptions] = None)
@overload
def Authority(resource_name: str,
              opts: Optional[ResourceOptions] = None,
              key_spec: Optional[AuthorityKeySpecArgs] = None,
              config: Optional[AuthorityConfigArgs] = None,
              pool: Optional[str] = None,
              location: Optional[str] = None,
              certificate_authority_id: Optional[str] = None,
              lifetime: Optional[str] = None,
              ignore_active_certificates_on_deletion: Optional[bool] = None,
              labels: Optional[Mapping[str, str]] = None,
              gcs_bucket: Optional[str] = None,
              desired_state: Optional[str] = None,
              pem_ca_certificate: Optional[str] = None,
              deletion_protection: Optional[bool] = None,
              project: Optional[str] = None,
              skip_grace_period: Optional[bool] = None,
              subordinate_config: Optional[AuthoritySubordinateConfigArgs] = None,
              type: Optional[str] = None,
              user_defined_access_urls: Optional[AuthorityUserDefinedAccessUrlsArgs] = None)func NewAuthority(ctx *Context, name string, args AuthorityArgs, opts ...ResourceOption) (*Authority, error)public Authority(string name, AuthorityArgs args, CustomResourceOptions? opts = null)
public Authority(String name, AuthorityArgs args)
public Authority(String name, AuthorityArgs args, CustomResourceOptions options)
type: gcp:certificateauthority:Authority
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args AuthorityArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args AuthorityArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args AuthorityArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args AuthorityArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args AuthorityArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var authorityResource = new Gcp.CertificateAuthority.Authority("authorityResource", new()
{
    KeySpec = new Gcp.CertificateAuthority.Inputs.AuthorityKeySpecArgs
    {
        Algorithm = "string",
        CloudKmsKeyVersion = "string",
    },
    Config = new Gcp.CertificateAuthority.Inputs.AuthorityConfigArgs
    {
        SubjectConfig = new Gcp.CertificateAuthority.Inputs.AuthorityConfigSubjectConfigArgs
        {
            Subject = new Gcp.CertificateAuthority.Inputs.AuthorityConfigSubjectConfigSubjectArgs
            {
                CommonName = "string",
                Organization = "string",
                CountryCode = "string",
                Locality = "string",
                OrganizationalUnit = "string",
                PostalCode = "string",
                Province = "string",
                StreetAddress = "string",
            },
            SubjectAltName = new Gcp.CertificateAuthority.Inputs.AuthorityConfigSubjectConfigSubjectAltNameArgs
            {
                DnsNames = new[]
                {
                    "string",
                },
                EmailAddresses = new[]
                {
                    "string",
                },
                IpAddresses = new[]
                {
                    "string",
                },
                Uris = new[]
                {
                    "string",
                },
            },
        },
        X509Config = new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigArgs
        {
            CaOptions = new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigCaOptionsArgs
            {
                IsCa = false,
                MaxIssuerPathLength = 0,
                NonCa = false,
                ZeroMaxIssuerPathLength = false,
            },
            KeyUsage = new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigKeyUsageArgs
            {
                BaseKeyUsage = new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigKeyUsageBaseKeyUsageArgs
                {
                    CertSign = false,
                    ContentCommitment = false,
                    CrlSign = false,
                    DataEncipherment = false,
                    DecipherOnly = false,
                    DigitalSignature = false,
                    EncipherOnly = false,
                    KeyAgreement = false,
                    KeyEncipherment = false,
                },
                ExtendedKeyUsage = new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigKeyUsageExtendedKeyUsageArgs
                {
                    ClientAuth = false,
                    CodeSigning = false,
                    EmailProtection = false,
                    OcspSigning = false,
                    ServerAuth = false,
                    TimeStamping = false,
                },
                UnknownExtendedKeyUsages = new[]
                {
                    new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigKeyUsageUnknownExtendedKeyUsageArgs
                    {
                        ObjectIdPaths = new[]
                        {
                            0,
                        },
                    },
                },
            },
            AdditionalExtensions = new[]
            {
                new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigAdditionalExtensionArgs
                {
                    Critical = false,
                    ObjectId = new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigAdditionalExtensionObjectIdArgs
                    {
                        ObjectIdPaths = new[]
                        {
                            0,
                        },
                    },
                    Value = "string",
                },
            },
            AiaOcspServers = new[]
            {
                "string",
            },
            NameConstraints = new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigNameConstraintsArgs
            {
                Critical = false,
                ExcludedDnsNames = new[]
                {
                    "string",
                },
                ExcludedEmailAddresses = new[]
                {
                    "string",
                },
                ExcludedIpRanges = new[]
                {
                    "string",
                },
                ExcludedUris = new[]
                {
                    "string",
                },
                PermittedDnsNames = new[]
                {
                    "string",
                },
                PermittedEmailAddresses = new[]
                {
                    "string",
                },
                PermittedIpRanges = new[]
                {
                    "string",
                },
                PermittedUris = new[]
                {
                    "string",
                },
            },
            PolicyIds = new[]
            {
                new Gcp.CertificateAuthority.Inputs.AuthorityConfigX509ConfigPolicyIdArgs
                {
                    ObjectIdPaths = new[]
                    {
                        0,
                    },
                },
            },
        },
        SubjectKeyId = new Gcp.CertificateAuthority.Inputs.AuthorityConfigSubjectKeyIdArgs
        {
            KeyId = "string",
        },
    },
    Pool = "string",
    Location = "string",
    CertificateAuthorityId = "string",
    Lifetime = "string",
    IgnoreActiveCertificatesOnDeletion = false,
    Labels = 
    {
        { "string", "string" },
    },
    GcsBucket = "string",
    DesiredState = "string",
    PemCaCertificate = "string",
    DeletionProtection = false,
    Project = "string",
    SkipGracePeriod = false,
    SubordinateConfig = new Gcp.CertificateAuthority.Inputs.AuthoritySubordinateConfigArgs
    {
        CertificateAuthority = "string",
        PemIssuerChain = new Gcp.CertificateAuthority.Inputs.AuthoritySubordinateConfigPemIssuerChainArgs
        {
            PemCertificates = new[]
            {
                "string",
            },
        },
    },
    Type = "string",
    UserDefinedAccessUrls = new Gcp.CertificateAuthority.Inputs.AuthorityUserDefinedAccessUrlsArgs
    {
        AiaIssuingCertificateUrls = new[]
        {
            "string",
        },
        CrlAccessUrls = new[]
        {
            "string",
        },
    },
});
example, err := certificateauthority.NewAuthority(ctx, "authorityResource", &certificateauthority.AuthorityArgs{
	KeySpec: &certificateauthority.AuthorityKeySpecArgs{
		Algorithm:          pulumi.String("string"),
		CloudKmsKeyVersion: pulumi.String("string"),
	},
	Config: &certificateauthority.AuthorityConfigArgs{
		SubjectConfig: &certificateauthority.AuthorityConfigSubjectConfigArgs{
			Subject: &certificateauthority.AuthorityConfigSubjectConfigSubjectArgs{
				CommonName:         pulumi.String("string"),
				Organization:       pulumi.String("string"),
				CountryCode:        pulumi.String("string"),
				Locality:           pulumi.String("string"),
				OrganizationalUnit: pulumi.String("string"),
				PostalCode:         pulumi.String("string"),
				Province:           pulumi.String("string"),
				StreetAddress:      pulumi.String("string"),
			},
			SubjectAltName: &certificateauthority.AuthorityConfigSubjectConfigSubjectAltNameArgs{
				DnsNames: pulumi.StringArray{
					pulumi.String("string"),
				},
				EmailAddresses: pulumi.StringArray{
					pulumi.String("string"),
				},
				IpAddresses: pulumi.StringArray{
					pulumi.String("string"),
				},
				Uris: pulumi.StringArray{
					pulumi.String("string"),
				},
			},
		},
		X509Config: &certificateauthority.AuthorityConfigX509ConfigArgs{
			CaOptions: &certificateauthority.AuthorityConfigX509ConfigCaOptionsArgs{
				IsCa:                    pulumi.Bool(false),
				MaxIssuerPathLength:     pulumi.Int(0),
				NonCa:                   pulumi.Bool(false),
				ZeroMaxIssuerPathLength: pulumi.Bool(false),
			},
			KeyUsage: &certificateauthority.AuthorityConfigX509ConfigKeyUsageArgs{
				BaseKeyUsage: &certificateauthority.AuthorityConfigX509ConfigKeyUsageBaseKeyUsageArgs{
					CertSign:          pulumi.Bool(false),
					ContentCommitment: pulumi.Bool(false),
					CrlSign:           pulumi.Bool(false),
					DataEncipherment:  pulumi.Bool(false),
					DecipherOnly:      pulumi.Bool(false),
					DigitalSignature:  pulumi.Bool(false),
					EncipherOnly:      pulumi.Bool(false),
					KeyAgreement:      pulumi.Bool(false),
					KeyEncipherment:   pulumi.Bool(false),
				},
				ExtendedKeyUsage: &certificateauthority.AuthorityConfigX509ConfigKeyUsageExtendedKeyUsageArgs{
					ClientAuth:      pulumi.Bool(false),
					CodeSigning:     pulumi.Bool(false),
					EmailProtection: pulumi.Bool(false),
					OcspSigning:     pulumi.Bool(false),
					ServerAuth:      pulumi.Bool(false),
					TimeStamping:    pulumi.Bool(false),
				},
				UnknownExtendedKeyUsages: certificateauthority.AuthorityConfigX509ConfigKeyUsageUnknownExtendedKeyUsageArray{
					&certificateauthority.AuthorityConfigX509ConfigKeyUsageUnknownExtendedKeyUsageArgs{
						ObjectIdPaths: pulumi.IntArray{
							pulumi.Int(0),
						},
					},
				},
			},
			AdditionalExtensions: certificateauthority.AuthorityConfigX509ConfigAdditionalExtensionArray{
				&certificateauthority.AuthorityConfigX509ConfigAdditionalExtensionArgs{
					Critical: pulumi.Bool(false),
					ObjectId: &certificateauthority.AuthorityConfigX509ConfigAdditionalExtensionObjectIdArgs{
						ObjectIdPaths: pulumi.IntArray{
							pulumi.Int(0),
						},
					},
					Value: pulumi.String("string"),
				},
			},
			AiaOcspServers: pulumi.StringArray{
				pulumi.String("string"),
			},
			NameConstraints: &certificateauthority.AuthorityConfigX509ConfigNameConstraintsArgs{
				Critical: pulumi.Bool(false),
				ExcludedDnsNames: pulumi.StringArray{
					pulumi.String("string"),
				},
				ExcludedEmailAddresses: pulumi.StringArray{
					pulumi.String("string"),
				},
				ExcludedIpRanges: pulumi.StringArray{
					pulumi.String("string"),
				},
				ExcludedUris: pulumi.StringArray{
					pulumi.String("string"),
				},
				PermittedDnsNames: pulumi.StringArray{
					pulumi.String("string"),
				},
				PermittedEmailAddresses: pulumi.StringArray{
					pulumi.String("string"),
				},
				PermittedIpRanges: pulumi.StringArray{
					pulumi.String("string"),
				},
				PermittedUris: pulumi.StringArray{
					pulumi.String("string"),
				},
			},
			PolicyIds: certificateauthority.AuthorityConfigX509ConfigPolicyIdArray{
				&certificateauthority.AuthorityConfigX509ConfigPolicyIdArgs{
					ObjectIdPaths: pulumi.IntArray{
						pulumi.Int(0),
					},
				},
			},
		},
		SubjectKeyId: &certificateauthority.AuthorityConfigSubjectKeyIdArgs{
			KeyId: pulumi.String("string"),
		},
	},
	Pool:                               pulumi.String("string"),
	Location:                           pulumi.String("string"),
	CertificateAuthorityId:             pulumi.String("string"),
	Lifetime:                           pulumi.String("string"),
	IgnoreActiveCertificatesOnDeletion: pulumi.Bool(false),
	Labels: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
	GcsBucket:          pulumi.String("string"),
	DesiredState:       pulumi.String("string"),
	PemCaCertificate:   pulumi.String("string"),
	DeletionProtection: pulumi.Bool(false),
	Project:            pulumi.String("string"),
	SkipGracePeriod:    pulumi.Bool(false),
	SubordinateConfig: &certificateauthority.AuthoritySubordinateConfigArgs{
		CertificateAuthority: pulumi.String("string"),
		PemIssuerChain: &certificateauthority.AuthoritySubordinateConfigPemIssuerChainArgs{
			PemCertificates: pulumi.StringArray{
				pulumi.String("string"),
			},
		},
	},
	Type: pulumi.String("string"),
	UserDefinedAccessUrls: &certificateauthority.AuthorityUserDefinedAccessUrlsArgs{
		AiaIssuingCertificateUrls: pulumi.StringArray{
			pulumi.String("string"),
		},
		CrlAccessUrls: pulumi.StringArray{
			pulumi.String("string"),
		},
	},
})
var authorityResource = new Authority("authorityResource", AuthorityArgs.builder()
    .keySpec(AuthorityKeySpecArgs.builder()
        .algorithm("string")
        .cloudKmsKeyVersion("string")
        .build())
    .config(AuthorityConfigArgs.builder()
        .subjectConfig(AuthorityConfigSubjectConfigArgs.builder()
            .subject(AuthorityConfigSubjectConfigSubjectArgs.builder()
                .commonName("string")
                .organization("string")
                .countryCode("string")
                .locality("string")
                .organizationalUnit("string")
                .postalCode("string")
                .province("string")
                .streetAddress("string")
                .build())
            .subjectAltName(AuthorityConfigSubjectConfigSubjectAltNameArgs.builder()
                .dnsNames("string")
                .emailAddresses("string")
                .ipAddresses("string")
                .uris("string")
                .build())
            .build())
        .x509Config(AuthorityConfigX509ConfigArgs.builder()
            .caOptions(AuthorityConfigX509ConfigCaOptionsArgs.builder()
                .isCa(false)
                .maxIssuerPathLength(0)
                .nonCa(false)
                .zeroMaxIssuerPathLength(false)
                .build())
            .keyUsage(AuthorityConfigX509ConfigKeyUsageArgs.builder()
                .baseKeyUsage(AuthorityConfigX509ConfigKeyUsageBaseKeyUsageArgs.builder()
                    .certSign(false)
                    .contentCommitment(false)
                    .crlSign(false)
                    .dataEncipherment(false)
                    .decipherOnly(false)
                    .digitalSignature(false)
                    .encipherOnly(false)
                    .keyAgreement(false)
                    .keyEncipherment(false)
                    .build())
                .extendedKeyUsage(AuthorityConfigX509ConfigKeyUsageExtendedKeyUsageArgs.builder()
                    .clientAuth(false)
                    .codeSigning(false)
                    .emailProtection(false)
                    .ocspSigning(false)
                    .serverAuth(false)
                    .timeStamping(false)
                    .build())
                .unknownExtendedKeyUsages(AuthorityConfigX509ConfigKeyUsageUnknownExtendedKeyUsageArgs.builder()
                    .objectIdPaths(0)
                    .build())
                .build())
            .additionalExtensions(AuthorityConfigX509ConfigAdditionalExtensionArgs.builder()
                .critical(false)
                .objectId(AuthorityConfigX509ConfigAdditionalExtensionObjectIdArgs.builder()
                    .objectIdPaths(0)
                    .build())
                .value("string")
                .build())
            .aiaOcspServers("string")
            .nameConstraints(AuthorityConfigX509ConfigNameConstraintsArgs.builder()
                .critical(false)
                .excludedDnsNames("string")
                .excludedEmailAddresses("string")
                .excludedIpRanges("string")
                .excludedUris("string")
                .permittedDnsNames("string")
                .permittedEmailAddresses("string")
                .permittedIpRanges("string")
                .permittedUris("string")
                .build())
            .policyIds(AuthorityConfigX509ConfigPolicyIdArgs.builder()
                .objectIdPaths(0)
                .build())
            .build())
        .subjectKeyId(AuthorityConfigSubjectKeyIdArgs.builder()
            .keyId("string")
            .build())
        .build())
    .pool("string")
    .location("string")
    .certificateAuthorityId("string")
    .lifetime("string")
    .ignoreActiveCertificatesOnDeletion(false)
    .labels(Map.of("string", "string"))
    .gcsBucket("string")
    .desiredState("string")
    .pemCaCertificate("string")
    .deletionProtection(false)
    .project("string")
    .skipGracePeriod(false)
    .subordinateConfig(AuthoritySubordinateConfigArgs.builder()
        .certificateAuthority("string")
        .pemIssuerChain(AuthoritySubordinateConfigPemIssuerChainArgs.builder()
            .pemCertificates("string")
            .build())
        .build())
    .type("string")
    .userDefinedAccessUrls(AuthorityUserDefinedAccessUrlsArgs.builder()
        .aiaIssuingCertificateUrls("string")
        .crlAccessUrls("string")
        .build())
    .build());
authority_resource = gcp.certificateauthority.Authority("authorityResource",
    key_spec={
        "algorithm": "string",
        "cloud_kms_key_version": "string",
    },
    config={
        "subject_config": {
            "subject": {
                "common_name": "string",
                "organization": "string",
                "country_code": "string",
                "locality": "string",
                "organizational_unit": "string",
                "postal_code": "string",
                "province": "string",
                "street_address": "string",
            },
            "subject_alt_name": {
                "dns_names": ["string"],
                "email_addresses": ["string"],
                "ip_addresses": ["string"],
                "uris": ["string"],
            },
        },
        "x509_config": {
            "ca_options": {
                "is_ca": False,
                "max_issuer_path_length": 0,
                "non_ca": False,
                "zero_max_issuer_path_length": False,
            },
            "key_usage": {
                "base_key_usage": {
                    "cert_sign": False,
                    "content_commitment": False,
                    "crl_sign": False,
                    "data_encipherment": False,
                    "decipher_only": False,
                    "digital_signature": False,
                    "encipher_only": False,
                    "key_agreement": False,
                    "key_encipherment": False,
                },
                "extended_key_usage": {
                    "client_auth": False,
                    "code_signing": False,
                    "email_protection": False,
                    "ocsp_signing": False,
                    "server_auth": False,
                    "time_stamping": False,
                },
                "unknown_extended_key_usages": [{
                    "object_id_paths": [0],
                }],
            },
            "additional_extensions": [{
                "critical": False,
                "object_id": {
                    "object_id_paths": [0],
                },
                "value": "string",
            }],
            "aia_ocsp_servers": ["string"],
            "name_constraints": {
                "critical": False,
                "excluded_dns_names": ["string"],
                "excluded_email_addresses": ["string"],
                "excluded_ip_ranges": ["string"],
                "excluded_uris": ["string"],
                "permitted_dns_names": ["string"],
                "permitted_email_addresses": ["string"],
                "permitted_ip_ranges": ["string"],
                "permitted_uris": ["string"],
            },
            "policy_ids": [{
                "object_id_paths": [0],
            }],
        },
        "subject_key_id": {
            "key_id": "string",
        },
    },
    pool="string",
    location="string",
    certificate_authority_id="string",
    lifetime="string",
    ignore_active_certificates_on_deletion=False,
    labels={
        "string": "string",
    },
    gcs_bucket="string",
    desired_state="string",
    pem_ca_certificate="string",
    deletion_protection=False,
    project="string",
    skip_grace_period=False,
    subordinate_config={
        "certificate_authority": "string",
        "pem_issuer_chain": {
            "pem_certificates": ["string"],
        },
    },
    type="string",
    user_defined_access_urls={
        "aia_issuing_certificate_urls": ["string"],
        "crl_access_urls": ["string"],
    })
const authorityResource = new gcp.certificateauthority.Authority("authorityResource", {
    keySpec: {
        algorithm: "string",
        cloudKmsKeyVersion: "string",
    },
    config: {
        subjectConfig: {
            subject: {
                commonName: "string",
                organization: "string",
                countryCode: "string",
                locality: "string",
                organizationalUnit: "string",
                postalCode: "string",
                province: "string",
                streetAddress: "string",
            },
            subjectAltName: {
                dnsNames: ["string"],
                emailAddresses: ["string"],
                ipAddresses: ["string"],
                uris: ["string"],
            },
        },
        x509Config: {
            caOptions: {
                isCa: false,
                maxIssuerPathLength: 0,
                nonCa: false,
                zeroMaxIssuerPathLength: false,
            },
            keyUsage: {
                baseKeyUsage: {
                    certSign: false,
                    contentCommitment: false,
                    crlSign: false,
                    dataEncipherment: false,
                    decipherOnly: false,
                    digitalSignature: false,
                    encipherOnly: false,
                    keyAgreement: false,
                    keyEncipherment: false,
                },
                extendedKeyUsage: {
                    clientAuth: false,
                    codeSigning: false,
                    emailProtection: false,
                    ocspSigning: false,
                    serverAuth: false,
                    timeStamping: false,
                },
                unknownExtendedKeyUsages: [{
                    objectIdPaths: [0],
                }],
            },
            additionalExtensions: [{
                critical: false,
                objectId: {
                    objectIdPaths: [0],
                },
                value: "string",
            }],
            aiaOcspServers: ["string"],
            nameConstraints: {
                critical: false,
                excludedDnsNames: ["string"],
                excludedEmailAddresses: ["string"],
                excludedIpRanges: ["string"],
                excludedUris: ["string"],
                permittedDnsNames: ["string"],
                permittedEmailAddresses: ["string"],
                permittedIpRanges: ["string"],
                permittedUris: ["string"],
            },
            policyIds: [{
                objectIdPaths: [0],
            }],
        },
        subjectKeyId: {
            keyId: "string",
        },
    },
    pool: "string",
    location: "string",
    certificateAuthorityId: "string",
    lifetime: "string",
    ignoreActiveCertificatesOnDeletion: false,
    labels: {
        string: "string",
    },
    gcsBucket: "string",
    desiredState: "string",
    pemCaCertificate: "string",
    deletionProtection: false,
    project: "string",
    skipGracePeriod: false,
    subordinateConfig: {
        certificateAuthority: "string",
        pemIssuerChain: {
            pemCertificates: ["string"],
        },
    },
    type: "string",
    userDefinedAccessUrls: {
        aiaIssuingCertificateUrls: ["string"],
        crlAccessUrls: ["string"],
    },
});
type: gcp:certificateauthority:Authority
properties:
    certificateAuthorityId: string
    config:
        subjectConfig:
            subject:
                commonName: string
                countryCode: string
                locality: string
                organization: string
                organizationalUnit: string
                postalCode: string
                province: string
                streetAddress: string
            subjectAltName:
                dnsNames:
                    - string
                emailAddresses:
                    - string
                ipAddresses:
                    - string
                uris:
                    - string
        subjectKeyId:
            keyId: string
        x509Config:
            additionalExtensions:
                - critical: false
                  objectId:
                    objectIdPaths:
                        - 0
                  value: string
            aiaOcspServers:
                - string
            caOptions:
                isCa: false
                maxIssuerPathLength: 0
                nonCa: false
                zeroMaxIssuerPathLength: false
            keyUsage:
                baseKeyUsage:
                    certSign: false
                    contentCommitment: false
                    crlSign: false
                    dataEncipherment: false
                    decipherOnly: false
                    digitalSignature: false
                    encipherOnly: false
                    keyAgreement: false
                    keyEncipherment: false
                extendedKeyUsage:
                    clientAuth: false
                    codeSigning: false
                    emailProtection: false
                    ocspSigning: false
                    serverAuth: false
                    timeStamping: false
                unknownExtendedKeyUsages:
                    - objectIdPaths:
                        - 0
            nameConstraints:
                critical: false
                excludedDnsNames:
                    - string
                excludedEmailAddresses:
                    - string
                excludedIpRanges:
                    - string
                excludedUris:
                    - string
                permittedDnsNames:
                    - string
                permittedEmailAddresses:
                    - string
                permittedIpRanges:
                    - string
                permittedUris:
                    - string
            policyIds:
                - objectIdPaths:
                    - 0
    deletionProtection: false
    desiredState: string
    gcsBucket: string
    ignoreActiveCertificatesOnDeletion: false
    keySpec:
        algorithm: string
        cloudKmsKeyVersion: string
    labels:
        string: string
    lifetime: string
    location: string
    pemCaCertificate: string
    pool: string
    project: string
    skipGracePeriod: false
    subordinateConfig:
        certificateAuthority: string
        pemIssuerChain:
            pemCertificates:
                - string
    type: string
    userDefinedAccessUrls:
        aiaIssuingCertificateUrls:
            - string
        crlAccessUrls:
            - string
Authority Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The Authority resource accepts the following input properties:
- string
- The user provided Resource ID for this Certificate Authority.
- Config
AuthorityConfig 
- The config used to create a self-signed X.509 certificate or CSR. Structure is documented below.
- KeySpec AuthorityKey Spec 
- Used when issuing certificates for this CertificateAuthority. If this CertificateAuthority is a self-signed CertificateAuthority, this key is also used to sign the self-signed CA certificate. Otherwise, it is used to sign a CSR. Structure is documented below.
- Location string
- Location of the CertificateAuthority. A full list of valid locations can be found by
running gcloud privateca locations list.
- Pool string
- The name of the CaPool this Certificate Authority belongs to.
- DeletionProtection bool
- DesiredState string
- Desired state of the CertificateAuthority. Set this field to 'STAGED' to create a 'STAGED' root CA. Possible values: ENABLED, DISABLED, STAGED.
- GcsBucket string
- The name of a Cloud Storage bucket where this CertificateAuthority will publish content, such as the CA certificate and CRLs. This must be a bucket name, without any prefixes (such as 'gs://') or suffixes (such as '.googleapis.com'). For example, to use a bucket named my-bucket, you would simply specify 'my-bucket'. If not specified, a managed bucket will be created.
- IgnoreActive boolCertificates On Deletion 
- This field allows the CA to be deleted even if the CA has active certs. Active certs include both unrevoked and unexpired certs. Use with care. Defaults to 'false'.
- Labels Dictionary<string, string>
- Labels with user-defined metadata. An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- Lifetime string
- The desired lifetime of the CA certificate. Used to create the "notBeforeTime" and "notAfterTime" fields inside an X.509 certificate. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".
- PemCa stringCertificate 
- The signed CA certificate issued from the subordinated CA's CSR. This is needed when activating the subordiante CA with a third party issuer.
- Project string
- SkipGrace boolPeriod 
- If this flag is set, the Certificate Authority will be deleted as soon as possible without a 30-day grace period where undeletion would have been allowed. If you proceed, there will be no way to recover this CA. Use with care. Defaults to 'false'.
- SubordinateConfig AuthoritySubordinate Config 
- If this is a subordinate CertificateAuthority, this field will be set with the subordinate configuration, which describes its issuers.
- Type string
- The Type of this CertificateAuthority. > Note: For 'SUBORDINATE' Certificate Authorities, they need to be activated before they can issue certificates. Default value: "SELF_SIGNED" Possible values: ["SELF_SIGNED", "SUBORDINATE"]
- UserDefined AuthorityAccess Urls User Defined Access Urls 
- Custom URLs for accessing content published by this CA, such as the CA certificate and CRLs, that can be specified by users.
- string
- The user provided Resource ID for this Certificate Authority.
- Config
AuthorityConfig Args 
- The config used to create a self-signed X.509 certificate or CSR. Structure is documented below.
- KeySpec AuthorityKey Spec Args 
- Used when issuing certificates for this CertificateAuthority. If this CertificateAuthority is a self-signed CertificateAuthority, this key is also used to sign the self-signed CA certificate. Otherwise, it is used to sign a CSR. Structure is documented below.
- Location string
- Location of the CertificateAuthority. A full list of valid locations can be found by
running gcloud privateca locations list.
- Pool string
- The name of the CaPool this Certificate Authority belongs to.
- DeletionProtection bool
- DesiredState string
- Desired state of the CertificateAuthority. Set this field to 'STAGED' to create a 'STAGED' root CA. Possible values: ENABLED, DISABLED, STAGED.
- GcsBucket string
- The name of a Cloud Storage bucket where this CertificateAuthority will publish content, such as the CA certificate and CRLs. This must be a bucket name, without any prefixes (such as 'gs://') or suffixes (such as '.googleapis.com'). For example, to use a bucket named my-bucket, you would simply specify 'my-bucket'. If not specified, a managed bucket will be created.
- IgnoreActive boolCertificates On Deletion 
- This field allows the CA to be deleted even if the CA has active certs. Active certs include both unrevoked and unexpired certs. Use with care. Defaults to 'false'.
- Labels map[string]string
- Labels with user-defined metadata. An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- Lifetime string
- The desired lifetime of the CA certificate. Used to create the "notBeforeTime" and "notAfterTime" fields inside an X.509 certificate. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".
- PemCa stringCertificate 
- The signed CA certificate issued from the subordinated CA's CSR. This is needed when activating the subordiante CA with a third party issuer.
- Project string
- SkipGrace boolPeriod 
- If this flag is set, the Certificate Authority will be deleted as soon as possible without a 30-day grace period where undeletion would have been allowed. If you proceed, there will be no way to recover this CA. Use with care. Defaults to 'false'.
- SubordinateConfig AuthoritySubordinate Config Args 
- If this is a subordinate CertificateAuthority, this field will be set with the subordinate configuration, which describes its issuers.
- Type string
- The Type of this CertificateAuthority. > Note: For 'SUBORDINATE' Certificate Authorities, they need to be activated before they can issue certificates. Default value: "SELF_SIGNED" Possible values: ["SELF_SIGNED", "SUBORDINATE"]
- UserDefined AuthorityAccess Urls User Defined Access Urls Args 
- Custom URLs for accessing content published by this CA, such as the CA certificate and CRLs, that can be specified by users.
- String
- The user provided Resource ID for this Certificate Authority.
- config
AuthorityConfig 
- The config used to create a self-signed X.509 certificate or CSR. Structure is documented below.
- keySpec AuthorityKey Spec 
- Used when issuing certificates for this CertificateAuthority. If this CertificateAuthority is a self-signed CertificateAuthority, this key is also used to sign the self-signed CA certificate. Otherwise, it is used to sign a CSR. Structure is documented below.
- location String
- Location of the CertificateAuthority. A full list of valid locations can be found by
running gcloud privateca locations list.
- pool String
- The name of the CaPool this Certificate Authority belongs to.
- deletionProtection Boolean
- desiredState String
- Desired state of the CertificateAuthority. Set this field to 'STAGED' to create a 'STAGED' root CA. Possible values: ENABLED, DISABLED, STAGED.
- gcsBucket String
- The name of a Cloud Storage bucket where this CertificateAuthority will publish content, such as the CA certificate and CRLs. This must be a bucket name, without any prefixes (such as 'gs://') or suffixes (such as '.googleapis.com'). For example, to use a bucket named my-bucket, you would simply specify 'my-bucket'. If not specified, a managed bucket will be created.
- ignoreActive BooleanCertificates On Deletion 
- This field allows the CA to be deleted even if the CA has active certs. Active certs include both unrevoked and unexpired certs. Use with care. Defaults to 'false'.
- labels Map<String,String>
- Labels with user-defined metadata. An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- lifetime String
- The desired lifetime of the CA certificate. Used to create the "notBeforeTime" and "notAfterTime" fields inside an X.509 certificate. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".
- pemCa StringCertificate 
- The signed CA certificate issued from the subordinated CA's CSR. This is needed when activating the subordiante CA with a third party issuer.
- project String
- skipGrace BooleanPeriod 
- If this flag is set, the Certificate Authority will be deleted as soon as possible without a 30-day grace period where undeletion would have been allowed. If you proceed, there will be no way to recover this CA. Use with care. Defaults to 'false'.
- subordinateConfig AuthoritySubordinate Config 
- If this is a subordinate CertificateAuthority, this field will be set with the subordinate configuration, which describes its issuers.
- type String
- The Type of this CertificateAuthority. > Note: For 'SUBORDINATE' Certificate Authorities, they need to be activated before they can issue certificates. Default value: "SELF_SIGNED" Possible values: ["SELF_SIGNED", "SUBORDINATE"]
- userDefined AuthorityAccess Urls User Defined Access Urls 
- Custom URLs for accessing content published by this CA, such as the CA certificate and CRLs, that can be specified by users.
- string
- The user provided Resource ID for this Certificate Authority.
- config
AuthorityConfig 
- The config used to create a self-signed X.509 certificate or CSR. Structure is documented below.
- keySpec AuthorityKey Spec 
- Used when issuing certificates for this CertificateAuthority. If this CertificateAuthority is a self-signed CertificateAuthority, this key is also used to sign the self-signed CA certificate. Otherwise, it is used to sign a CSR. Structure is documented below.
- location string
- Location of the CertificateAuthority. A full list of valid locations can be found by
running gcloud privateca locations list.
- pool string
- The name of the CaPool this Certificate Authority belongs to.
- deletionProtection boolean
- desiredState string
- Desired state of the CertificateAuthority. Set this field to 'STAGED' to create a 'STAGED' root CA. Possible values: ENABLED, DISABLED, STAGED.
- gcsBucket string
- The name of a Cloud Storage bucket where this CertificateAuthority will publish content, such as the CA certificate and CRLs. This must be a bucket name, without any prefixes (such as 'gs://') or suffixes (such as '.googleapis.com'). For example, to use a bucket named my-bucket, you would simply specify 'my-bucket'. If not specified, a managed bucket will be created.
- ignoreActive booleanCertificates On Deletion 
- This field allows the CA to be deleted even if the CA has active certs. Active certs include both unrevoked and unexpired certs. Use with care. Defaults to 'false'.
- labels {[key: string]: string}
- Labels with user-defined metadata. An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- lifetime string
- The desired lifetime of the CA certificate. Used to create the "notBeforeTime" and "notAfterTime" fields inside an X.509 certificate. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".
- pemCa stringCertificate 
- The signed CA certificate issued from the subordinated CA's CSR. This is needed when activating the subordiante CA with a third party issuer.
- project string
- skipGrace booleanPeriod 
- If this flag is set, the Certificate Authority will be deleted as soon as possible without a 30-day grace period where undeletion would have been allowed. If you proceed, there will be no way to recover this CA. Use with care. Defaults to 'false'.
- subordinateConfig AuthoritySubordinate Config 
- If this is a subordinate CertificateAuthority, this field will be set with the subordinate configuration, which describes its issuers.
- type string
- The Type of this CertificateAuthority. > Note: For 'SUBORDINATE' Certificate Authorities, they need to be activated before they can issue certificates. Default value: "SELF_SIGNED" Possible values: ["SELF_SIGNED", "SUBORDINATE"]
- userDefined AuthorityAccess Urls User Defined Access Urls 
- Custom URLs for accessing content published by this CA, such as the CA certificate and CRLs, that can be specified by users.
- str
- The user provided Resource ID for this Certificate Authority.
- config
AuthorityConfig Args 
- The config used to create a self-signed X.509 certificate or CSR. Structure is documented below.
- key_spec AuthorityKey Spec Args 
- Used when issuing certificates for this CertificateAuthority. If this CertificateAuthority is a self-signed CertificateAuthority, this key is also used to sign the self-signed CA certificate. Otherwise, it is used to sign a CSR. Structure is documented below.
- location str
- Location of the CertificateAuthority. A full list of valid locations can be found by
running gcloud privateca locations list.
- pool str
- The name of the CaPool this Certificate Authority belongs to.
- deletion_protection bool
- desired_state str
- Desired state of the CertificateAuthority. Set this field to 'STAGED' to create a 'STAGED' root CA. Possible values: ENABLED, DISABLED, STAGED.
- gcs_bucket str
- The name of a Cloud Storage bucket where this CertificateAuthority will publish content, such as the CA certificate and CRLs. This must be a bucket name, without any prefixes (such as 'gs://') or suffixes (such as '.googleapis.com'). For example, to use a bucket named my-bucket, you would simply specify 'my-bucket'. If not specified, a managed bucket will be created.
- ignore_active_ boolcertificates_ on_ deletion 
- This field allows the CA to be deleted even if the CA has active certs. Active certs include both unrevoked and unexpired certs. Use with care. Defaults to 'false'.
- labels Mapping[str, str]
- Labels with user-defined metadata. An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- lifetime str
- The desired lifetime of the CA certificate. Used to create the "notBeforeTime" and "notAfterTime" fields inside an X.509 certificate. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".
- pem_ca_ strcertificate 
- The signed CA certificate issued from the subordinated CA's CSR. This is needed when activating the subordiante CA with a third party issuer.
- project str
- skip_grace_ boolperiod 
- If this flag is set, the Certificate Authority will be deleted as soon as possible without a 30-day grace period where undeletion would have been allowed. If you proceed, there will be no way to recover this CA. Use with care. Defaults to 'false'.
- subordinate_config AuthoritySubordinate Config Args 
- If this is a subordinate CertificateAuthority, this field will be set with the subordinate configuration, which describes its issuers.
- type str
- The Type of this CertificateAuthority. > Note: For 'SUBORDINATE' Certificate Authorities, they need to be activated before they can issue certificates. Default value: "SELF_SIGNED" Possible values: ["SELF_SIGNED", "SUBORDINATE"]
- user_defined_ Authorityaccess_ urls User Defined Access Urls Args 
- Custom URLs for accessing content published by this CA, such as the CA certificate and CRLs, that can be specified by users.
- String
- The user provided Resource ID for this Certificate Authority.
- config Property Map
- The config used to create a self-signed X.509 certificate or CSR. Structure is documented below.
- keySpec Property Map
- Used when issuing certificates for this CertificateAuthority. If this CertificateAuthority is a self-signed CertificateAuthority, this key is also used to sign the self-signed CA certificate. Otherwise, it is used to sign a CSR. Structure is documented below.
- location String
- Location of the CertificateAuthority. A full list of valid locations can be found by
running gcloud privateca locations list.
- pool String
- The name of the CaPool this Certificate Authority belongs to.
- deletionProtection Boolean
- desiredState String
- Desired state of the CertificateAuthority. Set this field to 'STAGED' to create a 'STAGED' root CA. Possible values: ENABLED, DISABLED, STAGED.
- gcsBucket String
- The name of a Cloud Storage bucket where this CertificateAuthority will publish content, such as the CA certificate and CRLs. This must be a bucket name, without any prefixes (such as 'gs://') or suffixes (such as '.googleapis.com'). For example, to use a bucket named my-bucket, you would simply specify 'my-bucket'. If not specified, a managed bucket will be created.
- ignoreActive BooleanCertificates On Deletion 
- This field allows the CA to be deleted even if the CA has active certs. Active certs include both unrevoked and unexpired certs. Use with care. Defaults to 'false'.
- labels Map<String>
- Labels with user-defined metadata. An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- lifetime String
- The desired lifetime of the CA certificate. Used to create the "notBeforeTime" and "notAfterTime" fields inside an X.509 certificate. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".
- pemCa StringCertificate 
- The signed CA certificate issued from the subordinated CA's CSR. This is needed when activating the subordiante CA with a third party issuer.
- project String
- skipGrace BooleanPeriod 
- If this flag is set, the Certificate Authority will be deleted as soon as possible without a 30-day grace period where undeletion would have been allowed. If you proceed, there will be no way to recover this CA. Use with care. Defaults to 'false'.
- subordinateConfig Property Map
- If this is a subordinate CertificateAuthority, this field will be set with the subordinate configuration, which describes its issuers.
- type String
- The Type of this CertificateAuthority. > Note: For 'SUBORDINATE' Certificate Authorities, they need to be activated before they can issue certificates. Default value: "SELF_SIGNED" Possible values: ["SELF_SIGNED", "SUBORDINATE"]
- userDefined Property MapAccess Urls 
- Custom URLs for accessing content published by this CA, such as the CA certificate and CRLs, that can be specified by users.
Outputs
All input properties are implicitly available as output properties. Additionally, the Authority resource produces the following output properties:
- AccessUrls List<AuthorityAccess Url> 
- URLs for accessing content published by this CA, such as the CA certificate and CRLs. Structure is documented below.
- CreateTime string
- The time at which this CertificateAuthority was created. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
- EffectiveLabels Dictionary<string, string>
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- Id string
- The provider-assigned unique ID for this managed resource.
- Name string
- The resource name for this CertificateAuthority in the format projects//locations//certificateAuthorities/*.
- PemCa List<string>Certificates 
- This CertificateAuthority's certificate chain, including the current CertificateAuthority's certificate. Ordered such that the root issuer is the final element (consistent with RFC 5246). For a self-signed CA, this will only list the current CertificateAuthority's certificate.
- PulumiLabels Dictionary<string, string>
- The combination of labels configured directly on the resource and default labels configured on the provider.
- State string
- The State for this CertificateAuthority.
- UpdateTime string
- The time at which this CertificateAuthority was updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
- AccessUrls []AuthorityAccess Url 
- URLs for accessing content published by this CA, such as the CA certificate and CRLs. Structure is documented below.
- CreateTime string
- The time at which this CertificateAuthority was created. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
- EffectiveLabels map[string]string
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- Id string
- The provider-assigned unique ID for this managed resource.
- Name string
- The resource name for this CertificateAuthority in the format projects//locations//certificateAuthorities/*.
- PemCa []stringCertificates 
- This CertificateAuthority's certificate chain, including the current CertificateAuthority's certificate. Ordered such that the root issuer is the final element (consistent with RFC 5246). For a self-signed CA, this will only list the current CertificateAuthority's certificate.
- PulumiLabels map[string]string
- The combination of labels configured directly on the resource and default labels configured on the provider.
- State string
- The State for this CertificateAuthority.
- UpdateTime string
- The time at which this CertificateAuthority was updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
- accessUrls List<AuthorityAccess Url> 
- URLs for accessing content published by this CA, such as the CA certificate and CRLs. Structure is documented below.
- createTime String
- The time at which this CertificateAuthority was created. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
- effectiveLabels Map<String,String>
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- id String
- The provider-assigned unique ID for this managed resource.
- name String
- The resource name for this CertificateAuthority in the format projects//locations//certificateAuthorities/*.
- pemCa List<String>Certificates 
- This CertificateAuthority's certificate chain, including the current CertificateAuthority's certificate. Ordered such that the root issuer is the final element (consistent with RFC 5246). For a self-signed CA, this will only list the current CertificateAuthority's certificate.
- pulumiLabels Map<String,String>
- The combination of labels configured directly on the resource and default labels configured on the provider.
- state String
- The State for this CertificateAuthority.
- updateTime String
- The time at which this CertificateAuthority was updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
- accessUrls AuthorityAccess Url[] 
- URLs for accessing content published by this CA, such as the CA certificate and CRLs. Structure is documented below.
- createTime string
- The time at which this CertificateAuthority was created. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
- effectiveLabels {[key: string]: string}
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- id string
- The provider-assigned unique ID for this managed resource.
- name string
- The resource name for this CertificateAuthority in the format projects//locations//certificateAuthorities/*.
- pemCa string[]Certificates 
- This CertificateAuthority's certificate chain, including the current CertificateAuthority's certificate. Ordered such that the root issuer is the final element (consistent with RFC 5246). For a self-signed CA, this will only list the current CertificateAuthority's certificate.
- pulumiLabels {[key: string]: string}
- The combination of labels configured directly on the resource and default labels configured on the provider.
- state string
- The State for this CertificateAuthority.
- updateTime string
- The time at which this CertificateAuthority was updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
- access_urls Sequence[AuthorityAccess Url] 
- URLs for accessing content published by this CA, such as the CA certificate and CRLs. Structure is documented below.
- create_time str
- The time at which this CertificateAuthority was created. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
- effective_labels Mapping[str, str]
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- id str
- The provider-assigned unique ID for this managed resource.
- name str
- The resource name for this CertificateAuthority in the format projects//locations//certificateAuthorities/*.
- pem_ca_ Sequence[str]certificates 
- This CertificateAuthority's certificate chain, including the current CertificateAuthority's certificate. Ordered such that the root issuer is the final element (consistent with RFC 5246). For a self-signed CA, this will only list the current CertificateAuthority's certificate.
- pulumi_labels Mapping[str, str]
- The combination of labels configured directly on the resource and default labels configured on the provider.
- state str
- The State for this CertificateAuthority.
- update_time str
- The time at which this CertificateAuthority was updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
- accessUrls List<Property Map>
- URLs for accessing content published by this CA, such as the CA certificate and CRLs. Structure is documented below.
- createTime String
- The time at which this CertificateAuthority was created. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
- effectiveLabels Map<String>
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- id String
- The provider-assigned unique ID for this managed resource.
- name String
- The resource name for this CertificateAuthority in the format projects//locations//certificateAuthorities/*.
- pemCa List<String>Certificates 
- This CertificateAuthority's certificate chain, including the current CertificateAuthority's certificate. Ordered such that the root issuer is the final element (consistent with RFC 5246). For a self-signed CA, this will only list the current CertificateAuthority's certificate.
- pulumiLabels Map<String>
- The combination of labels configured directly on the resource and default labels configured on the provider.
- state String
- The State for this CertificateAuthority.
- updateTime String
- The time at which this CertificateAuthority was updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
Look up Existing Authority Resource
Get an existing Authority resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: AuthorityState, opts?: CustomResourceOptions): Authority@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        access_urls: Optional[Sequence[AuthorityAccessUrlArgs]] = None,
        certificate_authority_id: Optional[str] = None,
        config: Optional[AuthorityConfigArgs] = None,
        create_time: Optional[str] = None,
        deletion_protection: Optional[bool] = None,
        desired_state: Optional[str] = None,
        effective_labels: Optional[Mapping[str, str]] = None,
        gcs_bucket: Optional[str] = None,
        ignore_active_certificates_on_deletion: Optional[bool] = None,
        key_spec: Optional[AuthorityKeySpecArgs] = None,
        labels: Optional[Mapping[str, str]] = None,
        lifetime: Optional[str] = None,
        location: Optional[str] = None,
        name: Optional[str] = None,
        pem_ca_certificate: Optional[str] = None,
        pem_ca_certificates: Optional[Sequence[str]] = None,
        pool: Optional[str] = None,
        project: Optional[str] = None,
        pulumi_labels: Optional[Mapping[str, str]] = None,
        skip_grace_period: Optional[bool] = None,
        state: Optional[str] = None,
        subordinate_config: Optional[AuthoritySubordinateConfigArgs] = None,
        type: Optional[str] = None,
        update_time: Optional[str] = None,
        user_defined_access_urls: Optional[AuthorityUserDefinedAccessUrlsArgs] = None) -> Authorityfunc GetAuthority(ctx *Context, name string, id IDInput, state *AuthorityState, opts ...ResourceOption) (*Authority, error)public static Authority Get(string name, Input<string> id, AuthorityState? state, CustomResourceOptions? opts = null)public static Authority get(String name, Output<String> id, AuthorityState state, CustomResourceOptions options)resources:  _:    type: gcp:certificateauthority:Authority    get:      id: ${id}- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- AccessUrls List<AuthorityAccess Url> 
- URLs for accessing content published by this CA, such as the CA certificate and CRLs. Structure is documented below.
- string
- The user provided Resource ID for this Certificate Authority.
- Config
AuthorityConfig 
- The config used to create a self-signed X.509 certificate or CSR. Structure is documented below.
- CreateTime string
- The time at which this CertificateAuthority was created. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
- DeletionProtection bool
- DesiredState string
- Desired state of the CertificateAuthority. Set this field to 'STAGED' to create a 'STAGED' root CA. Possible values: ENABLED, DISABLED, STAGED.
- EffectiveLabels Dictionary<string, string>
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- GcsBucket string
- The name of a Cloud Storage bucket where this CertificateAuthority will publish content, such as the CA certificate and CRLs. This must be a bucket name, without any prefixes (such as 'gs://') or suffixes (such as '.googleapis.com'). For example, to use a bucket named my-bucket, you would simply specify 'my-bucket'. If not specified, a managed bucket will be created.
- IgnoreActive boolCertificates On Deletion 
- This field allows the CA to be deleted even if the CA has active certs. Active certs include both unrevoked and unexpired certs. Use with care. Defaults to 'false'.
- KeySpec AuthorityKey Spec 
- Used when issuing certificates for this CertificateAuthority. If this CertificateAuthority is a self-signed CertificateAuthority, this key is also used to sign the self-signed CA certificate. Otherwise, it is used to sign a CSR. Structure is documented below.
- Labels Dictionary<string, string>
- Labels with user-defined metadata. An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- Lifetime string
- The desired lifetime of the CA certificate. Used to create the "notBeforeTime" and "notAfterTime" fields inside an X.509 certificate. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".
- Location string
- Location of the CertificateAuthority. A full list of valid locations can be found by
running gcloud privateca locations list.
- Name string
- The resource name for this CertificateAuthority in the format projects//locations//certificateAuthorities/*.
- PemCa stringCertificate 
- The signed CA certificate issued from the subordinated CA's CSR. This is needed when activating the subordiante CA with a third party issuer.
- PemCa List<string>Certificates 
- This CertificateAuthority's certificate chain, including the current CertificateAuthority's certificate. Ordered such that the root issuer is the final element (consistent with RFC 5246). For a self-signed CA, this will only list the current CertificateAuthority's certificate.
- Pool string
- The name of the CaPool this Certificate Authority belongs to.
- Project string
- PulumiLabels Dictionary<string, string>
- The combination of labels configured directly on the resource and default labels configured on the provider.
- SkipGrace boolPeriod 
- If this flag is set, the Certificate Authority will be deleted as soon as possible without a 30-day grace period where undeletion would have been allowed. If you proceed, there will be no way to recover this CA. Use with care. Defaults to 'false'.
- State string
- The State for this CertificateAuthority.
- SubordinateConfig AuthoritySubordinate Config 
- If this is a subordinate CertificateAuthority, this field will be set with the subordinate configuration, which describes its issuers.
- Type string
- The Type of this CertificateAuthority. > Note: For 'SUBORDINATE' Certificate Authorities, they need to be activated before they can issue certificates. Default value: "SELF_SIGNED" Possible values: ["SELF_SIGNED", "SUBORDINATE"]
- UpdateTime string
- The time at which this CertificateAuthority was updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
- UserDefined AuthorityAccess Urls User Defined Access Urls 
- Custom URLs for accessing content published by this CA, such as the CA certificate and CRLs, that can be specified by users.
- AccessUrls []AuthorityAccess Url Args 
- URLs for accessing content published by this CA, such as the CA certificate and CRLs. Structure is documented below.
- string
- The user provided Resource ID for this Certificate Authority.
- Config
AuthorityConfig Args 
- The config used to create a self-signed X.509 certificate or CSR. Structure is documented below.
- CreateTime string
- The time at which this CertificateAuthority was created. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
- DeletionProtection bool
- DesiredState string
- Desired state of the CertificateAuthority. Set this field to 'STAGED' to create a 'STAGED' root CA. Possible values: ENABLED, DISABLED, STAGED.
- EffectiveLabels map[string]string
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- GcsBucket string
- The name of a Cloud Storage bucket where this CertificateAuthority will publish content, such as the CA certificate and CRLs. This must be a bucket name, without any prefixes (such as 'gs://') or suffixes (such as '.googleapis.com'). For example, to use a bucket named my-bucket, you would simply specify 'my-bucket'. If not specified, a managed bucket will be created.
- IgnoreActive boolCertificates On Deletion 
- This field allows the CA to be deleted even if the CA has active certs. Active certs include both unrevoked and unexpired certs. Use with care. Defaults to 'false'.
- KeySpec AuthorityKey Spec Args 
- Used when issuing certificates for this CertificateAuthority. If this CertificateAuthority is a self-signed CertificateAuthority, this key is also used to sign the self-signed CA certificate. Otherwise, it is used to sign a CSR. Structure is documented below.
- Labels map[string]string
- Labels with user-defined metadata. An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- Lifetime string
- The desired lifetime of the CA certificate. Used to create the "notBeforeTime" and "notAfterTime" fields inside an X.509 certificate. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".
- Location string
- Location of the CertificateAuthority. A full list of valid locations can be found by
running gcloud privateca locations list.
- Name string
- The resource name for this CertificateAuthority in the format projects//locations//certificateAuthorities/*.
- PemCa stringCertificate 
- The signed CA certificate issued from the subordinated CA's CSR. This is needed when activating the subordiante CA with a third party issuer.
- PemCa []stringCertificates 
- This CertificateAuthority's certificate chain, including the current CertificateAuthority's certificate. Ordered such that the root issuer is the final element (consistent with RFC 5246). For a self-signed CA, this will only list the current CertificateAuthority's certificate.
- Pool string
- The name of the CaPool this Certificate Authority belongs to.
- Project string
- PulumiLabels map[string]string
- The combination of labels configured directly on the resource and default labels configured on the provider.
- SkipGrace boolPeriod 
- If this flag is set, the Certificate Authority will be deleted as soon as possible without a 30-day grace period where undeletion would have been allowed. If you proceed, there will be no way to recover this CA. Use with care. Defaults to 'false'.
- State string
- The State for this CertificateAuthority.
- SubordinateConfig AuthoritySubordinate Config Args 
- If this is a subordinate CertificateAuthority, this field will be set with the subordinate configuration, which describes its issuers.
- Type string
- The Type of this CertificateAuthority. > Note: For 'SUBORDINATE' Certificate Authorities, they need to be activated before they can issue certificates. Default value: "SELF_SIGNED" Possible values: ["SELF_SIGNED", "SUBORDINATE"]
- UpdateTime string
- The time at which this CertificateAuthority was updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
- UserDefined AuthorityAccess Urls User Defined Access Urls Args 
- Custom URLs for accessing content published by this CA, such as the CA certificate and CRLs, that can be specified by users.
- accessUrls List<AuthorityAccess Url> 
- URLs for accessing content published by this CA, such as the CA certificate and CRLs. Structure is documented below.
- String
- The user provided Resource ID for this Certificate Authority.
- config
AuthorityConfig 
- The config used to create a self-signed X.509 certificate or CSR. Structure is documented below.
- createTime String
- The time at which this CertificateAuthority was created. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
- deletionProtection Boolean
- desiredState String
- Desired state of the CertificateAuthority. Set this field to 'STAGED' to create a 'STAGED' root CA. Possible values: ENABLED, DISABLED, STAGED.
- effectiveLabels Map<String,String>
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- gcsBucket String
- The name of a Cloud Storage bucket where this CertificateAuthority will publish content, such as the CA certificate and CRLs. This must be a bucket name, without any prefixes (such as 'gs://') or suffixes (such as '.googleapis.com'). For example, to use a bucket named my-bucket, you would simply specify 'my-bucket'. If not specified, a managed bucket will be created.
- ignoreActive BooleanCertificates On Deletion 
- This field allows the CA to be deleted even if the CA has active certs. Active certs include both unrevoked and unexpired certs. Use with care. Defaults to 'false'.
- keySpec AuthorityKey Spec 
- Used when issuing certificates for this CertificateAuthority. If this CertificateAuthority is a self-signed CertificateAuthority, this key is also used to sign the self-signed CA certificate. Otherwise, it is used to sign a CSR. Structure is documented below.
- labels Map<String,String>
- Labels with user-defined metadata. An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- lifetime String
- The desired lifetime of the CA certificate. Used to create the "notBeforeTime" and "notAfterTime" fields inside an X.509 certificate. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".
- location String
- Location of the CertificateAuthority. A full list of valid locations can be found by
running gcloud privateca locations list.
- name String
- The resource name for this CertificateAuthority in the format projects//locations//certificateAuthorities/*.
- pemCa StringCertificate 
- The signed CA certificate issued from the subordinated CA's CSR. This is needed when activating the subordiante CA with a third party issuer.
- pemCa List<String>Certificates 
- This CertificateAuthority's certificate chain, including the current CertificateAuthority's certificate. Ordered such that the root issuer is the final element (consistent with RFC 5246). For a self-signed CA, this will only list the current CertificateAuthority's certificate.
- pool String
- The name of the CaPool this Certificate Authority belongs to.
- project String
- pulumiLabels Map<String,String>
- The combination of labels configured directly on the resource and default labels configured on the provider.
- skipGrace BooleanPeriod 
- If this flag is set, the Certificate Authority will be deleted as soon as possible without a 30-day grace period where undeletion would have been allowed. If you proceed, there will be no way to recover this CA. Use with care. Defaults to 'false'.
- state String
- The State for this CertificateAuthority.
- subordinateConfig AuthoritySubordinate Config 
- If this is a subordinate CertificateAuthority, this field will be set with the subordinate configuration, which describes its issuers.
- type String
- The Type of this CertificateAuthority. > Note: For 'SUBORDINATE' Certificate Authorities, they need to be activated before they can issue certificates. Default value: "SELF_SIGNED" Possible values: ["SELF_SIGNED", "SUBORDINATE"]
- updateTime String
- The time at which this CertificateAuthority was updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
- userDefined AuthorityAccess Urls User Defined Access Urls 
- Custom URLs for accessing content published by this CA, such as the CA certificate and CRLs, that can be specified by users.
- accessUrls AuthorityAccess Url[] 
- URLs for accessing content published by this CA, such as the CA certificate and CRLs. Structure is documented below.
- string
- The user provided Resource ID for this Certificate Authority.
- config
AuthorityConfig 
- The config used to create a self-signed X.509 certificate or CSR. Structure is documented below.
- createTime string
- The time at which this CertificateAuthority was created. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
- deletionProtection boolean
- desiredState string
- Desired state of the CertificateAuthority. Set this field to 'STAGED' to create a 'STAGED' root CA. Possible values: ENABLED, DISABLED, STAGED.
- effectiveLabels {[key: string]: string}
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- gcsBucket string
- The name of a Cloud Storage bucket where this CertificateAuthority will publish content, such as the CA certificate and CRLs. This must be a bucket name, without any prefixes (such as 'gs://') or suffixes (such as '.googleapis.com'). For example, to use a bucket named my-bucket, you would simply specify 'my-bucket'. If not specified, a managed bucket will be created.
- ignoreActive booleanCertificates On Deletion 
- This field allows the CA to be deleted even if the CA has active certs. Active certs include both unrevoked and unexpired certs. Use with care. Defaults to 'false'.
- keySpec AuthorityKey Spec 
- Used when issuing certificates for this CertificateAuthority. If this CertificateAuthority is a self-signed CertificateAuthority, this key is also used to sign the self-signed CA certificate. Otherwise, it is used to sign a CSR. Structure is documented below.
- labels {[key: string]: string}
- Labels with user-defined metadata. An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- lifetime string
- The desired lifetime of the CA certificate. Used to create the "notBeforeTime" and "notAfterTime" fields inside an X.509 certificate. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".
- location string
- Location of the CertificateAuthority. A full list of valid locations can be found by
running gcloud privateca locations list.
- name string
- The resource name for this CertificateAuthority in the format projects//locations//certificateAuthorities/*.
- pemCa stringCertificate 
- The signed CA certificate issued from the subordinated CA's CSR. This is needed when activating the subordiante CA with a third party issuer.
- pemCa string[]Certificates 
- This CertificateAuthority's certificate chain, including the current CertificateAuthority's certificate. Ordered such that the root issuer is the final element (consistent with RFC 5246). For a self-signed CA, this will only list the current CertificateAuthority's certificate.
- pool string
- The name of the CaPool this Certificate Authority belongs to.
- project string
- pulumiLabels {[key: string]: string}
- The combination of labels configured directly on the resource and default labels configured on the provider.
- skipGrace booleanPeriod 
- If this flag is set, the Certificate Authority will be deleted as soon as possible without a 30-day grace period where undeletion would have been allowed. If you proceed, there will be no way to recover this CA. Use with care. Defaults to 'false'.
- state string
- The State for this CertificateAuthority.
- subordinateConfig AuthoritySubordinate Config 
- If this is a subordinate CertificateAuthority, this field will be set with the subordinate configuration, which describes its issuers.
- type string
- The Type of this CertificateAuthority. > Note: For 'SUBORDINATE' Certificate Authorities, they need to be activated before they can issue certificates. Default value: "SELF_SIGNED" Possible values: ["SELF_SIGNED", "SUBORDINATE"]
- updateTime string
- The time at which this CertificateAuthority was updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
- userDefined AuthorityAccess Urls User Defined Access Urls 
- Custom URLs for accessing content published by this CA, such as the CA certificate and CRLs, that can be specified by users.
- access_urls Sequence[AuthorityAccess Url Args] 
- URLs for accessing content published by this CA, such as the CA certificate and CRLs. Structure is documented below.
- str
- The user provided Resource ID for this Certificate Authority.
- config
AuthorityConfig Args 
- The config used to create a self-signed X.509 certificate or CSR. Structure is documented below.
- create_time str
- The time at which this CertificateAuthority was created. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
- deletion_protection bool
- desired_state str
- Desired state of the CertificateAuthority. Set this field to 'STAGED' to create a 'STAGED' root CA. Possible values: ENABLED, DISABLED, STAGED.
- effective_labels Mapping[str, str]
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- gcs_bucket str
- The name of a Cloud Storage bucket where this CertificateAuthority will publish content, such as the CA certificate and CRLs. This must be a bucket name, without any prefixes (such as 'gs://') or suffixes (such as '.googleapis.com'). For example, to use a bucket named my-bucket, you would simply specify 'my-bucket'. If not specified, a managed bucket will be created.
- ignore_active_ boolcertificates_ on_ deletion 
- This field allows the CA to be deleted even if the CA has active certs. Active certs include both unrevoked and unexpired certs. Use with care. Defaults to 'false'.
- key_spec AuthorityKey Spec Args 
- Used when issuing certificates for this CertificateAuthority. If this CertificateAuthority is a self-signed CertificateAuthority, this key is also used to sign the self-signed CA certificate. Otherwise, it is used to sign a CSR. Structure is documented below.
- labels Mapping[str, str]
- Labels with user-defined metadata. An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- lifetime str
- The desired lifetime of the CA certificate. Used to create the "notBeforeTime" and "notAfterTime" fields inside an X.509 certificate. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".
- location str
- Location of the CertificateAuthority. A full list of valid locations can be found by
running gcloud privateca locations list.
- name str
- The resource name for this CertificateAuthority in the format projects//locations//certificateAuthorities/*.
- pem_ca_ strcertificate 
- The signed CA certificate issued from the subordinated CA's CSR. This is needed when activating the subordiante CA with a third party issuer.
- pem_ca_ Sequence[str]certificates 
- This CertificateAuthority's certificate chain, including the current CertificateAuthority's certificate. Ordered such that the root issuer is the final element (consistent with RFC 5246). For a self-signed CA, this will only list the current CertificateAuthority's certificate.
- pool str
- The name of the CaPool this Certificate Authority belongs to.
- project str
- pulumi_labels Mapping[str, str]
- The combination of labels configured directly on the resource and default labels configured on the provider.
- skip_grace_ boolperiod 
- If this flag is set, the Certificate Authority will be deleted as soon as possible without a 30-day grace period where undeletion would have been allowed. If you proceed, there will be no way to recover this CA. Use with care. Defaults to 'false'.
- state str
- The State for this CertificateAuthority.
- subordinate_config AuthoritySubordinate Config Args 
- If this is a subordinate CertificateAuthority, this field will be set with the subordinate configuration, which describes its issuers.
- type str
- The Type of this CertificateAuthority. > Note: For 'SUBORDINATE' Certificate Authorities, they need to be activated before they can issue certificates. Default value: "SELF_SIGNED" Possible values: ["SELF_SIGNED", "SUBORDINATE"]
- update_time str
- The time at which this CertificateAuthority was updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
- user_defined_ Authorityaccess_ urls User Defined Access Urls Args 
- Custom URLs for accessing content published by this CA, such as the CA certificate and CRLs, that can be specified by users.
- accessUrls List<Property Map>
- URLs for accessing content published by this CA, such as the CA certificate and CRLs. Structure is documented below.
- String
- The user provided Resource ID for this Certificate Authority.
- config Property Map
- The config used to create a self-signed X.509 certificate or CSR. Structure is documented below.
- createTime String
- The time at which this CertificateAuthority was created. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
- deletionProtection Boolean
- desiredState String
- Desired state of the CertificateAuthority. Set this field to 'STAGED' to create a 'STAGED' root CA. Possible values: ENABLED, DISABLED, STAGED.
- effectiveLabels Map<String>
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- gcsBucket String
- The name of a Cloud Storage bucket where this CertificateAuthority will publish content, such as the CA certificate and CRLs. This must be a bucket name, without any prefixes (such as 'gs://') or suffixes (such as '.googleapis.com'). For example, to use a bucket named my-bucket, you would simply specify 'my-bucket'. If not specified, a managed bucket will be created.
- ignoreActive BooleanCertificates On Deletion 
- This field allows the CA to be deleted even if the CA has active certs. Active certs include both unrevoked and unexpired certs. Use with care. Defaults to 'false'.
- keySpec Property Map
- Used when issuing certificates for this CertificateAuthority. If this CertificateAuthority is a self-signed CertificateAuthority, this key is also used to sign the self-signed CA certificate. Otherwise, it is used to sign a CSR. Structure is documented below.
- labels Map<String>
- Labels with user-defined metadata. An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- lifetime String
- The desired lifetime of the CA certificate. Used to create the "notBeforeTime" and "notAfterTime" fields inside an X.509 certificate. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".
- location String
- Location of the CertificateAuthority. A full list of valid locations can be found by
running gcloud privateca locations list.
- name String
- The resource name for this CertificateAuthority in the format projects//locations//certificateAuthorities/*.
- pemCa StringCertificate 
- The signed CA certificate issued from the subordinated CA's CSR. This is needed when activating the subordiante CA with a third party issuer.
- pemCa List<String>Certificates 
- This CertificateAuthority's certificate chain, including the current CertificateAuthority's certificate. Ordered such that the root issuer is the final element (consistent with RFC 5246). For a self-signed CA, this will only list the current CertificateAuthority's certificate.
- pool String
- The name of the CaPool this Certificate Authority belongs to.
- project String
- pulumiLabels Map<String>
- The combination of labels configured directly on the resource and default labels configured on the provider.
- skipGrace BooleanPeriod 
- If this flag is set, the Certificate Authority will be deleted as soon as possible without a 30-day grace period where undeletion would have been allowed. If you proceed, there will be no way to recover this CA. Use with care. Defaults to 'false'.
- state String
- The State for this CertificateAuthority.
- subordinateConfig Property Map
- If this is a subordinate CertificateAuthority, this field will be set with the subordinate configuration, which describes its issuers.
- type String
- The Type of this CertificateAuthority. > Note: For 'SUBORDINATE' Certificate Authorities, they need to be activated before they can issue certificates. Default value: "SELF_SIGNED" Possible values: ["SELF_SIGNED", "SUBORDINATE"]
- updateTime String
- The time at which this CertificateAuthority was updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
- userDefined Property MapAccess Urls 
- Custom URLs for accessing content published by this CA, such as the CA certificate and CRLs, that can be specified by users.
Supporting Types
AuthorityAccessUrl, AuthorityAccessUrlArgs      
- CaCertificate stringAccess Url 
- (Output) The URL where this CertificateAuthority's CA certificate is published. This will only be set for CAs that have been activated.
- CrlAccess List<string>Urls 
- (Output) The URL where this CertificateAuthority's CRLs are published. This will only be set for CAs that have been activated.
- CaCertificate stringAccess Url 
- (Output) The URL where this CertificateAuthority's CA certificate is published. This will only be set for CAs that have been activated.
- CrlAccess []stringUrls 
- (Output) The URL where this CertificateAuthority's CRLs are published. This will only be set for CAs that have been activated.
- caCertificate StringAccess Url 
- (Output) The URL where this CertificateAuthority's CA certificate is published. This will only be set for CAs that have been activated.
- crlAccess List<String>Urls 
- (Output) The URL where this CertificateAuthority's CRLs are published. This will only be set for CAs that have been activated.
- caCertificate stringAccess Url 
- (Output) The URL where this CertificateAuthority's CA certificate is published. This will only be set for CAs that have been activated.
- crlAccess string[]Urls 
- (Output) The URL where this CertificateAuthority's CRLs are published. This will only be set for CAs that have been activated.
- ca_certificate_ straccess_ url 
- (Output) The URL where this CertificateAuthority's CA certificate is published. This will only be set for CAs that have been activated.
- crl_access_ Sequence[str]urls 
- (Output) The URL where this CertificateAuthority's CRLs are published. This will only be set for CAs that have been activated.
- caCertificate StringAccess Url 
- (Output) The URL where this CertificateAuthority's CA certificate is published. This will only be set for CAs that have been activated.
- crlAccess List<String>Urls 
- (Output) The URL where this CertificateAuthority's CRLs are published. This will only be set for CAs that have been activated.
AuthorityConfig, AuthorityConfigArgs    
- SubjectConfig AuthorityConfig Subject Config 
- Specifies some of the values in a certificate that are related to the subject. Structure is documented below.
- X509Config
AuthorityConfig X509Config 
- Describes how some of the technical X.509 fields in a certificate should be populated. Structure is documented below.
- SubjectKey AuthorityId Config Subject Key Id 
- When specified this provides a custom SKI to be used in the certificate. This should only be used to maintain a SKI of an existing CA originally created outside CA service, which was not generated using method (1) described in RFC 5280 section 4.2.1.2.. Structure is documented below.
- SubjectConfig AuthorityConfig Subject Config 
- Specifies some of the values in a certificate that are related to the subject. Structure is documented below.
- X509Config
AuthorityConfig X509Config 
- Describes how some of the technical X.509 fields in a certificate should be populated. Structure is documented below.
- SubjectKey AuthorityId Config Subject Key Id 
- When specified this provides a custom SKI to be used in the certificate. This should only be used to maintain a SKI of an existing CA originally created outside CA service, which was not generated using method (1) described in RFC 5280 section 4.2.1.2.. Structure is documented below.
- subjectConfig AuthorityConfig Subject Config 
- Specifies some of the values in a certificate that are related to the subject. Structure is documented below.
- x509Config
AuthorityConfig X509Config 
- Describes how some of the technical X.509 fields in a certificate should be populated. Structure is documented below.
- subjectKey AuthorityId Config Subject Key Id 
- When specified this provides a custom SKI to be used in the certificate. This should only be used to maintain a SKI of an existing CA originally created outside CA service, which was not generated using method (1) described in RFC 5280 section 4.2.1.2.. Structure is documented below.
- subjectConfig AuthorityConfig Subject Config 
- Specifies some of the values in a certificate that are related to the subject. Structure is documented below.
- x509Config
AuthorityConfig X509Config 
- Describes how some of the technical X.509 fields in a certificate should be populated. Structure is documented below.
- subjectKey AuthorityId Config Subject Key Id 
- When specified this provides a custom SKI to be used in the certificate. This should only be used to maintain a SKI of an existing CA originally created outside CA service, which was not generated using method (1) described in RFC 5280 section 4.2.1.2.. Structure is documented below.
- subject_config AuthorityConfig Subject Config 
- Specifies some of the values in a certificate that are related to the subject. Structure is documented below.
- x509_config AuthorityConfig X509Config 
- Describes how some of the technical X.509 fields in a certificate should be populated. Structure is documented below.
- subject_key_ Authorityid Config Subject Key Id 
- When specified this provides a custom SKI to be used in the certificate. This should only be used to maintain a SKI of an existing CA originally created outside CA service, which was not generated using method (1) described in RFC 5280 section 4.2.1.2.. Structure is documented below.
- subjectConfig Property Map
- Specifies some of the values in a certificate that are related to the subject. Structure is documented below.
- x509Config Property Map
- Describes how some of the technical X.509 fields in a certificate should be populated. Structure is documented below.
- subjectKey Property MapId 
- When specified this provides a custom SKI to be used in the certificate. This should only be used to maintain a SKI of an existing CA originally created outside CA service, which was not generated using method (1) described in RFC 5280 section 4.2.1.2.. Structure is documented below.
AuthorityConfigSubjectConfig, AuthorityConfigSubjectConfigArgs        
- Subject
AuthorityConfig Subject Config Subject 
- Contains distinguished name fields such as the location and organization. Structure is documented below.
- SubjectAlt AuthorityName Config Subject Config Subject Alt Name 
- The subject alternative name fields. Structure is documented below.
- Subject
AuthorityConfig Subject Config Subject 
- Contains distinguished name fields such as the location and organization. Structure is documented below.
- SubjectAlt AuthorityName Config Subject Config Subject Alt Name 
- The subject alternative name fields. Structure is documented below.
- subject
AuthorityConfig Subject Config Subject 
- Contains distinguished name fields such as the location and organization. Structure is documented below.
- subjectAlt AuthorityName Config Subject Config Subject Alt Name 
- The subject alternative name fields. Structure is documented below.
- subject
AuthorityConfig Subject Config Subject 
- Contains distinguished name fields such as the location and organization. Structure is documented below.
- subjectAlt AuthorityName Config Subject Config Subject Alt Name 
- The subject alternative name fields. Structure is documented below.
- subject
AuthorityConfig Subject Config Subject 
- Contains distinguished name fields such as the location and organization. Structure is documented below.
- subject_alt_ Authorityname Config Subject Config Subject Alt Name 
- The subject alternative name fields. Structure is documented below.
- subject Property Map
- Contains distinguished name fields such as the location and organization. Structure is documented below.
- subjectAlt Property MapName 
- The subject alternative name fields. Structure is documented below.
AuthorityConfigSubjectConfigSubject, AuthorityConfigSubjectConfigSubjectArgs          
- CommonName string
- The common name of the distinguished name.
- Organization string
- The organization of the subject.
- CountryCode string
- The country code of the subject.
- Locality string
- The locality or city of the subject.
- OrganizationalUnit string
- The organizational unit of the subject.
- PostalCode string
- The postal code of the subject.
- Province string
- The province, territory, or regional state of the subject.
- StreetAddress string
- The street address of the subject.
- CommonName string
- The common name of the distinguished name.
- Organization string
- The organization of the subject.
- CountryCode string
- The country code of the subject.
- Locality string
- The locality or city of the subject.
- OrganizationalUnit string
- The organizational unit of the subject.
- PostalCode string
- The postal code of the subject.
- Province string
- The province, territory, or regional state of the subject.
- StreetAddress string
- The street address of the subject.
- commonName String
- The common name of the distinguished name.
- organization String
- The organization of the subject.
- countryCode String
- The country code of the subject.
- locality String
- The locality or city of the subject.
- organizationalUnit String
- The organizational unit of the subject.
- postalCode String
- The postal code of the subject.
- province String
- The province, territory, or regional state of the subject.
- streetAddress String
- The street address of the subject.
- commonName string
- The common name of the distinguished name.
- organization string
- The organization of the subject.
- countryCode string
- The country code of the subject.
- locality string
- The locality or city of the subject.
- organizationalUnit string
- The organizational unit of the subject.
- postalCode string
- The postal code of the subject.
- province string
- The province, territory, or regional state of the subject.
- streetAddress string
- The street address of the subject.
- common_name str
- The common name of the distinguished name.
- organization str
- The organization of the subject.
- country_code str
- The country code of the subject.
- locality str
- The locality or city of the subject.
- organizational_unit str
- The organizational unit of the subject.
- postal_code str
- The postal code of the subject.
- province str
- The province, territory, or regional state of the subject.
- street_address str
- The street address of the subject.
- commonName String
- The common name of the distinguished name.
- organization String
- The organization of the subject.
- countryCode String
- The country code of the subject.
- locality String
- The locality or city of the subject.
- organizationalUnit String
- The organizational unit of the subject.
- postalCode String
- The postal code of the subject.
- province String
- The province, territory, or regional state of the subject.
- streetAddress String
- The street address of the subject.
AuthorityConfigSubjectConfigSubjectAltName, AuthorityConfigSubjectConfigSubjectAltNameArgs              
- DnsNames List<string>
- Contains only valid, fully-qualified host names.
- EmailAddresses List<string>
- Contains only valid RFC 2822 E-mail addresses.
- IpAddresses List<string>
- Contains only valid 32-bit IPv4 addresses or RFC 4291 IPv6 addresses.
- Uris List<string>
- Contains only valid RFC 3986 URIs.
- DnsNames []string
- Contains only valid, fully-qualified host names.
- EmailAddresses []string
- Contains only valid RFC 2822 E-mail addresses.
- IpAddresses []string
- Contains only valid 32-bit IPv4 addresses or RFC 4291 IPv6 addresses.
- Uris []string
- Contains only valid RFC 3986 URIs.
- dnsNames List<String>
- Contains only valid, fully-qualified host names.
- emailAddresses List<String>
- Contains only valid RFC 2822 E-mail addresses.
- ipAddresses List<String>
- Contains only valid 32-bit IPv4 addresses or RFC 4291 IPv6 addresses.
- uris List<String>
- Contains only valid RFC 3986 URIs.
- dnsNames string[]
- Contains only valid, fully-qualified host names.
- emailAddresses string[]
- Contains only valid RFC 2822 E-mail addresses.
- ipAddresses string[]
- Contains only valid 32-bit IPv4 addresses or RFC 4291 IPv6 addresses.
- uris string[]
- Contains only valid RFC 3986 URIs.
- dns_names Sequence[str]
- Contains only valid, fully-qualified host names.
- email_addresses Sequence[str]
- Contains only valid RFC 2822 E-mail addresses.
- ip_addresses Sequence[str]
- Contains only valid 32-bit IPv4 addresses or RFC 4291 IPv6 addresses.
- uris Sequence[str]
- Contains only valid RFC 3986 URIs.
- dnsNames List<String>
- Contains only valid, fully-qualified host names.
- emailAddresses List<String>
- Contains only valid RFC 2822 E-mail addresses.
- ipAddresses List<String>
- Contains only valid 32-bit IPv4 addresses or RFC 4291 IPv6 addresses.
- uris List<String>
- Contains only valid RFC 3986 URIs.
AuthorityConfigSubjectKeyId, AuthorityConfigSubjectKeyIdArgs          
- KeyId string
- The value of the KeyId in lowercase hexadecimal. - The - x509_configblock supports:
- KeyId string
- The value of the KeyId in lowercase hexadecimal. - The - x509_configblock supports:
- keyId String
- The value of the KeyId in lowercase hexadecimal. - The - x509_configblock supports:
- keyId string
- The value of the KeyId in lowercase hexadecimal. - The - x509_configblock supports:
- key_id str
- The value of the KeyId in lowercase hexadecimal. - The - x509_configblock supports:
- keyId String
- The value of the KeyId in lowercase hexadecimal. - The - x509_configblock supports:
AuthorityConfigX509Config, AuthorityConfigX509ConfigArgs      
- CaOptions AuthorityConfig X509Config Ca Options 
- Describes values that are relevant in a CA certificate.
- KeyUsage AuthorityConfig X509Config Key Usage 
- Indicates the intended use for keys that correspond to a certificate.
- AdditionalExtensions List<AuthorityConfig X509Config Additional Extension> 
- Specifies an X.509 extension, which may be used in different parts of X.509 objects like certificates, CSRs, and CRLs.
- AiaOcsp List<string>Servers 
- Describes Online Certificate Status Protocol (OCSP) endpoint addresses that appear in the "Authority Information Access" extension in the certificate.
- NameConstraints AuthorityConfig X509Config Name Constraints 
- Describes the X.509 name constraints extension.
- PolicyIds List<AuthorityConfig X509Config Policy Id> 
- Describes the X.509 certificate policy object identifiers, per https://tools.ietf.org/html/rfc5280#section-4.2.1.4.
- CaOptions AuthorityConfig X509Config Ca Options 
- Describes values that are relevant in a CA certificate.
- KeyUsage AuthorityConfig X509Config Key Usage 
- Indicates the intended use for keys that correspond to a certificate.
- AdditionalExtensions []AuthorityConfig X509Config Additional Extension 
- Specifies an X.509 extension, which may be used in different parts of X.509 objects like certificates, CSRs, and CRLs.
- AiaOcsp []stringServers 
- Describes Online Certificate Status Protocol (OCSP) endpoint addresses that appear in the "Authority Information Access" extension in the certificate.
- NameConstraints AuthorityConfig X509Config Name Constraints 
- Describes the X.509 name constraints extension.
- PolicyIds []AuthorityConfig X509Config Policy Id 
- Describes the X.509 certificate policy object identifiers, per https://tools.ietf.org/html/rfc5280#section-4.2.1.4.
- caOptions AuthorityConfig X509Config Ca Options 
- Describes values that are relevant in a CA certificate.
- keyUsage AuthorityConfig X509Config Key Usage 
- Indicates the intended use for keys that correspond to a certificate.
- additionalExtensions List<AuthorityConfig X509Config Additional Extension> 
- Specifies an X.509 extension, which may be used in different parts of X.509 objects like certificates, CSRs, and CRLs.
- aiaOcsp List<String>Servers 
- Describes Online Certificate Status Protocol (OCSP) endpoint addresses that appear in the "Authority Information Access" extension in the certificate.
- nameConstraints AuthorityConfig X509Config Name Constraints 
- Describes the X.509 name constraints extension.
- policyIds List<AuthorityConfig X509Config Policy Id> 
- Describes the X.509 certificate policy object identifiers, per https://tools.ietf.org/html/rfc5280#section-4.2.1.4.
- caOptions AuthorityConfig X509Config Ca Options 
- Describes values that are relevant in a CA certificate.
- keyUsage AuthorityConfig X509Config Key Usage 
- Indicates the intended use for keys that correspond to a certificate.
- additionalExtensions AuthorityConfig X509Config Additional Extension[] 
- Specifies an X.509 extension, which may be used in different parts of X.509 objects like certificates, CSRs, and CRLs.
- aiaOcsp string[]Servers 
- Describes Online Certificate Status Protocol (OCSP) endpoint addresses that appear in the "Authority Information Access" extension in the certificate.
- nameConstraints AuthorityConfig X509Config Name Constraints 
- Describes the X.509 name constraints extension.
- policyIds AuthorityConfig X509Config Policy Id[] 
- Describes the X.509 certificate policy object identifiers, per https://tools.ietf.org/html/rfc5280#section-4.2.1.4.
- ca_options AuthorityConfig X509Config Ca Options 
- Describes values that are relevant in a CA certificate.
- key_usage AuthorityConfig X509Config Key Usage 
- Indicates the intended use for keys that correspond to a certificate.
- additional_extensions Sequence[AuthorityConfig X509Config Additional Extension] 
- Specifies an X.509 extension, which may be used in different parts of X.509 objects like certificates, CSRs, and CRLs.
- aia_ocsp_ Sequence[str]servers 
- Describes Online Certificate Status Protocol (OCSP) endpoint addresses that appear in the "Authority Information Access" extension in the certificate.
- name_constraints AuthorityConfig X509Config Name Constraints 
- Describes the X.509 name constraints extension.
- policy_ids Sequence[AuthorityConfig X509Config Policy Id] 
- Describes the X.509 certificate policy object identifiers, per https://tools.ietf.org/html/rfc5280#section-4.2.1.4.
- caOptions Property Map
- Describes values that are relevant in a CA certificate.
- keyUsage Property Map
- Indicates the intended use for keys that correspond to a certificate.
- additionalExtensions List<Property Map>
- Specifies an X.509 extension, which may be used in different parts of X.509 objects like certificates, CSRs, and CRLs.
- aiaOcsp List<String>Servers 
- Describes Online Certificate Status Protocol (OCSP) endpoint addresses that appear in the "Authority Information Access" extension in the certificate.
- nameConstraints Property Map
- Describes the X.509 name constraints extension.
- policyIds List<Property Map>
- Describes the X.509 certificate policy object identifiers, per https://tools.ietf.org/html/rfc5280#section-4.2.1.4.
AuthorityConfigX509ConfigAdditionalExtension, AuthorityConfigX509ConfigAdditionalExtensionArgs          
- Critical bool
- Indicates whether or not this extension is critical (i.e., if the client does not know how to handle this extension, the client should consider this to be an error).
- ObjectId AuthorityConfig X509Config Additional Extension Object Id 
- Describes values that are relevant in a CA certificate. Structure is documented below.
- Value string
- The value of this X.509 extension. A base64-encoded string.
- Critical bool
- Indicates whether or not this extension is critical (i.e., if the client does not know how to handle this extension, the client should consider this to be an error).
- ObjectId AuthorityConfig X509Config Additional Extension Object Id 
- Describes values that are relevant in a CA certificate. Structure is documented below.
- Value string
- The value of this X.509 extension. A base64-encoded string.
- critical Boolean
- Indicates whether or not this extension is critical (i.e., if the client does not know how to handle this extension, the client should consider this to be an error).
- objectId AuthorityConfig X509Config Additional Extension Object Id 
- Describes values that are relevant in a CA certificate. Structure is documented below.
- value String
- The value of this X.509 extension. A base64-encoded string.
- critical boolean
- Indicates whether or not this extension is critical (i.e., if the client does not know how to handle this extension, the client should consider this to be an error).
- objectId AuthorityConfig X509Config Additional Extension Object Id 
- Describes values that are relevant in a CA certificate. Structure is documented below.
- value string
- The value of this X.509 extension. A base64-encoded string.
- critical bool
- Indicates whether or not this extension is critical (i.e., if the client does not know how to handle this extension, the client should consider this to be an error).
- object_id AuthorityConfig X509Config Additional Extension Object Id 
- Describes values that are relevant in a CA certificate. Structure is documented below.
- value str
- The value of this X.509 extension. A base64-encoded string.
- critical Boolean
- Indicates whether or not this extension is critical (i.e., if the client does not know how to handle this extension, the client should consider this to be an error).
- objectId Property Map
- Describes values that are relevant in a CA certificate. Structure is documented below.
- value String
- The value of this X.509 extension. A base64-encoded string.
AuthorityConfigX509ConfigAdditionalExtensionObjectId, AuthorityConfigX509ConfigAdditionalExtensionObjectIdArgs              
- ObjectId List<int>Paths 
- An ObjectId specifies an object identifier (OID). These provide context and describe types in ASN.1 messages.
- ObjectId []intPaths 
- An ObjectId specifies an object identifier (OID). These provide context and describe types in ASN.1 messages.
- objectId List<Integer>Paths 
- An ObjectId specifies an object identifier (OID). These provide context and describe types in ASN.1 messages.
- objectId number[]Paths 
- An ObjectId specifies an object identifier (OID). These provide context and describe types in ASN.1 messages.
- object_id_ Sequence[int]paths 
- An ObjectId specifies an object identifier (OID). These provide context and describe types in ASN.1 messages.
- objectId List<Number>Paths 
- An ObjectId specifies an object identifier (OID). These provide context and describe types in ASN.1 messages.
AuthorityConfigX509ConfigCaOptions, AuthorityConfigX509ConfigCaOptionsArgs          
- IsCa bool
- When true, the "CA" in Basic Constraints extension will be set to true.
- MaxIssuer intPath Length 
- Refers to the "path length constraint" in Basic Constraints extension. For a CA certificate, this value describes the depth of
subordinate CA certificates that are allowed. If this value is less than 0, the request will fail. Setting the value to 0
requires setting zero_max_issuer_path_length = true.
- NonCa bool
- When true, the "CA" in Basic Constraints extension will be set to false.
If both is_caandnon_caare unset, the extension will be omitted from the CA certificate.
- ZeroMax boolIssuer Path Length 
- When true, the "path length constraint" in Basic Constraints extension will be set to 0.
If both max_issuer_path_lengthandzero_max_issuer_path_lengthare unset, the max path length will be omitted from the CA certificate.
- IsCa bool
- When true, the "CA" in Basic Constraints extension will be set to true.
- MaxIssuer intPath Length 
- Refers to the "path length constraint" in Basic Constraints extension. For a CA certificate, this value describes the depth of
subordinate CA certificates that are allowed. If this value is less than 0, the request will fail. Setting the value to 0
requires setting zero_max_issuer_path_length = true.
- NonCa bool
- When true, the "CA" in Basic Constraints extension will be set to false.
If both is_caandnon_caare unset, the extension will be omitted from the CA certificate.
- ZeroMax boolIssuer Path Length 
- When true, the "path length constraint" in Basic Constraints extension will be set to 0.
If both max_issuer_path_lengthandzero_max_issuer_path_lengthare unset, the max path length will be omitted from the CA certificate.
- isCa Boolean
- When true, the "CA" in Basic Constraints extension will be set to true.
- maxIssuer IntegerPath Length 
- Refers to the "path length constraint" in Basic Constraints extension. For a CA certificate, this value describes the depth of
subordinate CA certificates that are allowed. If this value is less than 0, the request will fail. Setting the value to 0
requires setting zero_max_issuer_path_length = true.
- nonCa Boolean
- When true, the "CA" in Basic Constraints extension will be set to false.
If both is_caandnon_caare unset, the extension will be omitted from the CA certificate.
- zeroMax BooleanIssuer Path Length 
- When true, the "path length constraint" in Basic Constraints extension will be set to 0.
If both max_issuer_path_lengthandzero_max_issuer_path_lengthare unset, the max path length will be omitted from the CA certificate.
- isCa boolean
- When true, the "CA" in Basic Constraints extension will be set to true.
- maxIssuer numberPath Length 
- Refers to the "path length constraint" in Basic Constraints extension. For a CA certificate, this value describes the depth of
subordinate CA certificates that are allowed. If this value is less than 0, the request will fail. Setting the value to 0
requires setting zero_max_issuer_path_length = true.
- nonCa boolean
- When true, the "CA" in Basic Constraints extension will be set to false.
If both is_caandnon_caare unset, the extension will be omitted from the CA certificate.
- zeroMax booleanIssuer Path Length 
- When true, the "path length constraint" in Basic Constraints extension will be set to 0.
If both max_issuer_path_lengthandzero_max_issuer_path_lengthare unset, the max path length will be omitted from the CA certificate.
- is_ca bool
- When true, the "CA" in Basic Constraints extension will be set to true.
- max_issuer_ intpath_ length 
- Refers to the "path length constraint" in Basic Constraints extension. For a CA certificate, this value describes the depth of
subordinate CA certificates that are allowed. If this value is less than 0, the request will fail. Setting the value to 0
requires setting zero_max_issuer_path_length = true.
- non_ca bool
- When true, the "CA" in Basic Constraints extension will be set to false.
If both is_caandnon_caare unset, the extension will be omitted from the CA certificate.
- zero_max_ boolissuer_ path_ length 
- When true, the "path length constraint" in Basic Constraints extension will be set to 0.
If both max_issuer_path_lengthandzero_max_issuer_path_lengthare unset, the max path length will be omitted from the CA certificate.
- isCa Boolean
- When true, the "CA" in Basic Constraints extension will be set to true.
- maxIssuer NumberPath Length 
- Refers to the "path length constraint" in Basic Constraints extension. For a CA certificate, this value describes the depth of
subordinate CA certificates that are allowed. If this value is less than 0, the request will fail. Setting the value to 0
requires setting zero_max_issuer_path_length = true.
- nonCa Boolean
- When true, the "CA" in Basic Constraints extension will be set to false.
If both is_caandnon_caare unset, the extension will be omitted from the CA certificate.
- zeroMax BooleanIssuer Path Length 
- When true, the "path length constraint" in Basic Constraints extension will be set to 0.
If both max_issuer_path_lengthandzero_max_issuer_path_lengthare unset, the max path length will be omitted from the CA certificate.
AuthorityConfigX509ConfigKeyUsage, AuthorityConfigX509ConfigKeyUsageArgs          
- BaseKey AuthorityUsage Config X509Config Key Usage Base Key Usage 
- Describes high-level ways in which a key may be used. Structure is documented below.
- ExtendedKey AuthorityUsage Config X509Config Key Usage Extended Key Usage 
- Describes high-level ways in which a key may be used. Structure is documented below.
- UnknownExtended List<AuthorityKey Usages Config X509Config Key Usage Unknown Extended Key Usage> 
- An ObjectId specifies an object identifier (OID). These provide context and describe types in ASN.1 messages. Structure is documented below.
- BaseKey AuthorityUsage Config X509Config Key Usage Base Key Usage 
- Describes high-level ways in which a key may be used. Structure is documented below.
- ExtendedKey AuthorityUsage Config X509Config Key Usage Extended Key Usage 
- Describes high-level ways in which a key may be used. Structure is documented below.
- UnknownExtended []AuthorityKey Usages Config X509Config Key Usage Unknown Extended Key Usage 
- An ObjectId specifies an object identifier (OID). These provide context and describe types in ASN.1 messages. Structure is documented below.
- baseKey AuthorityUsage Config X509Config Key Usage Base Key Usage 
- Describes high-level ways in which a key may be used. Structure is documented below.
- extendedKey AuthorityUsage Config X509Config Key Usage Extended Key Usage 
- Describes high-level ways in which a key may be used. Structure is documented below.
- unknownExtended List<AuthorityKey Usages Config X509Config Key Usage Unknown Extended Key Usage> 
- An ObjectId specifies an object identifier (OID). These provide context and describe types in ASN.1 messages. Structure is documented below.
- baseKey AuthorityUsage Config X509Config Key Usage Base Key Usage 
- Describes high-level ways in which a key may be used. Structure is documented below.
- extendedKey AuthorityUsage Config X509Config Key Usage Extended Key Usage 
- Describes high-level ways in which a key may be used. Structure is documented below.
- unknownExtended AuthorityKey Usages Config X509Config Key Usage Unknown Extended Key Usage[] 
- An ObjectId specifies an object identifier (OID). These provide context and describe types in ASN.1 messages. Structure is documented below.
- base_key_ Authorityusage Config X509Config Key Usage Base Key Usage 
- Describes high-level ways in which a key may be used. Structure is documented below.
- extended_key_ Authorityusage Config X509Config Key Usage Extended Key Usage 
- Describes high-level ways in which a key may be used. Structure is documented below.
- unknown_extended_ Sequence[Authoritykey_ usages Config X509Config Key Usage Unknown Extended Key Usage] 
- An ObjectId specifies an object identifier (OID). These provide context and describe types in ASN.1 messages. Structure is documented below.
- baseKey Property MapUsage 
- Describes high-level ways in which a key may be used. Structure is documented below.
- extendedKey Property MapUsage 
- Describes high-level ways in which a key may be used. Structure is documented below.
- unknownExtended List<Property Map>Key Usages 
- An ObjectId specifies an object identifier (OID). These provide context and describe types in ASN.1 messages. Structure is documented below.
AuthorityConfigX509ConfigKeyUsageBaseKeyUsage, AuthorityConfigX509ConfigKeyUsageBaseKeyUsageArgs                
- CertSign bool
- The key may be used to sign certificates.
- ContentCommitment bool
- The key may be used for cryptographic commitments. Note that this may also be referred to as "non-repudiation".
- CrlSign bool
- The key may be used sign certificate revocation lists.
- DataEncipherment bool
- The key may be used to encipher data.
- DecipherOnly bool
- The key may be used to decipher only.
- DigitalSignature bool
- The key may be used for digital signatures.
- EncipherOnly bool
- The key may be used to encipher only.
- KeyAgreement bool
- The key may be used in a key agreement protocol.
- KeyEncipherment bool
- The key may be used to encipher other keys.
- CertSign bool
- The key may be used to sign certificates.
- ContentCommitment bool
- The key may be used for cryptographic commitments. Note that this may also be referred to as "non-repudiation".
- CrlSign bool
- The key may be used sign certificate revocation lists.
- DataEncipherment bool
- The key may be used to encipher data.
- DecipherOnly bool
- The key may be used to decipher only.
- DigitalSignature bool
- The key may be used for digital signatures.
- EncipherOnly bool
- The key may be used to encipher only.
- KeyAgreement bool
- The key may be used in a key agreement protocol.
- KeyEncipherment bool
- The key may be used to encipher other keys.
- certSign Boolean
- The key may be used to sign certificates.
- contentCommitment Boolean
- The key may be used for cryptographic commitments. Note that this may also be referred to as "non-repudiation".
- crlSign Boolean
- The key may be used sign certificate revocation lists.
- dataEncipherment Boolean
- The key may be used to encipher data.
- decipherOnly Boolean
- The key may be used to decipher only.
- digitalSignature Boolean
- The key may be used for digital signatures.
- encipherOnly Boolean
- The key may be used to encipher only.
- keyAgreement Boolean
- The key may be used in a key agreement protocol.
- keyEncipherment Boolean
- The key may be used to encipher other keys.
- certSign boolean
- The key may be used to sign certificates.
- contentCommitment boolean
- The key may be used for cryptographic commitments. Note that this may also be referred to as "non-repudiation".
- crlSign boolean
- The key may be used sign certificate revocation lists.
- dataEncipherment boolean
- The key may be used to encipher data.
- decipherOnly boolean
- The key may be used to decipher only.
- digitalSignature boolean
- The key may be used for digital signatures.
- encipherOnly boolean
- The key may be used to encipher only.
- keyAgreement boolean
- The key may be used in a key agreement protocol.
- keyEncipherment boolean
- The key may be used to encipher other keys.
- cert_sign bool
- The key may be used to sign certificates.
- content_commitment bool
- The key may be used for cryptographic commitments. Note that this may also be referred to as "non-repudiation".
- crl_sign bool
- The key may be used sign certificate revocation lists.
- data_encipherment bool
- The key may be used to encipher data.
- decipher_only bool
- The key may be used to decipher only.
- digital_signature bool
- The key may be used for digital signatures.
- encipher_only bool
- The key may be used to encipher only.
- key_agreement bool
- The key may be used in a key agreement protocol.
- key_encipherment bool
- The key may be used to encipher other keys.
- certSign Boolean
- The key may be used to sign certificates.
- contentCommitment Boolean
- The key may be used for cryptographic commitments. Note that this may also be referred to as "non-repudiation".
- crlSign Boolean
- The key may be used sign certificate revocation lists.
- dataEncipherment Boolean
- The key may be used to encipher data.
- decipherOnly Boolean
- The key may be used to decipher only.
- digitalSignature Boolean
- The key may be used for digital signatures.
- encipherOnly Boolean
- The key may be used to encipher only.
- keyAgreement Boolean
- The key may be used in a key agreement protocol.
- keyEncipherment Boolean
- The key may be used to encipher other keys.
AuthorityConfigX509ConfigKeyUsageExtendedKeyUsage, AuthorityConfigX509ConfigKeyUsageExtendedKeyUsageArgs                
- ClientAuth bool
- Corresponds to OID 1.3.6.1.5.5.7.3.2. Officially described as "TLS WWW client authentication", though regularly used for non-WWW TLS.
- CodeSigning bool
- Corresponds to OID 1.3.6.1.5.5.7.3.3. Officially described as "Signing of downloadable executable code client authentication".
- EmailProtection bool
- Corresponds to OID 1.3.6.1.5.5.7.3.4. Officially described as "Email protection".
- OcspSigning bool
- Corresponds to OID 1.3.6.1.5.5.7.3.9. Officially described as "Signing OCSP responses".
- ServerAuth bool
- Corresponds to OID 1.3.6.1.5.5.7.3.1. Officially described as "TLS WWW server authentication", though regularly used for non-WWW TLS.
- TimeStamping bool
- Corresponds to OID 1.3.6.1.5.5.7.3.8. Officially described as "Binding the hash of an object to a time".
- ClientAuth bool
- Corresponds to OID 1.3.6.1.5.5.7.3.2. Officially described as "TLS WWW client authentication", though regularly used for non-WWW TLS.
- CodeSigning bool
- Corresponds to OID 1.3.6.1.5.5.7.3.3. Officially described as "Signing of downloadable executable code client authentication".
- EmailProtection bool
- Corresponds to OID 1.3.6.1.5.5.7.3.4. Officially described as "Email protection".
- OcspSigning bool
- Corresponds to OID 1.3.6.1.5.5.7.3.9. Officially described as "Signing OCSP responses".
- ServerAuth bool
- Corresponds to OID 1.3.6.1.5.5.7.3.1. Officially described as "TLS WWW server authentication", though regularly used for non-WWW TLS.
- TimeStamping bool
- Corresponds to OID 1.3.6.1.5.5.7.3.8. Officially described as "Binding the hash of an object to a time".
- clientAuth Boolean
- Corresponds to OID 1.3.6.1.5.5.7.3.2. Officially described as "TLS WWW client authentication", though regularly used for non-WWW TLS.
- codeSigning Boolean
- Corresponds to OID 1.3.6.1.5.5.7.3.3. Officially described as "Signing of downloadable executable code client authentication".
- emailProtection Boolean
- Corresponds to OID 1.3.6.1.5.5.7.3.4. Officially described as "Email protection".
- ocspSigning Boolean
- Corresponds to OID 1.3.6.1.5.5.7.3.9. Officially described as "Signing OCSP responses".
- serverAuth Boolean
- Corresponds to OID 1.3.6.1.5.5.7.3.1. Officially described as "TLS WWW server authentication", though regularly used for non-WWW TLS.
- timeStamping Boolean
- Corresponds to OID 1.3.6.1.5.5.7.3.8. Officially described as "Binding the hash of an object to a time".
- clientAuth boolean
- Corresponds to OID 1.3.6.1.5.5.7.3.2. Officially described as "TLS WWW client authentication", though regularly used for non-WWW TLS.
- codeSigning boolean
- Corresponds to OID 1.3.6.1.5.5.7.3.3. Officially described as "Signing of downloadable executable code client authentication".
- emailProtection boolean
- Corresponds to OID 1.3.6.1.5.5.7.3.4. Officially described as "Email protection".
- ocspSigning boolean
- Corresponds to OID 1.3.6.1.5.5.7.3.9. Officially described as "Signing OCSP responses".
- serverAuth boolean
- Corresponds to OID 1.3.6.1.5.5.7.3.1. Officially described as "TLS WWW server authentication", though regularly used for non-WWW TLS.
- timeStamping boolean
- Corresponds to OID 1.3.6.1.5.5.7.3.8. Officially described as "Binding the hash of an object to a time".
- client_auth bool
- Corresponds to OID 1.3.6.1.5.5.7.3.2. Officially described as "TLS WWW client authentication", though regularly used for non-WWW TLS.
- code_signing bool
- Corresponds to OID 1.3.6.1.5.5.7.3.3. Officially described as "Signing of downloadable executable code client authentication".
- email_protection bool
- Corresponds to OID 1.3.6.1.5.5.7.3.4. Officially described as "Email protection".
- ocsp_signing bool
- Corresponds to OID 1.3.6.1.5.5.7.3.9. Officially described as "Signing OCSP responses".
- server_auth bool
- Corresponds to OID 1.3.6.1.5.5.7.3.1. Officially described as "TLS WWW server authentication", though regularly used for non-WWW TLS.
- time_stamping bool
- Corresponds to OID 1.3.6.1.5.5.7.3.8. Officially described as "Binding the hash of an object to a time".
- clientAuth Boolean
- Corresponds to OID 1.3.6.1.5.5.7.3.2. Officially described as "TLS WWW client authentication", though regularly used for non-WWW TLS.
- codeSigning Boolean
- Corresponds to OID 1.3.6.1.5.5.7.3.3. Officially described as "Signing of downloadable executable code client authentication".
- emailProtection Boolean
- Corresponds to OID 1.3.6.1.5.5.7.3.4. Officially described as "Email protection".
- ocspSigning Boolean
- Corresponds to OID 1.3.6.1.5.5.7.3.9. Officially described as "Signing OCSP responses".
- serverAuth Boolean
- Corresponds to OID 1.3.6.1.5.5.7.3.1. Officially described as "TLS WWW server authentication", though regularly used for non-WWW TLS.
- timeStamping Boolean
- Corresponds to OID 1.3.6.1.5.5.7.3.8. Officially described as "Binding the hash of an object to a time".
AuthorityConfigX509ConfigKeyUsageUnknownExtendedKeyUsage, AuthorityConfigX509ConfigKeyUsageUnknownExtendedKeyUsageArgs                  
- ObjectId List<int>Paths 
- An ObjectId specifies an object identifier (OID). These provide context and describe types in ASN.1 messages.
- ObjectId []intPaths 
- An ObjectId specifies an object identifier (OID). These provide context and describe types in ASN.1 messages.
- objectId List<Integer>Paths 
- An ObjectId specifies an object identifier (OID). These provide context and describe types in ASN.1 messages.
- objectId number[]Paths 
- An ObjectId specifies an object identifier (OID). These provide context and describe types in ASN.1 messages.
- object_id_ Sequence[int]paths 
- An ObjectId specifies an object identifier (OID). These provide context and describe types in ASN.1 messages.
- objectId List<Number>Paths 
- An ObjectId specifies an object identifier (OID). These provide context and describe types in ASN.1 messages.
AuthorityConfigX509ConfigNameConstraints, AuthorityConfigX509ConfigNameConstraintsArgs          
- Critical bool
- Indicates whether or not the name constraints are marked critical.
- ExcludedDns List<string>Names 
- Contains excluded DNS names. Any DNS name that can be
constructed by simply adding zero or more labels to
the left-hand side of the name satisfies the name constraint.
For example, example.com,www.example.com,www.sub.example.comwould satisfyexample.comwhileexample1.comdoes not.
- ExcludedEmail List<string>Addresses 
- Contains the excluded email addresses. The value can be a particular
email address, a hostname to indicate all email addresses on that host or
a domain with a leading period (e.g. .example.com) to indicate all email addresses in that domain.
- ExcludedIp List<string>Ranges 
- Contains the excluded IP ranges. For IPv4 addresses, the ranges are expressed using CIDR notation as specified in RFC 4632. For IPv6 addresses, the ranges are expressed in similar encoding as IPv4 addresses.
- ExcludedUris List<string>
- Contains the excluded URIs that apply to the host part of the name.
The value can be a hostname or a domain with a
leading period (like .example.com)
- PermittedDns List<string>Names 
- Contains permitted DNS names. Any DNS name that can be
constructed by simply adding zero or more labels to
the left-hand side of the name satisfies the name constraint.
For example, example.com,www.example.com,www.sub.example.comwould satisfyexample.comwhileexample1.comdoes not.
- PermittedEmail List<string>Addresses 
- Contains the permitted email addresses. The value can be a particular
email address, a hostname to indicate all email addresses on that host or
a domain with a leading period (e.g. .example.com) to indicate all email addresses in that domain.
- PermittedIp List<string>Ranges 
- Contains the permitted IP ranges. For IPv4 addresses, the ranges are expressed using CIDR notation as specified in RFC 4632. For IPv6 addresses, the ranges are expressed in similar encoding as IPv4 addresses.
- PermittedUris List<string>
- Contains the permitted URIs that apply to the host part of the name.
The value can be a hostname or a domain with a
leading period (like .example.com)
- Critical bool
- Indicates whether or not the name constraints are marked critical.
- ExcludedDns []stringNames 
- Contains excluded DNS names. Any DNS name that can be
constructed by simply adding zero or more labels to
the left-hand side of the name satisfies the name constraint.
For example, example.com,www.example.com,www.sub.example.comwould satisfyexample.comwhileexample1.comdoes not.
- ExcludedEmail []stringAddresses 
- Contains the excluded email addresses. The value can be a particular
email address, a hostname to indicate all email addresses on that host or
a domain with a leading period (e.g. .example.com) to indicate all email addresses in that domain.
- ExcludedIp []stringRanges 
- Contains the excluded IP ranges. For IPv4 addresses, the ranges are expressed using CIDR notation as specified in RFC 4632. For IPv6 addresses, the ranges are expressed in similar encoding as IPv4 addresses.
- ExcludedUris []string
- Contains the excluded URIs that apply to the host part of the name.
The value can be a hostname or a domain with a
leading period (like .example.com)
- PermittedDns []stringNames 
- Contains permitted DNS names. Any DNS name that can be
constructed by simply adding zero or more labels to
the left-hand side of the name satisfies the name constraint.
For example, example.com,www.example.com,www.sub.example.comwould satisfyexample.comwhileexample1.comdoes not.
- PermittedEmail []stringAddresses 
- Contains the permitted email addresses. The value can be a particular
email address, a hostname to indicate all email addresses on that host or
a domain with a leading period (e.g. .example.com) to indicate all email addresses in that domain.
- PermittedIp []stringRanges 
- Contains the permitted IP ranges. For IPv4 addresses, the ranges are expressed using CIDR notation as specified in RFC 4632. For IPv6 addresses, the ranges are expressed in similar encoding as IPv4 addresses.
- PermittedUris []string
- Contains the permitted URIs that apply to the host part of the name.
The value can be a hostname or a domain with a
leading period (like .example.com)
- critical Boolean
- Indicates whether or not the name constraints are marked critical.
- excludedDns List<String>Names 
- Contains excluded DNS names. Any DNS name that can be
constructed by simply adding zero or more labels to
the left-hand side of the name satisfies the name constraint.
For example, example.com,www.example.com,www.sub.example.comwould satisfyexample.comwhileexample1.comdoes not.
- excludedEmail List<String>Addresses 
- Contains the excluded email addresses. The value can be a particular
email address, a hostname to indicate all email addresses on that host or
a domain with a leading period (e.g. .example.com) to indicate all email addresses in that domain.
- excludedIp List<String>Ranges 
- Contains the excluded IP ranges. For IPv4 addresses, the ranges are expressed using CIDR notation as specified in RFC 4632. For IPv6 addresses, the ranges are expressed in similar encoding as IPv4 addresses.
- excludedUris List<String>
- Contains the excluded URIs that apply to the host part of the name.
The value can be a hostname or a domain with a
leading period (like .example.com)
- permittedDns List<String>Names 
- Contains permitted DNS names. Any DNS name that can be
constructed by simply adding zero or more labels to
the left-hand side of the name satisfies the name constraint.
For example, example.com,www.example.com,www.sub.example.comwould satisfyexample.comwhileexample1.comdoes not.
- permittedEmail List<String>Addresses 
- Contains the permitted email addresses. The value can be a particular
email address, a hostname to indicate all email addresses on that host or
a domain with a leading period (e.g. .example.com) to indicate all email addresses in that domain.
- permittedIp List<String>Ranges 
- Contains the permitted IP ranges. For IPv4 addresses, the ranges are expressed using CIDR notation as specified in RFC 4632. For IPv6 addresses, the ranges are expressed in similar encoding as IPv4 addresses.
- permittedUris List<String>
- Contains the permitted URIs that apply to the host part of the name.
The value can be a hostname or a domain with a
leading period (like .example.com)
- critical boolean
- Indicates whether or not the name constraints are marked critical.
- excludedDns string[]Names 
- Contains excluded DNS names. Any DNS name that can be
constructed by simply adding zero or more labels to
the left-hand side of the name satisfies the name constraint.
For example, example.com,www.example.com,www.sub.example.comwould satisfyexample.comwhileexample1.comdoes not.
- excludedEmail string[]Addresses 
- Contains the excluded email addresses. The value can be a particular
email address, a hostname to indicate all email addresses on that host or
a domain with a leading period (e.g. .example.com) to indicate all email addresses in that domain.
- excludedIp string[]Ranges 
- Contains the excluded IP ranges. For IPv4 addresses, the ranges are expressed using CIDR notation as specified in RFC 4632. For IPv6 addresses, the ranges are expressed in similar encoding as IPv4 addresses.
- excludedUris string[]
- Contains the excluded URIs that apply to the host part of the name.
The value can be a hostname or a domain with a
leading period (like .example.com)
- permittedDns string[]Names 
- Contains permitted DNS names. Any DNS name that can be
constructed by simply adding zero or more labels to
the left-hand side of the name satisfies the name constraint.
For example, example.com,www.example.com,www.sub.example.comwould satisfyexample.comwhileexample1.comdoes not.
- permittedEmail string[]Addresses 
- Contains the permitted email addresses. The value can be a particular
email address, a hostname to indicate all email addresses on that host or
a domain with a leading period (e.g. .example.com) to indicate all email addresses in that domain.
- permittedIp string[]Ranges 
- Contains the permitted IP ranges. For IPv4 addresses, the ranges are expressed using CIDR notation as specified in RFC 4632. For IPv6 addresses, the ranges are expressed in similar encoding as IPv4 addresses.
- permittedUris string[]
- Contains the permitted URIs that apply to the host part of the name.
The value can be a hostname or a domain with a
leading period (like .example.com)
- critical bool
- Indicates whether or not the name constraints are marked critical.
- excluded_dns_ Sequence[str]names 
- Contains excluded DNS names. Any DNS name that can be
constructed by simply adding zero or more labels to
the left-hand side of the name satisfies the name constraint.
For example, example.com,www.example.com,www.sub.example.comwould satisfyexample.comwhileexample1.comdoes not.
- excluded_email_ Sequence[str]addresses 
- Contains the excluded email addresses. The value can be a particular
email address, a hostname to indicate all email addresses on that host or
a domain with a leading period (e.g. .example.com) to indicate all email addresses in that domain.
- excluded_ip_ Sequence[str]ranges 
- Contains the excluded IP ranges. For IPv4 addresses, the ranges are expressed using CIDR notation as specified in RFC 4632. For IPv6 addresses, the ranges are expressed in similar encoding as IPv4 addresses.
- excluded_uris Sequence[str]
- Contains the excluded URIs that apply to the host part of the name.
The value can be a hostname or a domain with a
leading period (like .example.com)
- permitted_dns_ Sequence[str]names 
- Contains permitted DNS names. Any DNS name that can be
constructed by simply adding zero or more labels to
the left-hand side of the name satisfies the name constraint.
For example, example.com,www.example.com,www.sub.example.comwould satisfyexample.comwhileexample1.comdoes not.
- permitted_email_ Sequence[str]addresses 
- Contains the permitted email addresses. The value can be a particular
email address, a hostname to indicate all email addresses on that host or
a domain with a leading period (e.g. .example.com) to indicate all email addresses in that domain.
- permitted_ip_ Sequence[str]ranges 
- Contains the permitted IP ranges. For IPv4 addresses, the ranges are expressed using CIDR notation as specified in RFC 4632. For IPv6 addresses, the ranges are expressed in similar encoding as IPv4 addresses.
- permitted_uris Sequence[str]
- Contains the permitted URIs that apply to the host part of the name.
The value can be a hostname or a domain with a
leading period (like .example.com)
- critical Boolean
- Indicates whether or not the name constraints are marked critical.
- excludedDns List<String>Names 
- Contains excluded DNS names. Any DNS name that can be
constructed by simply adding zero or more labels to
the left-hand side of the name satisfies the name constraint.
For example, example.com,www.example.com,www.sub.example.comwould satisfyexample.comwhileexample1.comdoes not.
- excludedEmail List<String>Addresses 
- Contains the excluded email addresses. The value can be a particular
email address, a hostname to indicate all email addresses on that host or
a domain with a leading period (e.g. .example.com) to indicate all email addresses in that domain.
- excludedIp List<String>Ranges 
- Contains the excluded IP ranges. For IPv4 addresses, the ranges are expressed using CIDR notation as specified in RFC 4632. For IPv6 addresses, the ranges are expressed in similar encoding as IPv4 addresses.
- excludedUris List<String>
- Contains the excluded URIs that apply to the host part of the name.
The value can be a hostname or a domain with a
leading period (like .example.com)
- permittedDns List<String>Names 
- Contains permitted DNS names. Any DNS name that can be
constructed by simply adding zero or more labels to
the left-hand side of the name satisfies the name constraint.
For example, example.com,www.example.com,www.sub.example.comwould satisfyexample.comwhileexample1.comdoes not.
- permittedEmail List<String>Addresses 
- Contains the permitted email addresses. The value can be a particular
email address, a hostname to indicate all email addresses on that host or
a domain with a leading period (e.g. .example.com) to indicate all email addresses in that domain.
- permittedIp List<String>Ranges 
- Contains the permitted IP ranges. For IPv4 addresses, the ranges are expressed using CIDR notation as specified in RFC 4632. For IPv6 addresses, the ranges are expressed in similar encoding as IPv4 addresses.
- permittedUris List<String>
- Contains the permitted URIs that apply to the host part of the name.
The value can be a hostname or a domain with a
leading period (like .example.com)
AuthorityConfigX509ConfigPolicyId, AuthorityConfigX509ConfigPolicyIdArgs          
- ObjectId List<int>Paths 
- An ObjectId specifies an object identifier (OID). These provide context and describe types in ASN.1 messages.
- ObjectId []intPaths 
- An ObjectId specifies an object identifier (OID). These provide context and describe types in ASN.1 messages.
- objectId List<Integer>Paths 
- An ObjectId specifies an object identifier (OID). These provide context and describe types in ASN.1 messages.
- objectId number[]Paths 
- An ObjectId specifies an object identifier (OID). These provide context and describe types in ASN.1 messages.
- object_id_ Sequence[int]paths 
- An ObjectId specifies an object identifier (OID). These provide context and describe types in ASN.1 messages.
- objectId List<Number>Paths 
- An ObjectId specifies an object identifier (OID). These provide context and describe types in ASN.1 messages.
AuthorityKeySpec, AuthorityKeySpecArgs      
- Algorithm string
- The algorithm to use for creating a managed Cloud KMS key for a for a simplified
experience. All managed keys will be have their ProtectionLevel as HSM.
Possible values are: SIGN_HASH_ALGORITHM_UNSPECIFIED,RSA_PSS_2048_SHA256,RSA_PSS_3072_SHA256,RSA_PSS_4096_SHA256,RSA_PKCS1_2048_SHA256,RSA_PKCS1_3072_SHA256,RSA_PKCS1_4096_SHA256,EC_P256_SHA256,EC_P384_SHA384.
- CloudKms stringKey Version 
- The resource name for an existing Cloud KMS CryptoKeyVersion in the format
projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*.
- Algorithm string
- The algorithm to use for creating a managed Cloud KMS key for a for a simplified
experience. All managed keys will be have their ProtectionLevel as HSM.
Possible values are: SIGN_HASH_ALGORITHM_UNSPECIFIED,RSA_PSS_2048_SHA256,RSA_PSS_3072_SHA256,RSA_PSS_4096_SHA256,RSA_PKCS1_2048_SHA256,RSA_PKCS1_3072_SHA256,RSA_PKCS1_4096_SHA256,EC_P256_SHA256,EC_P384_SHA384.
- CloudKms stringKey Version 
- The resource name for an existing Cloud KMS CryptoKeyVersion in the format
projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*.
- algorithm String
- The algorithm to use for creating a managed Cloud KMS key for a for a simplified
experience. All managed keys will be have their ProtectionLevel as HSM.
Possible values are: SIGN_HASH_ALGORITHM_UNSPECIFIED,RSA_PSS_2048_SHA256,RSA_PSS_3072_SHA256,RSA_PSS_4096_SHA256,RSA_PKCS1_2048_SHA256,RSA_PKCS1_3072_SHA256,RSA_PKCS1_4096_SHA256,EC_P256_SHA256,EC_P384_SHA384.
- cloudKms StringKey Version 
- The resource name for an existing Cloud KMS CryptoKeyVersion in the format
projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*.
- algorithm string
- The algorithm to use for creating a managed Cloud KMS key for a for a simplified
experience. All managed keys will be have their ProtectionLevel as HSM.
Possible values are: SIGN_HASH_ALGORITHM_UNSPECIFIED,RSA_PSS_2048_SHA256,RSA_PSS_3072_SHA256,RSA_PSS_4096_SHA256,RSA_PKCS1_2048_SHA256,RSA_PKCS1_3072_SHA256,RSA_PKCS1_4096_SHA256,EC_P256_SHA256,EC_P384_SHA384.
- cloudKms stringKey Version 
- The resource name for an existing Cloud KMS CryptoKeyVersion in the format
projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*.
- algorithm str
- The algorithm to use for creating a managed Cloud KMS key for a for a simplified
experience. All managed keys will be have their ProtectionLevel as HSM.
Possible values are: SIGN_HASH_ALGORITHM_UNSPECIFIED,RSA_PSS_2048_SHA256,RSA_PSS_3072_SHA256,RSA_PSS_4096_SHA256,RSA_PKCS1_2048_SHA256,RSA_PKCS1_3072_SHA256,RSA_PKCS1_4096_SHA256,EC_P256_SHA256,EC_P384_SHA384.
- cloud_kms_ strkey_ version 
- The resource name for an existing Cloud KMS CryptoKeyVersion in the format
projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*.
- algorithm String
- The algorithm to use for creating a managed Cloud KMS key for a for a simplified
experience. All managed keys will be have their ProtectionLevel as HSM.
Possible values are: SIGN_HASH_ALGORITHM_UNSPECIFIED,RSA_PSS_2048_SHA256,RSA_PSS_3072_SHA256,RSA_PSS_4096_SHA256,RSA_PKCS1_2048_SHA256,RSA_PKCS1_3072_SHA256,RSA_PKCS1_4096_SHA256,EC_P256_SHA256,EC_P384_SHA384.
- cloudKms StringKey Version 
- The resource name for an existing Cloud KMS CryptoKeyVersion in the format
projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*.
AuthoritySubordinateConfig, AuthoritySubordinateConfigArgs      
- string
- This can refer to a CertificateAuthority that was used to create a
subordinate CertificateAuthority. This field is used for information
and usability purposes only. The resource name is in the format
projects/*/locations/*/caPools/*/certificateAuthorities/*.
- PemIssuer AuthorityChain Subordinate Config Pem Issuer Chain 
- Contains the PEM certificate chain for the issuers of this CertificateAuthority, but not pem certificate for this CA itself. Structure is documented below.
- string
- This can refer to a CertificateAuthority that was used to create a
subordinate CertificateAuthority. This field is used for information
and usability purposes only. The resource name is in the format
projects/*/locations/*/caPools/*/certificateAuthorities/*.
- PemIssuer AuthorityChain Subordinate Config Pem Issuer Chain 
- Contains the PEM certificate chain for the issuers of this CertificateAuthority, but not pem certificate for this CA itself. Structure is documented below.
- String
- This can refer to a CertificateAuthority that was used to create a
subordinate CertificateAuthority. This field is used for information
and usability purposes only. The resource name is in the format
projects/*/locations/*/caPools/*/certificateAuthorities/*.
- pemIssuer AuthorityChain Subordinate Config Pem Issuer Chain 
- Contains the PEM certificate chain for the issuers of this CertificateAuthority, but not pem certificate for this CA itself. Structure is documented below.
- string
- This can refer to a CertificateAuthority that was used to create a
subordinate CertificateAuthority. This field is used for information
and usability purposes only. The resource name is in the format
projects/*/locations/*/caPools/*/certificateAuthorities/*.
- pemIssuer AuthorityChain Subordinate Config Pem Issuer Chain 
- Contains the PEM certificate chain for the issuers of this CertificateAuthority, but not pem certificate for this CA itself. Structure is documented below.
- str
- This can refer to a CertificateAuthority that was used to create a
subordinate CertificateAuthority. This field is used for information
and usability purposes only. The resource name is in the format
projects/*/locations/*/caPools/*/certificateAuthorities/*.
- pem_issuer_ Authoritychain Subordinate Config Pem Issuer Chain 
- Contains the PEM certificate chain for the issuers of this CertificateAuthority, but not pem certificate for this CA itself. Structure is documented below.
- String
- This can refer to a CertificateAuthority that was used to create a
subordinate CertificateAuthority. This field is used for information
and usability purposes only. The resource name is in the format
projects/*/locations/*/caPools/*/certificateAuthorities/*.
- pemIssuer Property MapChain 
- Contains the PEM certificate chain for the issuers of this CertificateAuthority, but not pem certificate for this CA itself. Structure is documented below.
AuthoritySubordinateConfigPemIssuerChain, AuthoritySubordinateConfigPemIssuerChainArgs            
- PemCertificates List<string>
- Expected to be in leaf-to-root order according to RFC 5246.
- PemCertificates []string
- Expected to be in leaf-to-root order according to RFC 5246.
- pemCertificates List<String>
- Expected to be in leaf-to-root order according to RFC 5246.
- pemCertificates string[]
- Expected to be in leaf-to-root order according to RFC 5246.
- pem_certificates Sequence[str]
- Expected to be in leaf-to-root order according to RFC 5246.
- pemCertificates List<String>
- Expected to be in leaf-to-root order according to RFC 5246.
AuthorityUserDefinedAccessUrls, AuthorityUserDefinedAccessUrlsArgs          
- AiaIssuing List<string>Certificate Urls 
- A list of URLs where this CertificateAuthority's CA certificate is published that is specified by users.
- CrlAccess List<string>Urls 
- A list of URLs where this CertificateAuthority's CRLs are published that is specified by users.
- AiaIssuing []stringCertificate Urls 
- A list of URLs where this CertificateAuthority's CA certificate is published that is specified by users.
- CrlAccess []stringUrls 
- A list of URLs where this CertificateAuthority's CRLs are published that is specified by users.
- aiaIssuing List<String>Certificate Urls 
- A list of URLs where this CertificateAuthority's CA certificate is published that is specified by users.
- crlAccess List<String>Urls 
- A list of URLs where this CertificateAuthority's CRLs are published that is specified by users.
- aiaIssuing string[]Certificate Urls 
- A list of URLs where this CertificateAuthority's CA certificate is published that is specified by users.
- crlAccess string[]Urls 
- A list of URLs where this CertificateAuthority's CRLs are published that is specified by users.
- aia_issuing_ Sequence[str]certificate_ urls 
- A list of URLs where this CertificateAuthority's CA certificate is published that is specified by users.
- crl_access_ Sequence[str]urls 
- A list of URLs where this CertificateAuthority's CRLs are published that is specified by users.
- aiaIssuing List<String>Certificate Urls 
- A list of URLs where this CertificateAuthority's CA certificate is published that is specified by users.
- crlAccess List<String>Urls 
- A list of URLs where this CertificateAuthority's CRLs are published that is specified by users.
Import
CertificateAuthority can be imported using any of these accepted formats:
- projects/{{project}}/locations/{{location}}/caPools/{{pool}}/certificateAuthorities/{{certificate_authority_id}}
- {{project}}/{{location}}/{{pool}}/{{certificate_authority_id}}
- {{location}}/{{pool}}/{{certificate_authority_id}}
When using the pulumi import command, CertificateAuthority can be imported using one of the formats above. For example:
$ pulumi import gcp:certificateauthority/authority:Authority default projects/{{project}}/locations/{{location}}/caPools/{{pool}}/certificateAuthorities/{{certificate_authority_id}}
$ pulumi import gcp:certificateauthority/authority:Authority default {{project}}/{{location}}/{{pool}}/{{certificate_authority_id}}
$ pulumi import gcp:certificateauthority/authority:Authority default {{location}}/{{pool}}/{{certificate_authority_id}}
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- Google Cloud (GCP) Classic pulumi/pulumi-gcp
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the google-betaTerraform Provider.