PostRuleArgs

data class PostRuleArgs(val actionType: Output<Either<String, ActionEnum>>? = null, val applications: Output<List<String>>? = null, val auditComment: Output<String>? = null, val category: Output<CategoryArgs>? = null, val decryptionRuleType: Output<Either<String, DecryptionRuleTypeEnum>>? = null, val description: Output<String>? = null, val destination: Output<DestinationAddrArgs>? = null, val enableLogging: Output<Either<String, StateEnum>>? = null, val globalRulestackName: Output<String>? = null, val inboundInspectionCertificate: Output<String>? = null, val negateDestination: Output<Either<String, BooleanEnum>>? = null, val negateSource: Output<Either<String, BooleanEnum>>? = null, val priority: Output<String>? = null, val protocol: Output<String>? = null, val protocolPortList: Output<List<String>>? = null, val ruleName: Output<String>? = null, val ruleState: Output<Either<String, StateEnum>>? = null, val source: Output<SourceAddrArgs>? = null, val tags: Output<List<TagInfoArgs>>? = null) : ConvertibleToJava<PostRuleArgs>

PostRulestack rule list Uses Azure REST API version 2025-02-06-preview. In version 2.x of the Azure Native provider, it used API version 2023-09-01. Other available API versions: 2023-09-01, 2023-10-10-preview, 2024-01-19-preview, 2024-02-07-preview. These can be accessed by generating a local SDK package using the CLI command pulumi package add azure-native cloudngfw [ApiVersion]. See the ../../../version-guide/#accessing-any-api-version-via-local-packages for details.

Example Usage

