FileBlockingProfile resource
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as scm from "@pulumi/scm";
const scmFileBlockingBase = new scm.FileBlockingProfile("scm_file_blocking_base", {
folder: "ngfw-shared",
name: "base_file_blocking",
});
const scmFileBlockingProfile = new scm.FileBlockingProfile("scm_file_blocking_profile", {
folder: "ngfw-shared",
name: "file_blocking_profile_complete",
description: "alert, block, and continue",
rules: [
{
name: "block_rule",
action: "block",
application: ["any"],
direction: "upload",
fileType: ["any"],
},
{
name: "block_rule_two",
action: "block",
application: ["8x8"],
direction: "upload",
fileType: [
"7z",
"bat",
"chm",
"class",
"cpl",
"dll",
"hlp",
"hta",
"jar",
"ocx",
"pif",
"scr",
"torrent",
"vbe",
"wsf",
],
},
{
name: "alert_rule",
action: "alert",
application: [
"access-grid",
"adobe-update",
],
direction: "both",
fileType: ["ico"],
},
{
name: "continue_rule",
action: "continue",
application: [
"apple-appstore",
"limelight",
],
direction: "download",
fileType: [
"doc",
"bmp",
"dsn",
"dwf",
],
},
],
});
import pulumi
import pulumi_scm as scm
scm_file_blocking_base = scm.FileBlockingProfile("scm_file_blocking_base",
folder="ngfw-shared",
name="base_file_blocking")
scm_file_blocking_profile = scm.FileBlockingProfile("scm_file_blocking_profile",
folder="ngfw-shared",
name="file_blocking_profile_complete",
description="alert, block, and continue",
rules=[
{
"name": "block_rule",
"action": "block",
"application": ["any"],
"direction": "upload",
"file_type": ["any"],
},
{
"name": "block_rule_two",
"action": "block",
"application": ["8x8"],
"direction": "upload",
"file_type": [
"7z",
"bat",
"chm",
"class",
"cpl",
"dll",
"hlp",
"hta",
"jar",
"ocx",
"pif",
"scr",
"torrent",
"vbe",
"wsf",
],
},
{
"name": "alert_rule",
"action": "alert",
"application": [
"access-grid",
"adobe-update",
],
"direction": "both",
"file_type": ["ico"],
},
{
"name": "continue_rule",
"action": "continue",
"application": [
"apple-appstore",
"limelight",
],
"direction": "download",
"file_type": [
"doc",
"bmp",
"dsn",
"dwf",
],
},
])
package main
import (
"github.com/pulumi/pulumi-scm/sdk/go/scm"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := scm.NewFileBlockingProfile(ctx, "scm_file_blocking_base", &scm.FileBlockingProfileArgs{
Folder: pulumi.String("ngfw-shared"),
Name: pulumi.String("base_file_blocking"),
})
if err != nil {
return err
}
_, err = scm.NewFileBlockingProfile(ctx, "scm_file_blocking_profile", &scm.FileBlockingProfileArgs{
Folder: pulumi.String("ngfw-shared"),
Name: pulumi.String("file_blocking_profile_complete"),
Description: pulumi.String("alert, block, and continue"),
Rules: scm.FileBlockingProfileRuleArray{
&scm.FileBlockingProfileRuleArgs{
Name: pulumi.String("block_rule"),
Action: pulumi.String("block"),
Application: []string{
"any",
},
Direction: pulumi.String("upload"),
FileType: []string{
"any",
},
},
&scm.FileBlockingProfileRuleArgs{
Name: pulumi.String("block_rule_two"),
Action: pulumi.String("block"),
Application: []string{
"8x8",
},
Direction: pulumi.String("upload"),
FileType: []string{
"7z",
"bat",
"chm",
"class",
"cpl",
"dll",
"hlp",
"hta",
"jar",
"ocx",
"pif",
"scr",
"torrent",
"vbe",
"wsf",
},
},
&scm.FileBlockingProfileRuleArgs{
Name: pulumi.String("alert_rule"),
Action: pulumi.String("alert"),
Application: []string{
"access-grid",
"adobe-update",
},
Direction: pulumi.String("both"),
FileType: []string{
"ico",
},
},
&scm.FileBlockingProfileRuleArgs{
Name: pulumi.String("continue_rule"),
Action: pulumi.String("continue"),
Application: []string{
"apple-appstore",
"limelight",
},
Direction: pulumi.String("download"),
FileType: []string{
"doc",
"bmp",
"dsn",
"dwf",
},
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Scm = Pulumi.Scm;
return await Deployment.RunAsync(() =>
{
var scmFileBlockingBase = new Scm.FileBlockingProfile("scm_file_blocking_base", new()
{
Folder = "ngfw-shared",
Name = "base_file_blocking",
});
var scmFileBlockingProfile = new Scm.FileBlockingProfile("scm_file_blocking_profile", new()
{
Folder = "ngfw-shared",
Name = "file_blocking_profile_complete",
Description = "alert, block, and continue",
Rules = new[]
{
new Scm.Inputs.FileBlockingProfileRuleArgs
{
Name = "block_rule",
Action = "block",
Application = new[]
{
"any",
},
Direction = "upload",
FileType = new[]
{
"any",
},
},
new Scm.Inputs.FileBlockingProfileRuleArgs
{
Name = "block_rule_two",
Action = "block",
Application = new[]
{
"8x8",
},
Direction = "upload",
FileType = new[]
{
"7z",
"bat",
"chm",
"class",
"cpl",
"dll",
"hlp",
"hta",
"jar",
"ocx",
"pif",
"scr",
"torrent",
"vbe",
"wsf",
},
},
new Scm.Inputs.FileBlockingProfileRuleArgs
{
Name = "alert_rule",
Action = "alert",
Application = new[]
{
"access-grid",
"adobe-update",
},
Direction = "both",
FileType = new[]
{
"ico",
},
},
new Scm.Inputs.FileBlockingProfileRuleArgs
{
Name = "continue_rule",
Action = "continue",
Application = new[]
{
"apple-appstore",
"limelight",
},
Direction = "download",
FileType = new[]
{
"doc",
"bmp",
"dsn",
"dwf",
},
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.scm.FileBlockingProfile;
import com.pulumi.scm.FileBlockingProfileArgs;
import com.pulumi.scm.inputs.FileBlockingProfileRuleArgs;
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 scmFileBlockingBase = new FileBlockingProfile("scmFileBlockingBase", FileBlockingProfileArgs.builder()
.folder("ngfw-shared")
.name("base_file_blocking")
.build());
var scmFileBlockingProfile = new FileBlockingProfile("scmFileBlockingProfile", FileBlockingProfileArgs.builder()
.folder("ngfw-shared")
.name("file_blocking_profile_complete")
.description("alert, block, and continue")
.rules(
FileBlockingProfileRuleArgs.builder()
.name("block_rule")
.action("block")
.application(List.of("any"))
.direction("upload")
.fileType(List.of("any"))
.build(),
FileBlockingProfileRuleArgs.builder()
.name("block_rule_two")
.action("block")
.application(List.of("8x8"))
.direction("upload")
.fileType(List.of(
"7z",
"bat",
"chm",
"class",
"cpl",
"dll",
"hlp",
"hta",
"jar",
"ocx",
"pif",
"scr",
"torrent",
"vbe",
"wsf"))
.build(),
FileBlockingProfileRuleArgs.builder()
.name("alert_rule")
.action("alert")
.application(List.of(
"access-grid",
"adobe-update"))
.direction("both")
.fileType(List.of("ico"))
.build(),
FileBlockingProfileRuleArgs.builder()
.name("continue_rule")
.action("continue")
.application(List.of(
"apple-appstore",
"limelight"))
.direction("download")
.fileType(List.of(
"doc",
"bmp",
"dsn",
"dwf"))
.build())
.build());
}
}
resources:
scmFileBlockingBase:
type: scm:FileBlockingProfile
name: scm_file_blocking_base
properties:
folder: ngfw-shared
name: base_file_blocking
scmFileBlockingProfile:
type: scm:FileBlockingProfile
name: scm_file_blocking_profile
properties:
folder: ngfw-shared
name: file_blocking_profile_complete
description: alert, block, and continue
rules:
- name: block_rule
action: block
application:
- any
direction: upload
fileType:
- any
- name: block_rule_two
action: block
application:
- 8x8
direction: upload
fileType:
- 7z
- bat
- chm
- class
- cpl
- dll
- hlp
- hta
- jar
- ocx
- pif
- scr
- torrent
- vbe
- wsf
- name: alert_rule
action: alert
application:
- access-grid
- adobe-update
direction: both
fileType:
- ico
- name: continue_rule
action: continue
application:
- apple-appstore
- limelight
direction: download
fileType:
- doc
- bmp
- dsn
- dwf
Create FileBlockingProfile Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new FileBlockingProfile(name: string, args?: FileBlockingProfileArgs, opts?: CustomResourceOptions);@overload
def FileBlockingProfile(resource_name: str,
args: Optional[FileBlockingProfileArgs] = None,
opts: Optional[ResourceOptions] = None)
@overload
def FileBlockingProfile(resource_name: str,
opts: Optional[ResourceOptions] = None,
description: Optional[str] = None,
device: Optional[str] = None,
folder: Optional[str] = None,
name: Optional[str] = None,
rules: Optional[Sequence[FileBlockingProfileRuleArgs]] = None,
snippet: Optional[str] = None)func NewFileBlockingProfile(ctx *Context, name string, args *FileBlockingProfileArgs, opts ...ResourceOption) (*FileBlockingProfile, error)public FileBlockingProfile(string name, FileBlockingProfileArgs? args = null, CustomResourceOptions? opts = null)
public FileBlockingProfile(String name, FileBlockingProfileArgs args)
public FileBlockingProfile(String name, FileBlockingProfileArgs args, CustomResourceOptions options)
type: scm:FileBlockingProfile
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args FileBlockingProfileArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args FileBlockingProfileArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args FileBlockingProfileArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args FileBlockingProfileArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args FileBlockingProfileArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var fileBlockingProfileResource = new Scm.FileBlockingProfile("fileBlockingProfileResource", new()
{
Description = "string",
Device = "string",
Folder = "string",
Name = "string",
Rules = new[]
{
new Scm.Inputs.FileBlockingProfileRuleArgs
{
Action = "string",
Applications = new[]
{
"string",
},
Direction = "string",
FileTypes = new[]
{
"string",
},
Name = "string",
},
},
Snippet = "string",
});
example, err := scm.NewFileBlockingProfile(ctx, "fileBlockingProfileResource", &scm.FileBlockingProfileArgs{
Description: pulumi.String("string"),
Device: pulumi.String("string"),
Folder: pulumi.String("string"),
Name: pulumi.String("string"),
Rules: scm.FileBlockingProfileRuleArray{
&scm.FileBlockingProfileRuleArgs{
Action: pulumi.String("string"),
Applications: pulumi.StringArray{
pulumi.String("string"),
},
Direction: pulumi.String("string"),
FileTypes: pulumi.StringArray{
pulumi.String("string"),
},
Name: pulumi.String("string"),
},
},
Snippet: pulumi.String("string"),
})
var fileBlockingProfileResource = new FileBlockingProfile("fileBlockingProfileResource", FileBlockingProfileArgs.builder()
.description("string")
.device("string")
.folder("string")
.name("string")
.rules(FileBlockingProfileRuleArgs.builder()
.action("string")
.applications("string")
.direction("string")
.fileTypes("string")
.name("string")
.build())
.snippet("string")
.build());
file_blocking_profile_resource = scm.FileBlockingProfile("fileBlockingProfileResource",
description="string",
device="string",
folder="string",
name="string",
rules=[{
"action": "string",
"applications": ["string"],
"direction": "string",
"file_types": ["string"],
"name": "string",
}],
snippet="string")
const fileBlockingProfileResource = new scm.FileBlockingProfile("fileBlockingProfileResource", {
description: "string",
device: "string",
folder: "string",
name: "string",
rules: [{
action: "string",
applications: ["string"],
direction: "string",
fileTypes: ["string"],
name: "string",
}],
snippet: "string",
});
type: scm:FileBlockingProfile
properties:
description: string
device: string
folder: string
name: string
rules:
- action: string
applications:
- string
direction: string
fileTypes:
- string
name: string
snippet: string
FileBlockingProfile Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The FileBlockingProfile resource accepts the following input properties:
- Description string
- Description
- Device string
- The device in which the resource is defined
- Folder string
The folder in which the resource is defined
ℹ️ Note: You must specify exactly one of
device,folder, andsnippet.- Name string
- The name of the file blocking profile
- Rules
List<File
Blocking Profile Rule> - A list of file blocking rules
- Snippet string
The snippet in which the resource is defined
ℹ️ Note: You must specify exactly one of
device,folder, andsnippet.
- Description string
- Description
- Device string
- The device in which the resource is defined
- Folder string
The folder in which the resource is defined
ℹ️ Note: You must specify exactly one of
device,folder, andsnippet.- Name string
- The name of the file blocking profile
- Rules
[]File
Blocking Profile Rule Args - A list of file blocking rules
- Snippet string
The snippet in which the resource is defined
ℹ️ Note: You must specify exactly one of
device,folder, andsnippet.
- description String
- Description
- device String
- The device in which the resource is defined
- folder String
The folder in which the resource is defined
ℹ️ Note: You must specify exactly one of
device,folder, andsnippet.- name String
- The name of the file blocking profile
- rules
List<File
Blocking Profile Rule> - A list of file blocking rules
- snippet String
The snippet in which the resource is defined
ℹ️ Note: You must specify exactly one of
device,folder, andsnippet.
- description string
- Description
- device string
- The device in which the resource is defined
- folder string
The folder in which the resource is defined
ℹ️ Note: You must specify exactly one of
device,folder, andsnippet.- name string
- The name of the file blocking profile
- rules
File
Blocking Profile Rule[] - A list of file blocking rules
- snippet string
The snippet in which the resource is defined
ℹ️ Note: You must specify exactly one of
device,folder, andsnippet.
- description str
- Description
- device str
- The device in which the resource is defined
- folder str
The folder in which the resource is defined
ℹ️ Note: You must specify exactly one of
device,folder, andsnippet.- name str
- The name of the file blocking profile
- rules
Sequence[File
Blocking Profile Rule Args] - A list of file blocking rules
- snippet str
The snippet in which the resource is defined
ℹ️ Note: You must specify exactly one of
device,folder, andsnippet.
- description String
- Description
- device String
- The device in which the resource is defined
- folder String
The folder in which the resource is defined
ℹ️ Note: You must specify exactly one of
device,folder, andsnippet.- name String
- The name of the file blocking profile
- rules List<Property Map>
- A list of file blocking rules
- snippet String
The snippet in which the resource is defined
ℹ️ Note: You must specify exactly one of
device,folder, andsnippet.
Outputs
All input properties are implicitly available as output properties. Additionally, the FileBlockingProfile resource produces the following output properties:
Look up Existing FileBlockingProfile Resource
Get an existing FileBlockingProfile resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: FileBlockingProfileState, opts?: CustomResourceOptions): FileBlockingProfile@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
description: Optional[str] = None,
device: Optional[str] = None,
folder: Optional[str] = None,
name: Optional[str] = None,
rules: Optional[Sequence[FileBlockingProfileRuleArgs]] = None,
snippet: Optional[str] = None,
tfid: Optional[str] = None) -> FileBlockingProfilefunc GetFileBlockingProfile(ctx *Context, name string, id IDInput, state *FileBlockingProfileState, opts ...ResourceOption) (*FileBlockingProfile, error)public static FileBlockingProfile Get(string name, Input<string> id, FileBlockingProfileState? state, CustomResourceOptions? opts = null)public static FileBlockingProfile get(String name, Output<String> id, FileBlockingProfileState state, CustomResourceOptions options)resources: _: type: scm:FileBlockingProfile get: id: ${id}- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Description string
- Description
- Device string
- The device in which the resource is defined
- Folder string
The folder in which the resource is defined
ℹ️ Note: You must specify exactly one of
device,folder, andsnippet.- Name string
- The name of the file blocking profile
- Rules
List<File
Blocking Profile Rule> - A list of file blocking rules
- Snippet string
The snippet in which the resource is defined
ℹ️ Note: You must specify exactly one of
device,folder, andsnippet.- Tfid string
- The Terraform ID.
- Description string
- Description
- Device string
- The device in which the resource is defined
- Folder string
The folder in which the resource is defined
ℹ️ Note: You must specify exactly one of
device,folder, andsnippet.- Name string
- The name of the file blocking profile
- Rules
[]File
Blocking Profile Rule Args - A list of file blocking rules
- Snippet string
The snippet in which the resource is defined
ℹ️ Note: You must specify exactly one of
device,folder, andsnippet.- Tfid string
- The Terraform ID.
- description String
- Description
- device String
- The device in which the resource is defined
- folder String
The folder in which the resource is defined
ℹ️ Note: You must specify exactly one of
device,folder, andsnippet.- name String
- The name of the file blocking profile
- rules
List<File
Blocking Profile Rule> - A list of file blocking rules
- snippet String
The snippet in which the resource is defined
ℹ️ Note: You must specify exactly one of
device,folder, andsnippet.- tfid String
- The Terraform ID.
- description string
- Description
- device string
- The device in which the resource is defined
- folder string
The folder in which the resource is defined
ℹ️ Note: You must specify exactly one of
device,folder, andsnippet.- name string
- The name of the file blocking profile
- rules
File
Blocking Profile Rule[] - A list of file blocking rules
- snippet string
The snippet in which the resource is defined
ℹ️ Note: You must specify exactly one of
device,folder, andsnippet.- tfid string
- The Terraform ID.
- description str
- Description
- device str
- The device in which the resource is defined
- folder str
The folder in which the resource is defined
ℹ️ Note: You must specify exactly one of
device,folder, andsnippet.- name str
- The name of the file blocking profile
- rules
Sequence[File
Blocking Profile Rule Args] - A list of file blocking rules
- snippet str
The snippet in which the resource is defined
ℹ️ Note: You must specify exactly one of
device,folder, andsnippet.- tfid str
- The Terraform ID.
- description String
- Description
- device String
- The device in which the resource is defined
- folder String
The folder in which the resource is defined
ℹ️ Note: You must specify exactly one of
device,folder, andsnippet.- name String
- The name of the file blocking profile
- rules List<Property Map>
- A list of file blocking rules
- snippet String
The snippet in which the resource is defined
ℹ️ Note: You must specify exactly one of
device,folder, andsnippet.- tfid String
- The Terraform ID.
Supporting Types
FileBlockingProfileRule, FileBlockingProfileRuleArgs
- Action string
- The action to take when the rule match criteria is met
- Applications List<string>
- The application transferring the files (App-ID naming)
- Direction string
- The direction of the file transfer
- File
Types List<string> - The file type
- Name string
- The name of the file blocking rule
- Action string
- The action to take when the rule match criteria is met
- Applications []string
- The application transferring the files (App-ID naming)
- Direction string
- The direction of the file transfer
- File
Types []string - The file type
- Name string
- The name of the file blocking rule
- action String
- The action to take when the rule match criteria is met
- applications List<String>
- The application transferring the files (App-ID naming)
- direction String
- The direction of the file transfer
- file
Types List<String> - The file type
- name String
- The name of the file blocking rule
- action string
- The action to take when the rule match criteria is met
- applications string[]
- The application transferring the files (App-ID naming)
- direction string
- The direction of the file transfer
- file
Types string[] - The file type
- name string
- The name of the file blocking rule
- action str
- The action to take when the rule match criteria is met
- applications Sequence[str]
- The application transferring the files (App-ID naming)
- direction str
- The direction of the file transfer
- file_
types Sequence[str] - The file type
- name str
- The name of the file blocking rule
- action String
- The action to take when the rule match criteria is met
- applications List<String>
- The application transferring the files (App-ID naming)
- direction String
- The direction of the file transfer
- file
Types List<String> - The file type
- name String
- The name of the file blocking rule
Import
The following command can be used to import a resource not managed by Terraform:
terraform import scm_file_blocking_profile.example folder:::id
or
terraform import scm_file_blocking_profile.example :snippet::id
or
terraform import scm_file_blocking_profile.example ::device:id
Note: Please provide just one of folder, snippet, or device for the import command.
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- scm pulumi/pulumi-scm
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
scmTerraform Provider.
