App Check Recaptcha Enterprise Config
An app's reCAPTCHA Enterprise configuration object. To get more information about RecaptchaEnterpriseConfig, see:
How-to Guides
Example Usage
Firebase App Check Recaptcha Enterprise Config Basic
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
import * as time from "@pulumi/time";
// Enables the reCAPTCHA Enterprise API
const recaptchaEnterprise = new gcp.projects.Service("recaptcha_enterprise", {
project: "my-project-name",
service: "recaptchaenterprise.googleapis.com",
disableOnDestroy: false,
});
const _default = new gcp.firebase.WebApp("default", {
project: "my-project-name",
displayName: "Web App for reCAPTCHA Enterprise",
});
// It takes a while for App Check to recognize the new app
// If your app already exists, you don't have to wait 30 seconds.
const wait30s = new time.index.Sleep("wait_30s", {createDuration: "30s"}, {
dependsOn: [_default],
});
const defaultAppCheckRecaptchaEnterpriseConfig = new gcp.firebase.AppCheckRecaptchaEnterpriseConfig("default", {
project: "my-project-name",
appId: _default.appId,
siteKey: "6LdpMXIpAAAAANkwWQPgEdjEhal7ugkH9RK9ytuw",
tokenTtl: "7200s",
}, {
dependsOn: [wait30s],
});
Content copied to clipboard
import pulumi
import pulumi_gcp as gcp
import pulumi_time as time
# Enables the reCAPTCHA Enterprise API
recaptcha_enterprise = gcp.projects.Service("recaptcha_enterprise",
project="my-project-name",
service="recaptchaenterprise.googleapis.com",
disable_on_destroy=False)
default = gcp.firebase.WebApp("default",
project="my-project-name",
display_name="Web App for reCAPTCHA Enterprise")
# It takes a while for App Check to recognize the new app
# If your app already exists, you don't have to wait 30 seconds.
wait30s = time.index.Sleep("wait_30s", create_duration=30s,
opts = pulumi.ResourceOptions(depends_on=[default]))
default_app_check_recaptcha_enterprise_config = gcp.firebase.AppCheckRecaptchaEnterpriseConfig("default",
project="my-project-name",
app_id=default.app_id,
site_key="6LdpMXIpAAAAANkwWQPgEdjEhal7ugkH9RK9ytuw",
token_ttl="7200s",
opts = pulumi.ResourceOptions(depends_on=[wait30s]))
Content copied to clipboard
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
using Time = Pulumi.Time;
return await Deployment.RunAsync(() =>
{
// Enables the reCAPTCHA Enterprise API
var recaptchaEnterprise = new Gcp.Projects.Service("recaptcha_enterprise", new()
{
Project = "my-project-name",
ServiceName = "recaptchaenterprise.googleapis.com",
DisableOnDestroy = false,
});
var @default = new Gcp.Firebase.WebApp("default", new()
{
Project = "my-project-name",
DisplayName = "Web App for reCAPTCHA Enterprise",
});
// It takes a while for App Check to recognize the new app
// If your app already exists, you don't have to wait 30 seconds.
var wait30s = new Time.Index.Sleep("wait_30s", new()
{
CreateDuration = "30s",
}, new CustomResourceOptions
{
DependsOn =
{
@default,
},
});
var defaultAppCheckRecaptchaEnterpriseConfig = new Gcp.Firebase.AppCheckRecaptchaEnterpriseConfig("default", new()
{
Project = "my-project-name",
AppId = @default.AppId,
SiteKey = "6LdpMXIpAAAAANkwWQPgEdjEhal7ugkH9RK9ytuw",
TokenTtl = "7200s",
}, new CustomResourceOptions
{
DependsOn =
{
wait30s,
},
});
});
Content copied to clipboard
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/firebase"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/projects"
"github.com/pulumi/pulumi-time/sdk/go/time"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
// Enables the reCAPTCHA Enterprise API
_, err := projects.NewService(ctx, "recaptcha_enterprise", &projects.ServiceArgs{
Project: pulumi.String("my-project-name"),
Service: pulumi.String("recaptchaenterprise.googleapis.com"),
DisableOnDestroy: pulumi.Bool(false),
})
if err != nil {
return err
}
_, err = firebase.NewWebApp(ctx, "default", &firebase.WebAppArgs{
Project: pulumi.String("my-project-name"),
DisplayName: pulumi.String("Web App for reCAPTCHA Enterprise"),
})
if err != nil {
return err
}
// It takes a while for App Check to recognize the new app
// If your app already exists, you don't have to wait 30 seconds.
wait30s, err := time.NewSleep(ctx, "wait_30s", &time.SleepArgs{
CreateDuration: "30s",
}, pulumi.DependsOn([]pulumi.Resource{
_default,
}))
if err != nil {
return err
}
_, err = firebase.NewAppCheckRecaptchaEnterpriseConfig(ctx, "default", &firebase.AppCheckRecaptchaEnterpriseConfigArgs{
Project: pulumi.String("my-project-name"),
AppId: _default.AppId,
SiteKey: pulumi.String("6LdpMXIpAAAAANkwWQPgEdjEhal7ugkH9RK9ytuw"),
TokenTtl: pulumi.String("7200s"),
}, pulumi.DependsOn([]pulumi.Resource{
wait30s,
}))
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.gcp.projects.Service;
import com.pulumi.gcp.projects.ServiceArgs;
import com.pulumi.gcp.firebase.WebApp;
import com.pulumi.gcp.firebase.WebAppArgs;
import com.pulumi.time.sleep;
import com.pulumi.time.SleepArgs;
import com.pulumi.gcp.firebase.AppCheckRecaptchaEnterpriseConfig;
import com.pulumi.gcp.firebase.AppCheckRecaptchaEnterpriseConfigArgs;
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) {
// Enables the reCAPTCHA Enterprise API
var recaptchaEnterprise = new Service("recaptchaEnterprise", ServiceArgs.builder()
.project("my-project-name")
.service("recaptchaenterprise.googleapis.com")
.disableOnDestroy(false)
.build());
var default_ = new WebApp("default", WebAppArgs.builder()
.project("my-project-name")
.displayName("Web App for reCAPTCHA Enterprise")
.build());
// It takes a while for App Check to recognize the new app
// If your app already exists, you don't have to wait 30 seconds.
var wait30s = new Sleep("wait30s", SleepArgs.builder()
.createDuration("30s")
.build(), CustomResourceOptions.builder()
.dependsOn(default_)
.build());
var defaultAppCheckRecaptchaEnterpriseConfig = new AppCheckRecaptchaEnterpriseConfig("defaultAppCheckRecaptchaEnterpriseConfig", AppCheckRecaptchaEnterpriseConfigArgs.builder()
.project("my-project-name")
.appId(default_.appId())
.siteKey("6LdpMXIpAAAAANkwWQPgEdjEhal7ugkH9RK9ytuw")
.tokenTtl("7200s")
.build(), CustomResourceOptions.builder()
.dependsOn(wait30s)
.build());
}
}
Content copied to clipboard
resources:
# Enables the reCAPTCHA Enterprise API
recaptchaEnterprise:
type: gcp:projects:Service
name: recaptcha_enterprise
properties:
project: my-project-name
service: recaptchaenterprise.googleapis.com
disableOnDestroy: false
default:
type: gcp:firebase:WebApp
properties:
project: my-project-name
displayName: Web App for reCAPTCHA Enterprise
# It takes a while for App Check to recognize the new app
# If your app already exists, you don't have to wait 30 seconds.
wait30s:
type: time:sleep
name: wait_30s
properties:
createDuration: 30s
options:
dependson:
- ${default}
defaultAppCheckRecaptchaEnterpriseConfig:
type: gcp:firebase:AppCheckRecaptchaEnterpriseConfig
name: default
properties:
project: my-project-name
appId: ${default.appId}
siteKey: 6LdpMXIpAAAAANkwWQPgEdjEhal7ugkH9RK9ytuw
tokenTtl: 7200s
options:
dependson:
- ${wait30s}
Content copied to clipboard
Import
RecaptchaEnterpriseConfig can be imported using any of these accepted formats:
projects/{{project}}/apps/{{app_id}}/recaptchaEnterpriseConfig
{{project}}/{{app_id}}
{{app_id}}
When using thepulumi import
command, RecaptchaEnterpriseConfig can be imported using one of the formats above. For example:
$ pulumi import gcp:firebase/appCheckRecaptchaEnterpriseConfig:AppCheckRecaptchaEnterpriseConfig default projects/{{project}}/apps/{{app_id}}/recaptchaEnterpriseConfig
Content copied to clipboard
$ pulumi import gcp:firebase/appCheckRecaptchaEnterpriseConfig:AppCheckRecaptchaEnterpriseConfig default {{project}}/{{app_id}}
Content copied to clipboard
$ pulumi import gcp:firebase/appCheckRecaptchaEnterpriseConfig:AppCheckRecaptchaEnterpriseConfig default {{app_id}}
Content copied to clipboard
Properties
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Specifies the duration for which App Check tokens exchanged from reCAPTCHA Enterprise artifacts will be valid. If unset, a default value of 1 hour is assumed. Must be between 30 minutes and 7 days, inclusive. A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".