PostRules_CreateOrUpdate_MaximumSet_Gen

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var postRule = new AzureNative.Cloudngfw.PostRule("postRule", new()
{
ActionType = AzureNative.Cloudngfw.ActionEnum.Allow,
Applications = new[]
{
"app1",
},
AuditComment = "example comment",
Category = new AzureNative.Cloudngfw.Inputs.CategoryArgs
{
Feeds = new[]
{
"feed",
},
UrlCustom = new[]
{
"https://microsoft.com",
},
},
DecryptionRuleType = AzureNative.Cloudngfw.DecryptionRuleTypeEnum.SSLOutboundInspection,
Description = "description of post rule",
Destination = new AzureNative.Cloudngfw.Inputs.DestinationAddrArgs
{
Cidrs = new[]
{
"1.0.0.1/10",
},
Countries = new[]
{
"India",
},
Feeds = new[]
{
"feed",
},
FqdnLists = new[]
{
"FQDN1",
},
PrefixLists = new[]
{
"PL1",
},
},
EnableLogging = AzureNative.Cloudngfw.StateEnum.DISABLED,
GlobalRulestackName = "lrs1",
InboundInspectionCertificate = "cert1",
NegateDestination = AzureNative.Cloudngfw.BooleanEnum.TRUE,
NegateSource = AzureNative.Cloudngfw.BooleanEnum.TRUE,
Priority = "1",
Protocol = "HTTP",
ProtocolPortList = new[]
{
"80",
},
RuleName = "postRule1",
RuleState = AzureNative.Cloudngfw.StateEnum.DISABLED,
Source = new AzureNative.Cloudngfw.Inputs.SourceAddrArgs
{
Cidrs = new[]
{
"1.0.0.1/10",
},
Countries = new[]
{
"India",
},
Feeds = new[]
{
"feed",
},
PrefixLists = new[]
{
"PL1",
},
},
Tags = new[]
{
new AzureNative.Cloudngfw.Inputs.TagInfoArgs
{
Key = "keyName",
Value = "value",
},
},
});
});
package main
import (
cloudngfw "github.com/pulumi/pulumi-azure-native-sdk/cloudngfw/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := cloudngfw.NewPostRule(ctx, "postRule", &cloudngfw.PostRuleArgs{
ActionType: pulumi.String(cloudngfw.ActionEnumAllow),
Applications: pulumi.StringArray{
pulumi.String("app1"),
},
AuditComment: pulumi.String("example comment"),
Category: &cloudngfw.CategoryArgs{
Feeds: pulumi.StringArray{
pulumi.String("feed"),
},
UrlCustom: pulumi.StringArray{
pulumi.String("https://microsoft.com"),
},
},
DecryptionRuleType: pulumi.String(cloudngfw.DecryptionRuleTypeEnumSSLOutboundInspection),
Description: pulumi.String("description of post rule"),
Destination: &cloudngfw.DestinationAddrArgs{
Cidrs: pulumi.StringArray{
pulumi.String("1.0.0.1/10"),
},
Countries: pulumi.StringArray{
pulumi.String("India"),
},
Feeds: pulumi.StringArray{
pulumi.String("feed"),
},
FqdnLists: pulumi.StringArray{
pulumi.String("FQDN1"),
},
PrefixLists: pulumi.StringArray{
pulumi.String("PL1"),
},
},
EnableLogging: pulumi.String(cloudngfw.StateEnumDISABLED),
GlobalRulestackName: pulumi.String("lrs1"),
InboundInspectionCertificate: pulumi.String("cert1"),
NegateDestination: pulumi.String(cloudngfw.BooleanEnumTRUE),
NegateSource: pulumi.String(cloudngfw.BooleanEnumTRUE),
Priority: pulumi.String("1"),
Protocol: pulumi.String("HTTP"),
ProtocolPortList: pulumi.StringArray{
pulumi.String("80"),
},
RuleName: pulumi.String("postRule1"),
RuleState: pulumi.String(cloudngfw.StateEnumDISABLED),
Source: &cloudngfw.SourceAddrArgs{
Cidrs: pulumi.StringArray{
pulumi.String("1.0.0.1/10"),
},
Countries: pulumi.StringArray{
pulumi.String("India"),
},
Feeds: pulumi.StringArray{
pulumi.String("feed"),
},
PrefixLists: pulumi.StringArray{
pulumi.String("PL1"),
},
},
Tags: cloudngfw.TagInfoArray{
&cloudngfw.TagInfoArgs{
Key: pulumi.String("keyName"),
Value: pulumi.String("value"),
},
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.cloudngfw.PostRule;
import com.pulumi.azurenative.cloudngfw.PostRuleArgs;
import com.pulumi.azurenative.cloudngfw.inputs.CategoryArgs;
import com.pulumi.azurenative.cloudngfw.inputs.DestinationAddrArgs;
import com.pulumi.azurenative.cloudngfw.inputs.SourceAddrArgs;
import com.pulumi.azurenative.cloudngfw.inputs.TagInfoArgs;
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 postRule = new PostRule("postRule", PostRuleArgs.builder()
.actionType("Allow")
.applications("app1")
.auditComment("example comment")
.category(CategoryArgs.builder()
.feeds("feed")
.urlCustom("https://microsoft.com")
.build())
.decryptionRuleType("SSLOutboundInspection")
.description("description of post rule")
.destination(DestinationAddrArgs.builder()
.cidrs("1.0.0.1/10")
.countries("India")
.feeds("feed")
.fqdnLists("FQDN1")
.prefixLists("PL1")
.build())
.enableLogging("DISABLED")
.globalRulestackName("lrs1")
.inboundInspectionCertificate("cert1")
.negateDestination("TRUE")
.negateSource("TRUE")
.priority("1")
.protocol("HTTP")
.protocolPortList("80")
.ruleName("postRule1")
.ruleState("DISABLED")
.source(SourceAddrArgs.builder()
.cidrs("1.0.0.1/10")
.countries("India")
.feeds("feed")
.prefixLists("PL1")
.build())
.tags(TagInfoArgs.builder()
.key("keyName")
.value("value")
.build())
.build());
}
}

