Zero Trust Access Mtls Certificate Args
data class ZeroTrustAccessMtlsCertificateArgs(val accountId: Output<String>? = null, val associatedHostnames: Output<List<String>>? = null, val certificate: Output<String>? = null, val name: Output<String>? = null, val zoneId: Output<String>? = null) : ConvertibleToJava<ZeroTrustAccessMtlsCertificateArgs>
Provides a Cloudflare Access Mutual TLS Certificate resource. Mutual TLS authentication ensures that the traffic is secure and trusted in both directions between a client and server and can be used with Access to only allows requests from devices with a corresponding client certificate.
It's required that an
account_id
orzone_id
is provided and in most cases using either is fine. However, if you're using a scoped access token, you must provide the argument that matches the token's scope. For example, an access token that is scoped to the "example.com" zone needs to use thezone_id
argument.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as cloudflare from "@pulumi/cloudflare";
const myCert = new cloudflare.ZeroTrustAccessMtlsCertificate("my_cert", {
zoneId: "0da42c8d2132a9ddaf714f9e7c920711",
name: "My Root Cert",
certificate: caPem,
associatedHostnames: ["staging.example.com"],
});
Content copied to clipboard
import pulumi
import pulumi_cloudflare as cloudflare
my_cert = cloudflare.ZeroTrustAccessMtlsCertificate("my_cert",
zone_id="0da42c8d2132a9ddaf714f9e7c920711",
name="My Root Cert",
certificate=ca_pem,
associated_hostnames=["staging.example.com"])
Content copied to clipboard
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Cloudflare = Pulumi.Cloudflare;
return await Deployment.RunAsync(() =>
{
var myCert = new Cloudflare.ZeroTrustAccessMtlsCertificate("my_cert", new()
{
ZoneId = "0da42c8d2132a9ddaf714f9e7c920711",
Name = "My Root Cert",
Certificate = caPem,
AssociatedHostnames = new[]
{
"staging.example.com",
},
});
});
Content copied to clipboard
package main
import (
"github.com/pulumi/pulumi-cloudflare/sdk/v5/go/cloudflare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := cloudflare.NewZeroTrustAccessMtlsCertificate(ctx, "my_cert", &cloudflare.ZeroTrustAccessMtlsCertificateArgs{
ZoneId: pulumi.String("0da42c8d2132a9ddaf714f9e7c920711"),
Name: pulumi.String("My Root Cert"),
Certificate: pulumi.Any(caPem),
AssociatedHostnames: pulumi.StringArray{
pulumi.String("staging.example.com"),
},
})
if err != nil {
return err
}
return nil
})
}
Content copied to clipboard
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.cloudflare.ZeroTrustAccessMtlsCertificate;
import com.pulumi.cloudflare.ZeroTrustAccessMtlsCertificateArgs;
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 myCert = new ZeroTrustAccessMtlsCertificate("myCert", ZeroTrustAccessMtlsCertificateArgs.builder()
.zoneId("0da42c8d2132a9ddaf714f9e7c920711")
.name("My Root Cert")
.certificate(caPem)
.associatedHostnames("staging.example.com")
.build());
}
}
Content copied to clipboard
resources:
myCert:
type: cloudflare:ZeroTrustAccessMtlsCertificate
name: my_cert
properties:
zoneId: 0da42c8d2132a9ddaf714f9e7c920711
name: My Root Cert
certificate: ${caPem}
associatedHostnames:
- staging.example.com
Content copied to clipboard
Import
Account level import.
$ pulumi import cloudflare:index/zeroTrustAccessMtlsCertificate:ZeroTrustAccessMtlsCertificate cloudflare_zero_sd -t_access_mtls_certificate.example account/<account_id>/<mutual_tls_certificate_id>
Content copied to clipboard
Zone level import.
$ pulumi import cloudflare:index/zeroTrustAccessMtlsCertificate:ZeroTrustAccessMtlsCertificate cloudflare_zero_sd -t_access_mtls_certificate.example zone/<zone_id>/<mutual_tls_certificate_id>
Content copied to clipboard