Firewall Policy Rule Args
data class FirewallPolicyRuleArgs(val action: Output<String>? = null, val description: Output<String>? = null, val direction: Output<String>? = null, val disabled: Output<Boolean>? = null, val enableLogging: Output<Boolean>? = null, val firewallPolicy: Output<String>? = null, val match: Output<FirewallPolicyRuleMatchArgs>? = null, val priority: Output<Int>? = null, val targetResources: Output<List<String>>? = null, val targetServiceAccounts: Output<List<String>>? = null) : ConvertibleToJava<FirewallPolicyRuleArgs>
The Compute FirewallPolicyRule resource
Example Usage
Basic_fir_sec_rule
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.networksecurity.AddressGroup;
import com.pulumi.gcp.networksecurity.AddressGroupArgs;
import com.pulumi.gcp.organizations.Folder;
import com.pulumi.gcp.organizations.FolderArgs;
import com.pulumi.gcp.compute.FirewallPolicy;
import com.pulumi.gcp.compute.FirewallPolicyArgs;
import com.pulumi.gcp.compute.FirewallPolicyRule;
import com.pulumi.gcp.compute.FirewallPolicyRuleArgs;
import com.pulumi.gcp.compute.inputs.FirewallPolicyRuleMatchArgs;
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 basicGlobalNetworksecurityAddressGroup = new AddressGroup("basicGlobalNetworksecurityAddressGroup", AddressGroupArgs.builder()
.parent("organizations/123456789")
.description("Sample global networksecurity_address_group")
.location("global")
.items("208.80.154.224/32")
.type("IPV4")
.capacity(100)
.build());
var folder = new Folder("folder", FolderArgs.builder()
.displayName("policy")
.parent("organizations/123456789")
.build());
var default_ = new FirewallPolicy("default", FirewallPolicyArgs.builder()
.parent(folder.id())
.shortName("policy")
.description("Resource created for Terraform acceptance testing")
.build());
var primary = new FirewallPolicyRule("primary", FirewallPolicyRuleArgs.builder()
.firewallPolicy(default_.name())
.description("Resource created for Terraform acceptance testing")
.priority(9000)
.enableLogging(true)
.action("allow")
.direction("EGRESS")
.disabled(false)
.match(FirewallPolicyRuleMatchArgs.builder()
.layer4Configs(
FirewallPolicyRuleMatchLayer4ConfigArgs.builder()
.ipProtocol("tcp")
.ports(8080)
.build(),
FirewallPolicyRuleMatchLayer4ConfigArgs.builder()
.ipProtocol("udp")
.ports(22)
.build())
.destIpRanges("11.100.0.1/32")
.destFqdns()
.destRegionCodes("US")
.destThreatIntelligences("iplist-known-malicious-ips")
.srcAddressGroups()
.destAddressGroups(basicGlobalNetworksecurityAddressGroup.id())
.build())
.targetServiceAccounts("my@service-account.com")
.build());
}
}
Content copied to clipboard
Import
FirewallPolicyRule can be imported using any of these accepted formats
$ pulumi import gcp:compute/firewallPolicyRule:FirewallPolicyRule default locations/global/firewallPolicies/{{firewall_policy}}/rules/{{priority}}
Content copied to clipboard
$ pulumi import gcp:compute/firewallPolicyRule:FirewallPolicyRule default {{firewall_policy}}/{{priority}}
Content copied to clipboard
Constructors
Link copied to clipboard
fun FirewallPolicyRuleArgs(action: Output<String>? = null, description: Output<String>? = null, direction: Output<String>? = null, disabled: Output<Boolean>? = null, enableLogging: Output<Boolean>? = null, firewallPolicy: Output<String>? = null, match: Output<FirewallPolicyRuleMatchArgs>? = null, priority: Output<Int>? = null, targetResources: Output<List<String>>? = null, targetServiceAccounts: Output<List<String>>? = null)