PostRules_CreateOrUpdate_MinimumSet_Gen

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var postRule = new AzureNative.Cloudngfw.PostRule("postRule", new()
{
GlobalRulestackName = "lrs1",
Priority = "1",
RuleName = "postRule1",
});
});
package main
import (
cloudngfw "github.com/pulumi/pulumi-azure-native-sdk/cloudngfw/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := cloudngfw.NewPostRule(ctx, "postRule", &cloudngfw.PostRuleArgs{
GlobalRulestackName: pulumi.String("lrs1"),
Priority: pulumi.String("1"),
RuleName: pulumi.String("postRule1"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.cloudngfw.PostRule;
import com.pulumi.azurenative.cloudngfw.PostRuleArgs;
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 postRule = new PostRule("postRule", PostRuleArgs.builder()
.globalRulestackName("lrs1")
.priority("1")
.ruleName("postRule1")
.build());
}
}

Import

An existing resource can be imported using its type token, name, and identifier, e.g.

$ pulumi import azure-native:cloudngfw:PostRule aaaaaaaaaa /providers/PaloAltoNetworks.Cloudngfw/globalRulestacks/{globalRulestackName}/postRules/{priority}

Constructors

Link copied to clipboard
constructor(actionType: Output<Either<String, ActionEnum>>? = null, applications: Output<List<String>>? = null, auditComment: Output<String>? = null, category: Output<CategoryArgs>? = null, decryptionRuleType: Output<Either<String, DecryptionRuleTypeEnum>>? = null, description: Output<String>? = null, destination: Output<DestinationAddrArgs>? = null, enableLogging: Output<Either<String, StateEnum>>? = null, globalRulestackName: Output<String>? = null, inboundInspectionCertificate: Output<String>? = null, negateDestination: Output<Either<String, BooleanEnum>>? = null, negateSource: Output<Either<String, BooleanEnum>>? = null, priority: Output<String>? = null, protocol: Output<String>? = null, protocolPortList: Output<List<String>>? = null, ruleName: Output<String>? = null, ruleState: Output<Either<String, StateEnum>>? = null, source: Output<SourceAddrArgs>? = null, tags: Output<List<TagInfoArgs>>? = null)

Properties

Link copied to clipboard
val actionType: Output<Either<String, ActionEnum>>? = null

rule action

Link copied to clipboard
val applications: Output<List<String>>? = null

array of rule applications

Link copied to clipboard
val auditComment: Output<String>? = null

rule comment

Link copied to clipboard
val category: Output<CategoryArgs>? = null

rule category

Link copied to clipboard
val decryptionRuleType: Output<Either<String, DecryptionRuleTypeEnum>>? = null

enable or disable decryption

Link copied to clipboard
val description: Output<String>? = null

rule description

Link copied to clipboard
val destination: Output<DestinationAddrArgs>? = null

destination address

Link copied to clipboard
val enableLogging: Output<Either<String, StateEnum>>? = null

enable or disable logging

Link copied to clipboard
val globalRulestackName: Output<String>? = null

GlobalRulestack resource name

Link copied to clipboard

inbound Inspection Certificate

Link copied to clipboard
val negateDestination: Output<Either<String, BooleanEnum>>? = null

cidr should not be 'any'

Link copied to clipboard
val negateSource: Output<Either<String, BooleanEnum>>? = null

cidr should not be 'any'

Link copied to clipboard
val priority: Output<String>? = null

Post Rule priority

Link copied to clipboard
val protocol: Output<String>? = null

any, application-default, TCP:number, UDP:number

Link copied to clipboard
val protocolPortList: Output<List<String>>? = null

prot port list

Link copied to clipboard
val ruleName: Output<String>? = null

rule name

Link copied to clipboard
val ruleState: Output<Either<String, StateEnum>>? = null

state of this rule

Link copied to clipboard
val source: Output<SourceAddrArgs>? = null

source address

Link copied to clipboard
val tags: Output<List<TagInfoArgs>>? = null

tag for rule

Functions

Link copied to clipboard
open override fun toJava(): PostRuleArgs