FirewallEndpoint class
A Firewall endpoint is a Cloud Firewall resource that enables layer 7 advanced protection capabilities, such as intrusion prevention, in your network.
To get more information about FirewallEndpoint, see:
> Warning: If you are using User ADCs (Application Default Credentials) with this resource,
you must specify a billingProjectId and set userProjectOverride to true
in the provider configuration. Otherwise the ACM API will return a 403 error.
Your account must have the serviceusage.services.use permission on the
billingProjectId you defined.
Example Usage
Network Security Firewall Endpoint Basic
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const _default = new gcp.networksecurity.FirewallEndpoint("default", {
name: "my-firewall-endpoint",
parent: "organizations/123456789",
location: "us-central1-a",
billingProjectId: "my-project-name",
labels: {
foo: "bar",
},
});
import pulumi
import pulumi_gcp as gcp
default = gcp.networksecurity.FirewallEndpoint("default",
name="my-firewall-endpoint",
parent="organizations/123456789",
location="us-central1-a",
billing_project_id="my-project-name",
labels={
"foo": "bar",
})
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var @default = new Gcp.NetworkSecurity.FirewallEndpoint("default", new()
{
Name = "my-firewall-endpoint",
Parent = "organizations/123456789",
Location = "us-central1-a",
BillingProjectId = "my-project-name",
Labels =
{
{ "foo", "bar" },
},
});
});
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v9/go/gcp/networksecurity"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := networksecurity.NewFirewallEndpoint(ctx, "default", &networksecurity.FirewallEndpointArgs{
Name: pulumi.String("my-firewall-endpoint"),
Parent: pulumi.String("organizations/123456789"),
Location: pulumi.String("us-central1-a"),
BillingProjectId: pulumi.String("my-project-name"),
Labels: pulumi.StringMap{
"foo": pulumi.String("bar"),
},
})
if err != nil {
return err
}
return nil
})
}
pulumi {
required_providers {
gcp = {
source = "pulumi/gcp"
}
}
}
resource "gcp_networksecurity_firewallendpoint" "default" {
name = "my-firewall-endpoint"
parent = "organizations/123456789"
location = "us-central1-a"
billing_project_id = "my-project-name"
labels = {
"foo" = "bar"
}
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.networksecurity.FirewallEndpoint;
import com.pulumi.gcp.networksecurity.FirewallEndpointArgs;
import java.util.ArrayList;
import java.util.Arrays;
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 FirewallEndpoint("default", FirewallEndpointArgs.builder()
.name("my-firewall-endpoint")
.parent("organizations/123456789")
.location("us-central1-a")
.billingProjectId("my-project-name")
.labels(Map.of("foo", "bar"))
.build());
}
}
resources:
default:
type: gcp:networksecurity:FirewallEndpoint
properties:
name: my-firewall-endpoint
parent: organizations/123456789
location: us-central1-a
billingProjectId: my-project-name
labels:
foo: bar
Network Security Firewall Endpoint Project
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const _default = new gcp.networksecurity.FirewallEndpoint("default", {
name: "my-firewall-endpoint",
parent: "projects/my-project-name",
location: "us-central1-a",
labels: {
foo: "bar",
},
});
import pulumi
import pulumi_gcp as gcp
default = gcp.networksecurity.FirewallEndpoint("default",
name="my-firewall-endpoint",
parent="projects/my-project-name",
location="us-central1-a",
labels={
"foo": "bar",
})
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var @default = new Gcp.NetworkSecurity.FirewallEndpoint("default", new()
{
Name = "my-firewall-endpoint",
Parent = "projects/my-project-name",
Location = "us-central1-a",
Labels =
{
{ "foo", "bar" },
},
});
});
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v9/go/gcp/networksecurity"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := networksecurity.NewFirewallEndpoint(ctx, "default", &networksecurity.FirewallEndpointArgs{
Name: pulumi.String("my-firewall-endpoint"),
Parent: pulumi.String("projects/my-project-name"),
Location: pulumi.String("us-central1-a"),
Labels: pulumi.StringMap{
"foo": pulumi.String("bar"),
},
})
if err != nil {
return err
}
return nil
})
}
pulumi {
required_providers {
gcp = {
source = "pulumi/gcp"
}
}
}
resource "gcp_networksecurity_firewallendpoint" "default" {
name = "my-firewall-endpoint"
parent = "projects/my-project-name"
location = "us-central1-a"
labels = {
"foo" = "bar"
}
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.networksecurity.FirewallEndpoint;
import com.pulumi.gcp.networksecurity.FirewallEndpointArgs;
import java.util.ArrayList;
import java.util.Arrays;
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 FirewallEndpoint("default", FirewallEndpointArgs.builder()
.name("my-firewall-endpoint")
.parent("projects/my-project-name")
.location("us-central1-a")
.labels(Map.of("foo", "bar"))
.build());
}
}
resources:
default:
type: gcp:networksecurity:FirewallEndpoint
properties:
name: my-firewall-endpoint
parent: projects/my-project-name
location: us-central1-a
labels:
foo: bar
Import
FirewallEndpoint can be imported using any of these accepted formats:
{{parent}}/locations/{{location}}/firewallEndpoints/{{name}}
When using the pulumi import command, FirewallEndpoint can be imported using one of the formats above. For example:
$ pulumi import gcp:networksecurity/firewallEndpoint:FirewallEndpoint default {{parent}}/locations/{{location}}/firewallEndpoints/{{name}}
Constructors
- FirewallEndpoint(String name, {FirewallEndpointArgs? args, CustomResourceOptions? options})
-
Creates a new FirewallEndpoint.
nameThe Pulumi resource name.argsArguments used to configure this FirewallEndpoint. The set of arguments for FirewallEndpoint.optionsResource options controlling this resource's behavior. - FirewallEndpoint.reference(String urn)
- Creates a typed reference to an existing FirewallEndpoint resource.
Properties
-
associatedNetworks
↔ Output<
List< String> > -
List of networks that are associated with this endpoint in the local zone.
This is a projection of the FirewallEndpointAssociations pointing at this
endpoint. A network will only appear in this list after traffic routing is
fully configured. Format: projects/{project}/global/networks/{name}.
latefinal
-
billingProjectId
↔ Output<
String> -
Project to charge for the deployed firewall endpoint.
This field is required for organization-scoped endpoints.
For project-scoped endpoints, it is optional but must match the
endpoint's project if specified.
latefinal
-
childResources
→ Set<
Resource> -
finalinherited
-
completionSources
↔ Map<
String, IOutputCompletionSource> -
latefinalinherited
-
createTime
↔ Output<
String> -
Time the firewall endpoint was created in UTC.
latefinal
-
deletionPolicy
↔ Output<
String> -
Whether Terraform will be prevented from destroying the resource. Defaults to DELETE.
When a 'terraform destroy' or 'pulumi up' would delete the resource,
the command will fail if this field is set to "PREVENT" in Terraform state.
When set to "ABANDON", the command will remove the resource from Terraform
management without updating or deleting the resource in the API.
When set to "DELETE", deleting the resource is allowed.
latefinal
-
effectiveLabels
↔ Output<
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.
latefinal
-
endpointSettings
↔ Output<
FirewallEndpointEndpointSettings?> -
Settings for the endpoint.
Structure is documented below.
latefinal
- hashCode → int
-
The hash code for this object.
no setterinherited
-
id
↔ Output<
String> -
getter/setter pairinherited
- isCustom → bool
-
Returns whether this resource is provider-managed.
no setterinherited
- isProtected → bool
-
Returns whether this resource is protected from deletion.
no setterinherited
- isRemote → bool
-
Whether this resource is registered as remote.
no setterinherited
- isResourceReference → bool
-
Whether this instance represents a resource value returned over RPC.
finalinherited
-
labels
↔ Output<
Map< String, String> ?> -
A map of key/value label pairs to assign to the resource.
latefinal
-
location
↔ Output<
String> -
The location (zone) of the firewall endpoint.
latefinal
-
name
↔ Output<
String> -
The name of the firewall endpoint resource.
latefinal
-
parent
↔ Output<
String> -
The name of the parent this firewall endpoint belongs to.
Format:
organizations/{organization_id}orprojects/{project_id}.latefinal -
pulumiLabels
↔ Output<
Map< String, String> > -
The combination of labels configured directly on the resource
and default labels configured on the provider.
latefinal
-
reconciling
↔ Output<
bool> -
Whether reconciling is in progress, recommended per https://google.aip.dev/128.
latefinal
-
resourceTransforms
→ List<
ResourceTransform> -
Inherited/explicit async transforms.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
-
selfLink
↔ Output<
String> -
Server-defined URL of this resource.
latefinal
-
state
↔ Output<
String> -
The current state of the endpoint.
latefinal
-
transformations
→ List<
ResourceTransformation> -
Inherited/explicit legacy transformations.
no setterinherited
-
updateTime
↔ Output<
String> -
Time the firewall endpoint was updated in UTC.
latefinal
-
urn
↔ Output<
String> -
latefinalinherited
Methods
-
failId(
Object error) → void -
Completes this resource ID with an error when registration fails.
inherited
-
failOutputs(
Object error) → void -
Completes all output properties with
error.inherited -
failUrn(
Object error) → void -
Completes this resource URN with an error when registration fails.
inherited
-
getProvider(
String moduleMember) → ProviderResource? -
Returns provider for
moduleMember's package, if configured.inherited -
getResourceName(
) → String -
Returns this resource's logical name.
inherited
-
getResourceType(
) → String -
Returns this resource's Pulumi type token.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
registerOutput<
T> (String propertyName, {Object? decoder(Object?)?, bool isSecret = false}) → Output< T> -
Registers a dynamic output property for this resource.
inherited
-
resolveId(
String? value, {required bool isKnown}) → void -
Resolves the provider-assigned ID for this resource.
inherited
-
resolveOutputs(
Struct outputs) → void -
Resolves all output properties from a monitor response payload.
inherited
-
resolveUrn(
String value) → void -
Resolves this resource's URN once assigned by the engine.
inherited
-
serializeProperties(
Map< String, dynamic> properties) → Future<Struct> -
Serializes resource properties for RPC transmission.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Methods
-
get(
String name, Input< String> id, {FirewallEndpointState? state, CustomResourceOptions? options}) → FirewallEndpoint -
Gets an existing FirewallEndpoint resource's state with the given
nameandid.