1. Packages
  2. Google Cloud (GCP) Classic
  3. API Docs
  4. diagflow
  5. CxSecuritySettings
Google Cloud Classic v8.9.3 published on Monday, Nov 18, 2024 by Pulumi

gcp.diagflow.CxSecuritySettings

Explore with Pulumi AI

gcp logo
Google Cloud Classic v8.9.3 published on Monday, Nov 18, 2024 by Pulumi

    Represents the settings related to security issues, such as data redaction and data retention. It may take hours for updates on the settings to propagate to all the related components and take effect. Multiple security settings can be configured in each location. Each agent can specify the security settings to apply, and each setting can be applied to multiple agents in the same project and location.

    To get more information about SecuritySettings, see:

    Example Usage

    Dialogflowcx Security Settings Basic

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const basicSecuritySettings = new gcp.diagflow.CxSecuritySettings("basic_security_settings", {
        displayName: "dialogflowcx-security-settings",
        location: "global",
        purgeDataTypes: [],
        retentionWindowDays: 7,
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    basic_security_settings = gcp.diagflow.CxSecuritySettings("basic_security_settings",
        display_name="dialogflowcx-security-settings",
        location="global",
        purge_data_types=[],
        retention_window_days=7)
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/diagflow"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := diagflow.NewCxSecuritySettings(ctx, "basic_security_settings", &diagflow.CxSecuritySettingsArgs{
    			DisplayName:         pulumi.String("dialogflowcx-security-settings"),
    			Location:            pulumi.String("global"),
    			PurgeDataTypes:      pulumi.StringArray{},
    			RetentionWindowDays: pulumi.Int(7),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Gcp = Pulumi.Gcp;
    
    return await Deployment.RunAsync(() => 
    {
        var basicSecuritySettings = new Gcp.Diagflow.CxSecuritySettings("basic_security_settings", new()
        {
            DisplayName = "dialogflowcx-security-settings",
            Location = "global",
            PurgeDataTypes = new[] {},
            RetentionWindowDays = 7,
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.diagflow.CxSecuritySettings;
    import com.pulumi.gcp.diagflow.CxSecuritySettingsArgs;
    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 basicSecuritySettings = new CxSecuritySettings("basicSecuritySettings", CxSecuritySettingsArgs.builder()
                .displayName("dialogflowcx-security-settings")
                .location("global")
                .purgeDataTypes()
                .retentionWindowDays(7)
                .build());
    
        }
    }
    
    resources:
      basicSecuritySettings:
        type: gcp:diagflow:CxSecuritySettings
        name: basic_security_settings
        properties:
          displayName: dialogflowcx-security-settings
          location: global
          purgeDataTypes: []
          retentionWindowDays: 7
    

    Dialogflowcx Security Settings Full

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const inspect = new gcp.dataloss.PreventionInspectTemplate("inspect", {
        parent: "projects/my-project-name/locations/global",
        displayName: "dialogflowcx-inspect-template",
        inspectConfig: {
            infoTypes: [{
                name: "EMAIL_ADDRESS",
            }],
        },
    });
    const deidentify = new gcp.dataloss.PreventionDeidentifyTemplate("deidentify", {
        parent: "projects/my-project-name/locations/global",
        displayName: "dialogflowcx-deidentify-template",
        deidentifyConfig: {
            infoTypeTransformations: {
                transformations: [{
                    primitiveTransformation: {
                        replaceConfig: {
                            newValue: {
                                stringValue: "[REDACTED]",
                            },
                        },
                    },
                }],
            },
        },
    });
    const bucket = new gcp.storage.Bucket("bucket", {
        name: "dialogflowcx-bucket",
        location: "US",
        uniformBucketLevelAccess: true,
    });
    const basicSecuritySettings = new gcp.diagflow.CxSecuritySettings("basic_security_settings", {
        displayName: "dialogflowcx-security-settings",
        location: "global",
        redactionStrategy: "REDACT_WITH_SERVICE",
        redactionScope: "REDACT_DISK_STORAGE",
        inspectTemplate: inspect.id,
        deidentifyTemplate: deidentify.id,
        purgeDataTypes: ["DIALOGFLOW_HISTORY"],
        audioExportSettings: {
            gcsBucket: bucket.id,
            audioExportPattern: "export",
            enableAudioRedaction: true,
            audioFormat: "OGG",
        },
        insightsExportSettings: {
            enableInsightsExport: true,
        },
        retentionStrategy: "REMOVE_AFTER_CONVERSATION",
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    inspect = gcp.dataloss.PreventionInspectTemplate("inspect",
        parent="projects/my-project-name/locations/global",
        display_name="dialogflowcx-inspect-template",
        inspect_config={
            "info_types": [{
                "name": "EMAIL_ADDRESS",
            }],
        })
    deidentify = gcp.dataloss.PreventionDeidentifyTemplate("deidentify",
        parent="projects/my-project-name/locations/global",
        display_name="dialogflowcx-deidentify-template",
        deidentify_config={
            "info_type_transformations": {
                "transformations": [{
                    "primitive_transformation": {
                        "replace_config": {
                            "new_value": {
                                "string_value": "[REDACTED]",
                            },
                        },
                    },
                }],
            },
        })
    bucket = gcp.storage.Bucket("bucket",
        name="dialogflowcx-bucket",
        location="US",
        uniform_bucket_level_access=True)
    basic_security_settings = gcp.diagflow.CxSecuritySettings("basic_security_settings",
        display_name="dialogflowcx-security-settings",
        location="global",
        redaction_strategy="REDACT_WITH_SERVICE",
        redaction_scope="REDACT_DISK_STORAGE",
        inspect_template=inspect.id,
        deidentify_template=deidentify.id,
        purge_data_types=["DIALOGFLOW_HISTORY"],
        audio_export_settings={
            "gcs_bucket": bucket.id,
            "audio_export_pattern": "export",
            "enable_audio_redaction": True,
            "audio_format": "OGG",
        },
        insights_export_settings={
            "enable_insights_export": True,
        },
        retention_strategy="REMOVE_AFTER_CONVERSATION")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/dataloss"
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/diagflow"
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/storage"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		inspect, err := dataloss.NewPreventionInspectTemplate(ctx, "inspect", &dataloss.PreventionInspectTemplateArgs{
    			Parent:      pulumi.String("projects/my-project-name/locations/global"),
    			DisplayName: pulumi.String("dialogflowcx-inspect-template"),
    			InspectConfig: &dataloss.PreventionInspectTemplateInspectConfigArgs{
    				InfoTypes: dataloss.PreventionInspectTemplateInspectConfigInfoTypeArray{
    					&dataloss.PreventionInspectTemplateInspectConfigInfoTypeArgs{
    						Name: pulumi.String("EMAIL_ADDRESS"),
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		deidentify, err := dataloss.NewPreventionDeidentifyTemplate(ctx, "deidentify", &dataloss.PreventionDeidentifyTemplateArgs{
    			Parent:      pulumi.String("projects/my-project-name/locations/global"),
    			DisplayName: pulumi.String("dialogflowcx-deidentify-template"),
    			DeidentifyConfig: &dataloss.PreventionDeidentifyTemplateDeidentifyConfigArgs{
    				InfoTypeTransformations: &dataloss.PreventionDeidentifyTemplateDeidentifyConfigInfoTypeTransformationsArgs{
    					Transformations: dataloss.PreventionDeidentifyTemplateDeidentifyConfigInfoTypeTransformationsTransformationArray{
    						&dataloss.PreventionDeidentifyTemplateDeidentifyConfigInfoTypeTransformationsTransformationArgs{
    							PrimitiveTransformation: &dataloss.PreventionDeidentifyTemplateDeidentifyConfigInfoTypeTransformationsTransformationPrimitiveTransformationArgs{
    								ReplaceConfig: &dataloss.PreventionDeidentifyTemplateDeidentifyConfigInfoTypeTransformationsTransformationPrimitiveTransformationReplaceConfigArgs{
    									NewValue: &dataloss.PreventionDeidentifyTemplateDeidentifyConfigInfoTypeTransformationsTransformationPrimitiveTransformationReplaceConfigNewValueArgs{
    										StringValue: pulumi.String("[REDACTED]"),
    									},
    								},
    							},
    						},
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		bucket, err := storage.NewBucket(ctx, "bucket", &storage.BucketArgs{
    			Name:                     pulumi.String("dialogflowcx-bucket"),
    			Location:                 pulumi.String("US"),
    			UniformBucketLevelAccess: pulumi.Bool(true),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = diagflow.NewCxSecuritySettings(ctx, "basic_security_settings", &diagflow.CxSecuritySettingsArgs{
    			DisplayName:        pulumi.String("dialogflowcx-security-settings"),
    			Location:           pulumi.String("global"),
    			RedactionStrategy:  pulumi.String("REDACT_WITH_SERVICE"),
    			RedactionScope:     pulumi.String("REDACT_DISK_STORAGE"),
    			InspectTemplate:    inspect.ID(),
    			DeidentifyTemplate: deidentify.ID(),
    			PurgeDataTypes: pulumi.StringArray{
    				pulumi.String("DIALOGFLOW_HISTORY"),
    			},
    			AudioExportSettings: &diagflow.CxSecuritySettingsAudioExportSettingsArgs{
    				GcsBucket:            bucket.ID(),
    				AudioExportPattern:   pulumi.String("export"),
    				EnableAudioRedaction: pulumi.Bool(true),
    				AudioFormat:          pulumi.String("OGG"),
    			},
    			InsightsExportSettings: &diagflow.CxSecuritySettingsInsightsExportSettingsArgs{
    				EnableInsightsExport: pulumi.Bool(true),
    			},
    			RetentionStrategy: pulumi.String("REMOVE_AFTER_CONVERSATION"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Gcp = Pulumi.Gcp;
    
    return await Deployment.RunAsync(() => 
    {
        var inspect = new Gcp.DataLoss.PreventionInspectTemplate("inspect", new()
        {
            Parent = "projects/my-project-name/locations/global",
            DisplayName = "dialogflowcx-inspect-template",
            InspectConfig = new Gcp.DataLoss.Inputs.PreventionInspectTemplateInspectConfigArgs
            {
                InfoTypes = new[]
                {
                    new Gcp.DataLoss.Inputs.PreventionInspectTemplateInspectConfigInfoTypeArgs
                    {
                        Name = "EMAIL_ADDRESS",
                    },
                },
            },
        });
    
        var deidentify = new Gcp.DataLoss.PreventionDeidentifyTemplate("deidentify", new()
        {
            Parent = "projects/my-project-name/locations/global",
            DisplayName = "dialogflowcx-deidentify-template",
            DeidentifyConfig = new Gcp.DataLoss.Inputs.PreventionDeidentifyTemplateDeidentifyConfigArgs
            {
                InfoTypeTransformations = new Gcp.DataLoss.Inputs.PreventionDeidentifyTemplateDeidentifyConfigInfoTypeTransformationsArgs
                {
                    Transformations = new[]
                    {
                        new Gcp.DataLoss.Inputs.PreventionDeidentifyTemplateDeidentifyConfigInfoTypeTransformationsTransformationArgs
                        {
                            PrimitiveTransformation = new Gcp.DataLoss.Inputs.PreventionDeidentifyTemplateDeidentifyConfigInfoTypeTransformationsTransformationPrimitiveTransformationArgs
                            {
                                ReplaceConfig = new Gcp.DataLoss.Inputs.PreventionDeidentifyTemplateDeidentifyConfigInfoTypeTransformationsTransformationPrimitiveTransformationReplaceConfigArgs
                                {
                                    NewValue = new Gcp.DataLoss.Inputs.PreventionDeidentifyTemplateDeidentifyConfigInfoTypeTransformationsTransformationPrimitiveTransformationReplaceConfigNewValueArgs
                                    {
                                        StringValue = "[REDACTED]",
                                    },
                                },
                            },
                        },
                    },
                },
            },
        });
    
        var bucket = new Gcp.Storage.Bucket("bucket", new()
        {
            Name = "dialogflowcx-bucket",
            Location = "US",
            UniformBucketLevelAccess = true,
        });
    
        var basicSecuritySettings = new Gcp.Diagflow.CxSecuritySettings("basic_security_settings", new()
        {
            DisplayName = "dialogflowcx-security-settings",
            Location = "global",
            RedactionStrategy = "REDACT_WITH_SERVICE",
            RedactionScope = "REDACT_DISK_STORAGE",
            InspectTemplate = inspect.Id,
            DeidentifyTemplate = deidentify.Id,
            PurgeDataTypes = new[]
            {
                "DIALOGFLOW_HISTORY",
            },
            AudioExportSettings = new Gcp.Diagflow.Inputs.CxSecuritySettingsAudioExportSettingsArgs
            {
                GcsBucket = bucket.Id,
                AudioExportPattern = "export",
                EnableAudioRedaction = true,
                AudioFormat = "OGG",
            },
            InsightsExportSettings = new Gcp.Diagflow.Inputs.CxSecuritySettingsInsightsExportSettingsArgs
            {
                EnableInsightsExport = true,
            },
            RetentionStrategy = "REMOVE_AFTER_CONVERSATION",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.dataloss.PreventionInspectTemplate;
    import com.pulumi.gcp.dataloss.PreventionInspectTemplateArgs;
    import com.pulumi.gcp.dataloss.inputs.PreventionInspectTemplateInspectConfigArgs;
    import com.pulumi.gcp.dataloss.PreventionDeidentifyTemplate;
    import com.pulumi.gcp.dataloss.PreventionDeidentifyTemplateArgs;
    import com.pulumi.gcp.dataloss.inputs.PreventionDeidentifyTemplateDeidentifyConfigArgs;
    import com.pulumi.gcp.dataloss.inputs.PreventionDeidentifyTemplateDeidentifyConfigInfoTypeTransformationsArgs;
    import com.pulumi.gcp.storage.Bucket;
    import com.pulumi.gcp.storage.BucketArgs;
    import com.pulumi.gcp.diagflow.CxSecuritySettings;
    import com.pulumi.gcp.diagflow.CxSecuritySettingsArgs;
    import com.pulumi.gcp.diagflow.inputs.CxSecuritySettingsAudioExportSettingsArgs;
    import com.pulumi.gcp.diagflow.inputs.CxSecuritySettingsInsightsExportSettingsArgs;
    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 inspect = new PreventionInspectTemplate("inspect", PreventionInspectTemplateArgs.builder()
                .parent("projects/my-project-name/locations/global")
                .displayName("dialogflowcx-inspect-template")
                .inspectConfig(PreventionInspectTemplateInspectConfigArgs.builder()
                    .infoTypes(PreventionInspectTemplateInspectConfigInfoTypeArgs.builder()
                        .name("EMAIL_ADDRESS")
                        .build())
                    .build())
                .build());
    
            var deidentify = new PreventionDeidentifyTemplate("deidentify", PreventionDeidentifyTemplateArgs.builder()
                .parent("projects/my-project-name/locations/global")
                .displayName("dialogflowcx-deidentify-template")
                .deidentifyConfig(PreventionDeidentifyTemplateDeidentifyConfigArgs.builder()
                    .infoTypeTransformations(PreventionDeidentifyTemplateDeidentifyConfigInfoTypeTransformationsArgs.builder()
                        .transformations(PreventionDeidentifyTemplateDeidentifyConfigInfoTypeTransformationsTransformationArgs.builder()
                            .primitiveTransformation(PreventionDeidentifyTemplateDeidentifyConfigInfoTypeTransformationsTransformationPrimitiveTransformationArgs.builder()
                                .replaceConfig(PreventionDeidentifyTemplateDeidentifyConfigInfoTypeTransformationsTransformationPrimitiveTransformationReplaceConfigArgs.builder()
                                    .newValue(PreventionDeidentifyTemplateDeidentifyConfigInfoTypeTransformationsTransformationPrimitiveTransformationReplaceConfigNewValueArgs.builder()
                                        .stringValue("[REDACTED]")
                                        .build())
                                    .build())
                                .build())
                            .build())
                        .build())
                    .build())
                .build());
    
            var bucket = new Bucket("bucket", BucketArgs.builder()
                .name("dialogflowcx-bucket")
                .location("US")
                .uniformBucketLevelAccess(true)
                .build());
    
            var basicSecuritySettings = new CxSecuritySettings("basicSecuritySettings", CxSecuritySettingsArgs.builder()
                .displayName("dialogflowcx-security-settings")
                .location("global")
                .redactionStrategy("REDACT_WITH_SERVICE")
                .redactionScope("REDACT_DISK_STORAGE")
                .inspectTemplate(inspect.id())
                .deidentifyTemplate(deidentify.id())
                .purgeDataTypes("DIALOGFLOW_HISTORY")
                .audioExportSettings(CxSecuritySettingsAudioExportSettingsArgs.builder()
                    .gcsBucket(bucket.id())
                    .audioExportPattern("export")
                    .enableAudioRedaction(true)
                    .audioFormat("OGG")
                    .build())
                .insightsExportSettings(CxSecuritySettingsInsightsExportSettingsArgs.builder()
                    .enableInsightsExport(true)
                    .build())
                .retentionStrategy("REMOVE_AFTER_CONVERSATION")
                .build());
    
        }
    }
    
    resources:
      inspect:
        type: gcp:dataloss:PreventionInspectTemplate
        properties:
          parent: projects/my-project-name/locations/global
          displayName: dialogflowcx-inspect-template
          inspectConfig:
            infoTypes:
              - name: EMAIL_ADDRESS
      deidentify:
        type: gcp:dataloss:PreventionDeidentifyTemplate
        properties:
          parent: projects/my-project-name/locations/global
          displayName: dialogflowcx-deidentify-template
          deidentifyConfig:
            infoTypeTransformations:
              transformations:
                - primitiveTransformation:
                    replaceConfig:
                      newValue:
                        stringValue: '[REDACTED]'
      bucket:
        type: gcp:storage:Bucket
        properties:
          name: dialogflowcx-bucket
          location: US
          uniformBucketLevelAccess: true
      basicSecuritySettings:
        type: gcp:diagflow:CxSecuritySettings
        name: basic_security_settings
        properties:
          displayName: dialogflowcx-security-settings
          location: global
          redactionStrategy: REDACT_WITH_SERVICE
          redactionScope: REDACT_DISK_STORAGE
          inspectTemplate: ${inspect.id}
          deidentifyTemplate: ${deidentify.id}
          purgeDataTypes:
            - DIALOGFLOW_HISTORY
          audioExportSettings:
            gcsBucket: ${bucket.id}
            audioExportPattern: export
            enableAudioRedaction: true
            audioFormat: OGG
          insightsExportSettings:
            enableInsightsExport: true
          retentionStrategy: REMOVE_AFTER_CONVERSATION
    

    Create CxSecuritySettings Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new CxSecuritySettings(name: string, args: CxSecuritySettingsArgs, opts?: CustomResourceOptions);
    @overload
    def CxSecuritySettings(resource_name: str,
                           args: CxSecuritySettingsArgs,
                           opts: Optional[ResourceOptions] = None)
    
    @overload
    def CxSecuritySettings(resource_name: str,
                           opts: Optional[ResourceOptions] = None,
                           display_name: Optional[str] = None,
                           location: Optional[str] = None,
                           audio_export_settings: Optional[CxSecuritySettingsAudioExportSettingsArgs] = None,
                           deidentify_template: Optional[str] = None,
                           insights_export_settings: Optional[CxSecuritySettingsInsightsExportSettingsArgs] = None,
                           inspect_template: Optional[str] = None,
                           project: Optional[str] = None,
                           purge_data_types: Optional[Sequence[str]] = None,
                           redaction_scope: Optional[str] = None,
                           redaction_strategy: Optional[str] = None,
                           retention_strategy: Optional[str] = None,
                           retention_window_days: Optional[int] = None)
    func NewCxSecuritySettings(ctx *Context, name string, args CxSecuritySettingsArgs, opts ...ResourceOption) (*CxSecuritySettings, error)
    public CxSecuritySettings(string name, CxSecuritySettingsArgs args, CustomResourceOptions? opts = null)
    public CxSecuritySettings(String name, CxSecuritySettingsArgs args)
    public CxSecuritySettings(String name, CxSecuritySettingsArgs args, CustomResourceOptions options)
    
    type: gcp:diagflow:CxSecuritySettings
    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 CxSecuritySettingsArgs
    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 CxSecuritySettingsArgs
    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 CxSecuritySettingsArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args CxSecuritySettingsArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args CxSecuritySettingsArgs
    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 cxSecuritySettingsResource = new Gcp.Diagflow.CxSecuritySettings("cxSecuritySettingsResource", new()
    {
        DisplayName = "string",
        Location = "string",
        AudioExportSettings = new Gcp.Diagflow.Inputs.CxSecuritySettingsAudioExportSettingsArgs
        {
            AudioExportPattern = "string",
            AudioFormat = "string",
            EnableAudioRedaction = false,
            GcsBucket = "string",
        },
        DeidentifyTemplate = "string",
        InsightsExportSettings = new Gcp.Diagflow.Inputs.CxSecuritySettingsInsightsExportSettingsArgs
        {
            EnableInsightsExport = false,
        },
        InspectTemplate = "string",
        Project = "string",
        PurgeDataTypes = new[]
        {
            "string",
        },
        RedactionScope = "string",
        RedactionStrategy = "string",
        RetentionStrategy = "string",
        RetentionWindowDays = 0,
    });
    
    example, err := diagflow.NewCxSecuritySettings(ctx, "cxSecuritySettingsResource", &diagflow.CxSecuritySettingsArgs{
    	DisplayName: pulumi.String("string"),
    	Location:    pulumi.String("string"),
    	AudioExportSettings: &diagflow.CxSecuritySettingsAudioExportSettingsArgs{
    		AudioExportPattern:   pulumi.String("string"),
    		AudioFormat:          pulumi.String("string"),
    		EnableAudioRedaction: pulumi.Bool(false),
    		GcsBucket:            pulumi.String("string"),
    	},
    	DeidentifyTemplate: pulumi.String("string"),
    	InsightsExportSettings: &diagflow.CxSecuritySettingsInsightsExportSettingsArgs{
    		EnableInsightsExport: pulumi.Bool(false),
    	},
    	InspectTemplate: pulumi.String("string"),
    	Project:         pulumi.String("string"),
    	PurgeDataTypes: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	RedactionScope:      pulumi.String("string"),
    	RedactionStrategy:   pulumi.String("string"),
    	RetentionStrategy:   pulumi.String("string"),
    	RetentionWindowDays: pulumi.Int(0),
    })
    
    var cxSecuritySettingsResource = new CxSecuritySettings("cxSecuritySettingsResource", CxSecuritySettingsArgs.builder()
        .displayName("string")
        .location("string")
        .audioExportSettings(CxSecuritySettingsAudioExportSettingsArgs.builder()
            .audioExportPattern("string")
            .audioFormat("string")
            .enableAudioRedaction(false)
            .gcsBucket("string")
            .build())
        .deidentifyTemplate("string")
        .insightsExportSettings(CxSecuritySettingsInsightsExportSettingsArgs.builder()
            .enableInsightsExport(false)
            .build())
        .inspectTemplate("string")
        .project("string")
        .purgeDataTypes("string")
        .redactionScope("string")
        .redactionStrategy("string")
        .retentionStrategy("string")
        .retentionWindowDays(0)
        .build());
    
    cx_security_settings_resource = gcp.diagflow.CxSecuritySettings("cxSecuritySettingsResource",
        display_name="string",
        location="string",
        audio_export_settings={
            "audio_export_pattern": "string",
            "audio_format": "string",
            "enable_audio_redaction": False,
            "gcs_bucket": "string",
        },
        deidentify_template="string",
        insights_export_settings={
            "enable_insights_export": False,
        },
        inspect_template="string",
        project="string",
        purge_data_types=["string"],
        redaction_scope="string",
        redaction_strategy="string",
        retention_strategy="string",
        retention_window_days=0)
    
    const cxSecuritySettingsResource = new gcp.diagflow.CxSecuritySettings("cxSecuritySettingsResource", {
        displayName: "string",
        location: "string",
        audioExportSettings: {
            audioExportPattern: "string",
            audioFormat: "string",
            enableAudioRedaction: false,
            gcsBucket: "string",
        },
        deidentifyTemplate: "string",
        insightsExportSettings: {
            enableInsightsExport: false,
        },
        inspectTemplate: "string",
        project: "string",
        purgeDataTypes: ["string"],
        redactionScope: "string",
        redactionStrategy: "string",
        retentionStrategy: "string",
        retentionWindowDays: 0,
    });
    
    type: gcp:diagflow:CxSecuritySettings
    properties:
        audioExportSettings:
            audioExportPattern: string
            audioFormat: string
            enableAudioRedaction: false
            gcsBucket: string
        deidentifyTemplate: string
        displayName: string
        insightsExportSettings:
            enableInsightsExport: false
        inspectTemplate: string
        location: string
        project: string
        purgeDataTypes:
            - string
        redactionScope: string
        redactionStrategy: string
        retentionStrategy: string
        retentionWindowDays: 0
    

    CxSecuritySettings 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 CxSecuritySettings resource accepts the following input properties:

    DisplayName string
    The human-readable name of the security settings, unique within the location.


    Location string
    The location these settings are located in. Settings can only be applied to an agent in the same location. See Available Regions for a list of supported locations.
    AudioExportSettings CxSecuritySettingsAudioExportSettings
    Controls audio export settings for post-conversation analytics when ingesting audio to conversations. If retention_strategy is set to REMOVE_AFTER_CONVERSATION or gcs_bucket is empty, audio export is disabled. If audio export is enabled, audio is recorded and saved to gcs_bucket, subject to retention policy of gcs_bucket. This setting won't effect audio input for implicit sessions via Sessions.DetectIntent. Structure is documented below.
    DeidentifyTemplate string
    DLP deidentify template name. Use this template to define de-identification configuration for the content. If empty, Dialogflow replaces sensitive info with [redacted] text. Note: deidentifyTemplate must be located in the same region as the SecuritySettings. Format: projects//locations//deidentifyTemplates/ OR organizations//locations//deidentifyTemplates/
    InsightsExportSettings CxSecuritySettingsInsightsExportSettings
    Controls conversation exporting settings to Insights after conversation is completed. If retentionStrategy is set to REMOVE_AFTER_CONVERSATION, Insights export is disabled no matter what you configure here. Structure is documented below.
    InspectTemplate string
    DLP inspect template name. Use this template to define inspect base settings. If empty, we use the default DLP inspect config. Note: inspectTemplate must be located in the same region as the SecuritySettings. Format: projects//locations//inspectTemplates/ OR organizations//locations//inspectTemplates/
    Project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    PurgeDataTypes List<string>
    List of types of data to remove when retention settings triggers purge. Each value may be one of: DIALOGFLOW_HISTORY.
    RedactionScope string
    Defines what types of data to redact. If not set, defaults to not redacting any kind of data.

    • REDACT_DISK_STORAGE: On data to be written to disk or similar devices that are capable of holding data even if power is disconnected. This includes data that are temporarily saved on disk. Possible values are: REDACT_DISK_STORAGE.
    RedactionStrategy string
    Defines how we redact data. If not set, defaults to not redacting.

    • REDACT_WITH_SERVICE: Call redaction service to clean up the data to be persisted. Possible values are: REDACT_WITH_SERVICE.
    RetentionStrategy string
    Defines how long we retain persisted data that contains sensitive info. Only one of retention_window_days and retention_strategy may be set.

    • REMOVE_AFTER_CONVERSATION: Removes data when the conversation ends. If there is no conversation explicitly established, a default conversation ends when the corresponding Dialogflow session ends. Possible values are: REMOVE_AFTER_CONVERSATION.
    RetentionWindowDays int
    Retains the data for the specified number of days. User must set a value lower than Dialogflow's default 365d TTL (30 days for Agent Assist traffic), higher value will be ignored and use default. Setting a value higher than that has no effect. A missing value or setting to 0 also means we use default TTL. Only one of retention_window_days and retention_strategy may be set.
    DisplayName string
    The human-readable name of the security settings, unique within the location.


    Location string
    The location these settings are located in. Settings can only be applied to an agent in the same location. See Available Regions for a list of supported locations.
    AudioExportSettings CxSecuritySettingsAudioExportSettingsArgs
    Controls audio export settings for post-conversation analytics when ingesting audio to conversations. If retention_strategy is set to REMOVE_AFTER_CONVERSATION or gcs_bucket is empty, audio export is disabled. If audio export is enabled, audio is recorded and saved to gcs_bucket, subject to retention policy of gcs_bucket. This setting won't effect audio input for implicit sessions via Sessions.DetectIntent. Structure is documented below.
    DeidentifyTemplate string
    DLP deidentify template name. Use this template to define de-identification configuration for the content. If empty, Dialogflow replaces sensitive info with [redacted] text. Note: deidentifyTemplate must be located in the same region as the SecuritySettings. Format: projects//locations//deidentifyTemplates/ OR organizations//locations//deidentifyTemplates/
    InsightsExportSettings CxSecuritySettingsInsightsExportSettingsArgs
    Controls conversation exporting settings to Insights after conversation is completed. If retentionStrategy is set to REMOVE_AFTER_CONVERSATION, Insights export is disabled no matter what you configure here. Structure is documented below.
    InspectTemplate string
    DLP inspect template name. Use this template to define inspect base settings. If empty, we use the default DLP inspect config. Note: inspectTemplate must be located in the same region as the SecuritySettings. Format: projects//locations//inspectTemplates/ OR organizations//locations//inspectTemplates/
    Project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    PurgeDataTypes []string
    List of types of data to remove when retention settings triggers purge. Each value may be one of: DIALOGFLOW_HISTORY.
    RedactionScope string
    Defines what types of data to redact. If not set, defaults to not redacting any kind of data.

    • REDACT_DISK_STORAGE: On data to be written to disk or similar devices that are capable of holding data even if power is disconnected. This includes data that are temporarily saved on disk. Possible values are: REDACT_DISK_STORAGE.
    RedactionStrategy string
    Defines how we redact data. If not set, defaults to not redacting.

    • REDACT_WITH_SERVICE: Call redaction service to clean up the data to be persisted. Possible values are: REDACT_WITH_SERVICE.
    RetentionStrategy string
    Defines how long we retain persisted data that contains sensitive info. Only one of retention_window_days and retention_strategy may be set.

    • REMOVE_AFTER_CONVERSATION: Removes data when the conversation ends. If there is no conversation explicitly established, a default conversation ends when the corresponding Dialogflow session ends. Possible values are: REMOVE_AFTER_CONVERSATION.
    RetentionWindowDays int
    Retains the data for the specified number of days. User must set a value lower than Dialogflow's default 365d TTL (30 days for Agent Assist traffic), higher value will be ignored and use default. Setting a value higher than that has no effect. A missing value or setting to 0 also means we use default TTL. Only one of retention_window_days and retention_strategy may be set.
    displayName String
    The human-readable name of the security settings, unique within the location.


    location String
    The location these settings are located in. Settings can only be applied to an agent in the same location. See Available Regions for a list of supported locations.
    audioExportSettings CxSecuritySettingsAudioExportSettings
    Controls audio export settings for post-conversation analytics when ingesting audio to conversations. If retention_strategy is set to REMOVE_AFTER_CONVERSATION or gcs_bucket is empty, audio export is disabled. If audio export is enabled, audio is recorded and saved to gcs_bucket, subject to retention policy of gcs_bucket. This setting won't effect audio input for implicit sessions via Sessions.DetectIntent. Structure is documented below.
    deidentifyTemplate String
    DLP deidentify template name. Use this template to define de-identification configuration for the content. If empty, Dialogflow replaces sensitive info with [redacted] text. Note: deidentifyTemplate must be located in the same region as the SecuritySettings. Format: projects//locations//deidentifyTemplates/ OR organizations//locations//deidentifyTemplates/
    insightsExportSettings CxSecuritySettingsInsightsExportSettings
    Controls conversation exporting settings to Insights after conversation is completed. If retentionStrategy is set to REMOVE_AFTER_CONVERSATION, Insights export is disabled no matter what you configure here. Structure is documented below.
    inspectTemplate String
    DLP inspect template name. Use this template to define inspect base settings. If empty, we use the default DLP inspect config. Note: inspectTemplate must be located in the same region as the SecuritySettings. Format: projects//locations//inspectTemplates/ OR organizations//locations//inspectTemplates/
    project String
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    purgeDataTypes List<String>
    List of types of data to remove when retention settings triggers purge. Each value may be one of: DIALOGFLOW_HISTORY.
    redactionScope String
    Defines what types of data to redact. If not set, defaults to not redacting any kind of data.

    • REDACT_DISK_STORAGE: On data to be written to disk or similar devices that are capable of holding data even if power is disconnected. This includes data that are temporarily saved on disk. Possible values are: REDACT_DISK_STORAGE.
    redactionStrategy String
    Defines how we redact data. If not set, defaults to not redacting.

    • REDACT_WITH_SERVICE: Call redaction service to clean up the data to be persisted. Possible values are: REDACT_WITH_SERVICE.
    retentionStrategy String
    Defines how long we retain persisted data that contains sensitive info. Only one of retention_window_days and retention_strategy may be set.

    • REMOVE_AFTER_CONVERSATION: Removes data when the conversation ends. If there is no conversation explicitly established, a default conversation ends when the corresponding Dialogflow session ends. Possible values are: REMOVE_AFTER_CONVERSATION.
    retentionWindowDays Integer
    Retains the data for the specified number of days. User must set a value lower than Dialogflow's default 365d TTL (30 days for Agent Assist traffic), higher value will be ignored and use default. Setting a value higher than that has no effect. A missing value or setting to 0 also means we use default TTL. Only one of retention_window_days and retention_strategy may be set.
    displayName string
    The human-readable name of the security settings, unique within the location.


    location string
    The location these settings are located in. Settings can only be applied to an agent in the same location. See Available Regions for a list of supported locations.
    audioExportSettings CxSecuritySettingsAudioExportSettings
    Controls audio export settings for post-conversation analytics when ingesting audio to conversations. If retention_strategy is set to REMOVE_AFTER_CONVERSATION or gcs_bucket is empty, audio export is disabled. If audio export is enabled, audio is recorded and saved to gcs_bucket, subject to retention policy of gcs_bucket. This setting won't effect audio input for implicit sessions via Sessions.DetectIntent. Structure is documented below.
    deidentifyTemplate string
    DLP deidentify template name. Use this template to define de-identification configuration for the content. If empty, Dialogflow replaces sensitive info with [redacted] text. Note: deidentifyTemplate must be located in the same region as the SecuritySettings. Format: projects//locations//deidentifyTemplates/ OR organizations//locations//deidentifyTemplates/
    insightsExportSettings CxSecuritySettingsInsightsExportSettings
    Controls conversation exporting settings to Insights after conversation is completed. If retentionStrategy is set to REMOVE_AFTER_CONVERSATION, Insights export is disabled no matter what you configure here. Structure is documented below.
    inspectTemplate string
    DLP inspect template name. Use this template to define inspect base settings. If empty, we use the default DLP inspect config. Note: inspectTemplate must be located in the same region as the SecuritySettings. Format: projects//locations//inspectTemplates/ OR organizations//locations//inspectTemplates/
    project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    purgeDataTypes string[]
    List of types of data to remove when retention settings triggers purge. Each value may be one of: DIALOGFLOW_HISTORY.
    redactionScope string
    Defines what types of data to redact. If not set, defaults to not redacting any kind of data.

    • REDACT_DISK_STORAGE: On data to be written to disk or similar devices that are capable of holding data even if power is disconnected. This includes data that are temporarily saved on disk. Possible values are: REDACT_DISK_STORAGE.
    redactionStrategy string
    Defines how we redact data. If not set, defaults to not redacting.

    • REDACT_WITH_SERVICE: Call redaction service to clean up the data to be persisted. Possible values are: REDACT_WITH_SERVICE.
    retentionStrategy string
    Defines how long we retain persisted data that contains sensitive info. Only one of retention_window_days and retention_strategy may be set.

    • REMOVE_AFTER_CONVERSATION: Removes data when the conversation ends. If there is no conversation explicitly established, a default conversation ends when the corresponding Dialogflow session ends. Possible values are: REMOVE_AFTER_CONVERSATION.
    retentionWindowDays number
    Retains the data for the specified number of days. User must set a value lower than Dialogflow's default 365d TTL (30 days for Agent Assist traffic), higher value will be ignored and use default. Setting a value higher than that has no effect. A missing value or setting to 0 also means we use default TTL. Only one of retention_window_days and retention_strategy may be set.
    display_name str
    The human-readable name of the security settings, unique within the location.


    location str
    The location these settings are located in. Settings can only be applied to an agent in the same location. See Available Regions for a list of supported locations.
    audio_export_settings CxSecuritySettingsAudioExportSettingsArgs
    Controls audio export settings for post-conversation analytics when ingesting audio to conversations. If retention_strategy is set to REMOVE_AFTER_CONVERSATION or gcs_bucket is empty, audio export is disabled. If audio export is enabled, audio is recorded and saved to gcs_bucket, subject to retention policy of gcs_bucket. This setting won't effect audio input for implicit sessions via Sessions.DetectIntent. Structure is documented below.
    deidentify_template str
    DLP deidentify template name. Use this template to define de-identification configuration for the content. If empty, Dialogflow replaces sensitive info with [redacted] text. Note: deidentifyTemplate must be located in the same region as the SecuritySettings. Format: projects//locations//deidentifyTemplates/ OR organizations//locations//deidentifyTemplates/
    insights_export_settings CxSecuritySettingsInsightsExportSettingsArgs
    Controls conversation exporting settings to Insights after conversation is completed. If retentionStrategy is set to REMOVE_AFTER_CONVERSATION, Insights export is disabled no matter what you configure here. Structure is documented below.
    inspect_template str
    DLP inspect template name. Use this template to define inspect base settings. If empty, we use the default DLP inspect config. Note: inspectTemplate must be located in the same region as the SecuritySettings. Format: projects//locations//inspectTemplates/ OR organizations//locations//inspectTemplates/
    project str
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    purge_data_types Sequence[str]
    List of types of data to remove when retention settings triggers purge. Each value may be one of: DIALOGFLOW_HISTORY.
    redaction_scope str
    Defines what types of data to redact. If not set, defaults to not redacting any kind of data.

    • REDACT_DISK_STORAGE: On data to be written to disk or similar devices that are capable of holding data even if power is disconnected. This includes data that are temporarily saved on disk. Possible values are: REDACT_DISK_STORAGE.
    redaction_strategy str
    Defines how we redact data. If not set, defaults to not redacting.

    • REDACT_WITH_SERVICE: Call redaction service to clean up the data to be persisted. Possible values are: REDACT_WITH_SERVICE.
    retention_strategy str
    Defines how long we retain persisted data that contains sensitive info. Only one of retention_window_days and retention_strategy may be set.

    • REMOVE_AFTER_CONVERSATION: Removes data when the conversation ends. If there is no conversation explicitly established, a default conversation ends when the corresponding Dialogflow session ends. Possible values are: REMOVE_AFTER_CONVERSATION.
    retention_window_days int
    Retains the data for the specified number of days. User must set a value lower than Dialogflow's default 365d TTL (30 days for Agent Assist traffic), higher value will be ignored and use default. Setting a value higher than that has no effect. A missing value or setting to 0 also means we use default TTL. Only one of retention_window_days and retention_strategy may be set.
    displayName String
    The human-readable name of the security settings, unique within the location.


    location String
    The location these settings are located in. Settings can only be applied to an agent in the same location. See Available Regions for a list of supported locations.
    audioExportSettings Property Map
    Controls audio export settings for post-conversation analytics when ingesting audio to conversations. If retention_strategy is set to REMOVE_AFTER_CONVERSATION or gcs_bucket is empty, audio export is disabled. If audio export is enabled, audio is recorded and saved to gcs_bucket, subject to retention policy of gcs_bucket. This setting won't effect audio input for implicit sessions via Sessions.DetectIntent. Structure is documented below.
    deidentifyTemplate String
    DLP deidentify template name. Use this template to define de-identification configuration for the content. If empty, Dialogflow replaces sensitive info with [redacted] text. Note: deidentifyTemplate must be located in the same region as the SecuritySettings. Format: projects//locations//deidentifyTemplates/ OR organizations//locations//deidentifyTemplates/
    insightsExportSettings Property Map
    Controls conversation exporting settings to Insights after conversation is completed. If retentionStrategy is set to REMOVE_AFTER_CONVERSATION, Insights export is disabled no matter what you configure here. Structure is documented below.
    inspectTemplate String
    DLP inspect template name. Use this template to define inspect base settings. If empty, we use the default DLP inspect config. Note: inspectTemplate must be located in the same region as the SecuritySettings. Format: projects//locations//inspectTemplates/ OR organizations//locations//inspectTemplates/
    project String
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    purgeDataTypes List<String>
    List of types of data to remove when retention settings triggers purge. Each value may be one of: DIALOGFLOW_HISTORY.
    redactionScope String
    Defines what types of data to redact. If not set, defaults to not redacting any kind of data.

    • REDACT_DISK_STORAGE: On data to be written to disk or similar devices that are capable of holding data even if power is disconnected. This includes data that are temporarily saved on disk. Possible values are: REDACT_DISK_STORAGE.
    redactionStrategy String
    Defines how we redact data. If not set, defaults to not redacting.

    • REDACT_WITH_SERVICE: Call redaction service to clean up the data to be persisted. Possible values are: REDACT_WITH_SERVICE.
    retentionStrategy String
    Defines how long we retain persisted data that contains sensitive info. Only one of retention_window_days and retention_strategy may be set.

    • REMOVE_AFTER_CONVERSATION: Removes data when the conversation ends. If there is no conversation explicitly established, a default conversation ends when the corresponding Dialogflow session ends. Possible values are: REMOVE_AFTER_CONVERSATION.
    retentionWindowDays Number
    Retains the data for the specified number of days. User must set a value lower than Dialogflow's default 365d TTL (30 days for Agent Assist traffic), higher value will be ignored and use default. Setting a value higher than that has no effect. A missing value or setting to 0 also means we use default TTL. Only one of retention_window_days and retention_strategy may be set.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the CxSecuritySettings resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    Name string
    The unique identifier of the settings. Format: projects//locations//securitySettings/.
    Id string
    The provider-assigned unique ID for this managed resource.
    Name string
    The unique identifier of the settings. Format: projects//locations//securitySettings/.
    id String
    The provider-assigned unique ID for this managed resource.
    name String
    The unique identifier of the settings. Format: projects//locations//securitySettings/.
    id string
    The provider-assigned unique ID for this managed resource.
    name string
    The unique identifier of the settings. Format: projects//locations//securitySettings/.
    id str
    The provider-assigned unique ID for this managed resource.
    name str
    The unique identifier of the settings. Format: projects//locations//securitySettings/.
    id String
    The provider-assigned unique ID for this managed resource.
    name String
    The unique identifier of the settings. Format: projects//locations//securitySettings/.

    Look up Existing CxSecuritySettings Resource

    Get an existing CxSecuritySettings 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?: CxSecuritySettingsState, opts?: CustomResourceOptions): CxSecuritySettings
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            audio_export_settings: Optional[CxSecuritySettingsAudioExportSettingsArgs] = None,
            deidentify_template: Optional[str] = None,
            display_name: Optional[str] = None,
            insights_export_settings: Optional[CxSecuritySettingsInsightsExportSettingsArgs] = None,
            inspect_template: Optional[str] = None,
            location: Optional[str] = None,
            name: Optional[str] = None,
            project: Optional[str] = None,
            purge_data_types: Optional[Sequence[str]] = None,
            redaction_scope: Optional[str] = None,
            redaction_strategy: Optional[str] = None,
            retention_strategy: Optional[str] = None,
            retention_window_days: Optional[int] = None) -> CxSecuritySettings
    func GetCxSecuritySettings(ctx *Context, name string, id IDInput, state *CxSecuritySettingsState, opts ...ResourceOption) (*CxSecuritySettings, error)
    public static CxSecuritySettings Get(string name, Input<string> id, CxSecuritySettingsState? state, CustomResourceOptions? opts = null)
    public static CxSecuritySettings get(String name, Output<String> id, CxSecuritySettingsState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    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.
    The following state arguments are supported:
    AudioExportSettings CxSecuritySettingsAudioExportSettings
    Controls audio export settings for post-conversation analytics when ingesting audio to conversations. If retention_strategy is set to REMOVE_AFTER_CONVERSATION or gcs_bucket is empty, audio export is disabled. If audio export is enabled, audio is recorded and saved to gcs_bucket, subject to retention policy of gcs_bucket. This setting won't effect audio input for implicit sessions via Sessions.DetectIntent. Structure is documented below.
    DeidentifyTemplate string
    DLP deidentify template name. Use this template to define de-identification configuration for the content. If empty, Dialogflow replaces sensitive info with [redacted] text. Note: deidentifyTemplate must be located in the same region as the SecuritySettings. Format: projects//locations//deidentifyTemplates/ OR organizations//locations//deidentifyTemplates/
    DisplayName string
    The human-readable name of the security settings, unique within the location.


    InsightsExportSettings CxSecuritySettingsInsightsExportSettings
    Controls conversation exporting settings to Insights after conversation is completed. If retentionStrategy is set to REMOVE_AFTER_CONVERSATION, Insights export is disabled no matter what you configure here. Structure is documented below.
    InspectTemplate string
    DLP inspect template name. Use this template to define inspect base settings. If empty, we use the default DLP inspect config. Note: inspectTemplate must be located in the same region as the SecuritySettings. Format: projects//locations//inspectTemplates/ OR organizations//locations//inspectTemplates/
    Location string
    The location these settings are located in. Settings can only be applied to an agent in the same location. See Available Regions for a list of supported locations.
    Name string
    The unique identifier of the settings. Format: projects//locations//securitySettings/.
    Project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    PurgeDataTypes List<string>
    List of types of data to remove when retention settings triggers purge. Each value may be one of: DIALOGFLOW_HISTORY.
    RedactionScope string
    Defines what types of data to redact. If not set, defaults to not redacting any kind of data.

    • REDACT_DISK_STORAGE: On data to be written to disk or similar devices that are capable of holding data even if power is disconnected. This includes data that are temporarily saved on disk. Possible values are: REDACT_DISK_STORAGE.
    RedactionStrategy string
    Defines how we redact data. If not set, defaults to not redacting.

    • REDACT_WITH_SERVICE: Call redaction service to clean up the data to be persisted. Possible values are: REDACT_WITH_SERVICE.
    RetentionStrategy string
    Defines how long we retain persisted data that contains sensitive info. Only one of retention_window_days and retention_strategy may be set.

    • REMOVE_AFTER_CONVERSATION: Removes data when the conversation ends. If there is no conversation explicitly established, a default conversation ends when the corresponding Dialogflow session ends. Possible values are: REMOVE_AFTER_CONVERSATION.
    RetentionWindowDays int
    Retains the data for the specified number of days. User must set a value lower than Dialogflow's default 365d TTL (30 days for Agent Assist traffic), higher value will be ignored and use default. Setting a value higher than that has no effect. A missing value or setting to 0 also means we use default TTL. Only one of retention_window_days and retention_strategy may be set.
    AudioExportSettings CxSecuritySettingsAudioExportSettingsArgs
    Controls audio export settings for post-conversation analytics when ingesting audio to conversations. If retention_strategy is set to REMOVE_AFTER_CONVERSATION or gcs_bucket is empty, audio export is disabled. If audio export is enabled, audio is recorded and saved to gcs_bucket, subject to retention policy of gcs_bucket. This setting won't effect audio input for implicit sessions via Sessions.DetectIntent. Structure is documented below.
    DeidentifyTemplate string
    DLP deidentify template name. Use this template to define de-identification configuration for the content. If empty, Dialogflow replaces sensitive info with [redacted] text. Note: deidentifyTemplate must be located in the same region as the SecuritySettings. Format: projects//locations//deidentifyTemplates/ OR organizations//locations//deidentifyTemplates/
    DisplayName string
    The human-readable name of the security settings, unique within the location.


    InsightsExportSettings CxSecuritySettingsInsightsExportSettingsArgs
    Controls conversation exporting settings to Insights after conversation is completed. If retentionStrategy is set to REMOVE_AFTER_CONVERSATION, Insights export is disabled no matter what you configure here. Structure is documented below.
    InspectTemplate string
    DLP inspect template name. Use this template to define inspect base settings. If empty, we use the default DLP inspect config. Note: inspectTemplate must be located in the same region as the SecuritySettings. Format: projects//locations//inspectTemplates/ OR organizations//locations//inspectTemplates/
    Location string
    The location these settings are located in. Settings can only be applied to an agent in the same location. See Available Regions for a list of supported locations.
    Name string
    The unique identifier of the settings. Format: projects//locations//securitySettings/.
    Project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    PurgeDataTypes []string
    List of types of data to remove when retention settings triggers purge. Each value may be one of: DIALOGFLOW_HISTORY.
    RedactionScope string
    Defines what types of data to redact. If not set, defaults to not redacting any kind of data.

    • REDACT_DISK_STORAGE: On data to be written to disk or similar devices that are capable of holding data even if power is disconnected. This includes data that are temporarily saved on disk. Possible values are: REDACT_DISK_STORAGE.
    RedactionStrategy string
    Defines how we redact data. If not set, defaults to not redacting.

    • REDACT_WITH_SERVICE: Call redaction service to clean up the data to be persisted. Possible values are: REDACT_WITH_SERVICE.
    RetentionStrategy string
    Defines how long we retain persisted data that contains sensitive info. Only one of retention_window_days and retention_strategy may be set.

    • REMOVE_AFTER_CONVERSATION: Removes data when the conversation ends. If there is no conversation explicitly established, a default conversation ends when the corresponding Dialogflow session ends. Possible values are: REMOVE_AFTER_CONVERSATION.
    RetentionWindowDays int
    Retains the data for the specified number of days. User must set a value lower than Dialogflow's default 365d TTL (30 days for Agent Assist traffic), higher value will be ignored and use default. Setting a value higher than that has no effect. A missing value or setting to 0 also means we use default TTL. Only one of retention_window_days and retention_strategy may be set.
    audioExportSettings CxSecuritySettingsAudioExportSettings
    Controls audio export settings for post-conversation analytics when ingesting audio to conversations. If retention_strategy is set to REMOVE_AFTER_CONVERSATION or gcs_bucket is empty, audio export is disabled. If audio export is enabled, audio is recorded and saved to gcs_bucket, subject to retention policy of gcs_bucket. This setting won't effect audio input for implicit sessions via Sessions.DetectIntent. Structure is documented below.
    deidentifyTemplate String
    DLP deidentify template name. Use this template to define de-identification configuration for the content. If empty, Dialogflow replaces sensitive info with [redacted] text. Note: deidentifyTemplate must be located in the same region as the SecuritySettings. Format: projects//locations//deidentifyTemplates/ OR organizations//locations//deidentifyTemplates/
    displayName String
    The human-readable name of the security settings, unique within the location.


    insightsExportSettings CxSecuritySettingsInsightsExportSettings
    Controls conversation exporting settings to Insights after conversation is completed. If retentionStrategy is set to REMOVE_AFTER_CONVERSATION, Insights export is disabled no matter what you configure here. Structure is documented below.
    inspectTemplate String
    DLP inspect template name. Use this template to define inspect base settings. If empty, we use the default DLP inspect config. Note: inspectTemplate must be located in the same region as the SecuritySettings. Format: projects//locations//inspectTemplates/ OR organizations//locations//inspectTemplates/
    location String
    The location these settings are located in. Settings can only be applied to an agent in the same location. See Available Regions for a list of supported locations.
    name String
    The unique identifier of the settings. Format: projects//locations//securitySettings/.
    project String
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    purgeDataTypes List<String>
    List of types of data to remove when retention settings triggers purge. Each value may be one of: DIALOGFLOW_HISTORY.
    redactionScope String
    Defines what types of data to redact. If not set, defaults to not redacting any kind of data.

    • REDACT_DISK_STORAGE: On data to be written to disk or similar devices that are capable of holding data even if power is disconnected. This includes data that are temporarily saved on disk. Possible values are: REDACT_DISK_STORAGE.
    redactionStrategy String
    Defines how we redact data. If not set, defaults to not redacting.

    • REDACT_WITH_SERVICE: Call redaction service to clean up the data to be persisted. Possible values are: REDACT_WITH_SERVICE.
    retentionStrategy String
    Defines how long we retain persisted data that contains sensitive info. Only one of retention_window_days and retention_strategy may be set.

    • REMOVE_AFTER_CONVERSATION: Removes data when the conversation ends. If there is no conversation explicitly established, a default conversation ends when the corresponding Dialogflow session ends. Possible values are: REMOVE_AFTER_CONVERSATION.
    retentionWindowDays Integer
    Retains the data for the specified number of days. User must set a value lower than Dialogflow's default 365d TTL (30 days for Agent Assist traffic), higher value will be ignored and use default. Setting a value higher than that has no effect. A missing value or setting to 0 also means we use default TTL. Only one of retention_window_days and retention_strategy may be set.
    audioExportSettings CxSecuritySettingsAudioExportSettings
    Controls audio export settings for post-conversation analytics when ingesting audio to conversations. If retention_strategy is set to REMOVE_AFTER_CONVERSATION or gcs_bucket is empty, audio export is disabled. If audio export is enabled, audio is recorded and saved to gcs_bucket, subject to retention policy of gcs_bucket. This setting won't effect audio input for implicit sessions via Sessions.DetectIntent. Structure is documented below.
    deidentifyTemplate string
    DLP deidentify template name. Use this template to define de-identification configuration for the content. If empty, Dialogflow replaces sensitive info with [redacted] text. Note: deidentifyTemplate must be located in the same region as the SecuritySettings. Format: projects//locations//deidentifyTemplates/ OR organizations//locations//deidentifyTemplates/
    displayName string
    The human-readable name of the security settings, unique within the location.


    insightsExportSettings CxSecuritySettingsInsightsExportSettings
    Controls conversation exporting settings to Insights after conversation is completed. If retentionStrategy is set to REMOVE_AFTER_CONVERSATION, Insights export is disabled no matter what you configure here. Structure is documented below.
    inspectTemplate string
    DLP inspect template name. Use this template to define inspect base settings. If empty, we use the default DLP inspect config. Note: inspectTemplate must be located in the same region as the SecuritySettings. Format: projects//locations//inspectTemplates/ OR organizations//locations//inspectTemplates/
    location string
    The location these settings are located in. Settings can only be applied to an agent in the same location. See Available Regions for a list of supported locations.
    name string
    The unique identifier of the settings. Format: projects//locations//securitySettings/.
    project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    purgeDataTypes string[]
    List of types of data to remove when retention settings triggers purge. Each value may be one of: DIALOGFLOW_HISTORY.
    redactionScope string
    Defines what types of data to redact. If not set, defaults to not redacting any kind of data.

    • REDACT_DISK_STORAGE: On data to be written to disk or similar devices that are capable of holding data even if power is disconnected. This includes data that are temporarily saved on disk. Possible values are: REDACT_DISK_STORAGE.
    redactionStrategy string
    Defines how we redact data. If not set, defaults to not redacting.

    • REDACT_WITH_SERVICE: Call redaction service to clean up the data to be persisted. Possible values are: REDACT_WITH_SERVICE.
    retentionStrategy string
    Defines how long we retain persisted data that contains sensitive info. Only one of retention_window_days and retention_strategy may be set.

    • REMOVE_AFTER_CONVERSATION: Removes data when the conversation ends. If there is no conversation explicitly established, a default conversation ends when the corresponding Dialogflow session ends. Possible values are: REMOVE_AFTER_CONVERSATION.
    retentionWindowDays number
    Retains the data for the specified number of days. User must set a value lower than Dialogflow's default 365d TTL (30 days for Agent Assist traffic), higher value will be ignored and use default. Setting a value higher than that has no effect. A missing value or setting to 0 also means we use default TTL. Only one of retention_window_days and retention_strategy may be set.
    audio_export_settings CxSecuritySettingsAudioExportSettingsArgs
    Controls audio export settings for post-conversation analytics when ingesting audio to conversations. If retention_strategy is set to REMOVE_AFTER_CONVERSATION or gcs_bucket is empty, audio export is disabled. If audio export is enabled, audio is recorded and saved to gcs_bucket, subject to retention policy of gcs_bucket. This setting won't effect audio input for implicit sessions via Sessions.DetectIntent. Structure is documented below.
    deidentify_template str
    DLP deidentify template name. Use this template to define de-identification configuration for the content. If empty, Dialogflow replaces sensitive info with [redacted] text. Note: deidentifyTemplate must be located in the same region as the SecuritySettings. Format: projects//locations//deidentifyTemplates/ OR organizations//locations//deidentifyTemplates/
    display_name str
    The human-readable name of the security settings, unique within the location.


    insights_export_settings CxSecuritySettingsInsightsExportSettingsArgs
    Controls conversation exporting settings to Insights after conversation is completed. If retentionStrategy is set to REMOVE_AFTER_CONVERSATION, Insights export is disabled no matter what you configure here. Structure is documented below.
    inspect_template str
    DLP inspect template name. Use this template to define inspect base settings. If empty, we use the default DLP inspect config. Note: inspectTemplate must be located in the same region as the SecuritySettings. Format: projects//locations//inspectTemplates/ OR organizations//locations//inspectTemplates/
    location str
    The location these settings are located in. Settings can only be applied to an agent in the same location. See Available Regions for a list of supported locations.
    name str
    The unique identifier of the settings. Format: projects//locations//securitySettings/.
    project str
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    purge_data_types Sequence[str]
    List of types of data to remove when retention settings triggers purge. Each value may be one of: DIALOGFLOW_HISTORY.
    redaction_scope str
    Defines what types of data to redact. If not set, defaults to not redacting any kind of data.

    • REDACT_DISK_STORAGE: On data to be written to disk or similar devices that are capable of holding data even if power is disconnected. This includes data that are temporarily saved on disk. Possible values are: REDACT_DISK_STORAGE.
    redaction_strategy str
    Defines how we redact data. If not set, defaults to not redacting.

    • REDACT_WITH_SERVICE: Call redaction service to clean up the data to be persisted. Possible values are: REDACT_WITH_SERVICE.
    retention_strategy str
    Defines how long we retain persisted data that contains sensitive info. Only one of retention_window_days and retention_strategy may be set.

    • REMOVE_AFTER_CONVERSATION: Removes data when the conversation ends. If there is no conversation explicitly established, a default conversation ends when the corresponding Dialogflow session ends. Possible values are: REMOVE_AFTER_CONVERSATION.
    retention_window_days int
    Retains the data for the specified number of days. User must set a value lower than Dialogflow's default 365d TTL (30 days for Agent Assist traffic), higher value will be ignored and use default. Setting a value higher than that has no effect. A missing value or setting to 0 also means we use default TTL. Only one of retention_window_days and retention_strategy may be set.
    audioExportSettings Property Map
    Controls audio export settings for post-conversation analytics when ingesting audio to conversations. If retention_strategy is set to REMOVE_AFTER_CONVERSATION or gcs_bucket is empty, audio export is disabled. If audio export is enabled, audio is recorded and saved to gcs_bucket, subject to retention policy of gcs_bucket. This setting won't effect audio input for implicit sessions via Sessions.DetectIntent. Structure is documented below.
    deidentifyTemplate String
    DLP deidentify template name. Use this template to define de-identification configuration for the content. If empty, Dialogflow replaces sensitive info with [redacted] text. Note: deidentifyTemplate must be located in the same region as the SecuritySettings. Format: projects//locations//deidentifyTemplates/ OR organizations//locations//deidentifyTemplates/
    displayName String
    The human-readable name of the security settings, unique within the location.


    insightsExportSettings Property Map
    Controls conversation exporting settings to Insights after conversation is completed. If retentionStrategy is set to REMOVE_AFTER_CONVERSATION, Insights export is disabled no matter what you configure here. Structure is documented below.
    inspectTemplate String
    DLP inspect template name. Use this template to define inspect base settings. If empty, we use the default DLP inspect config. Note: inspectTemplate must be located in the same region as the SecuritySettings. Format: projects//locations//inspectTemplates/ OR organizations//locations//inspectTemplates/
    location String
    The location these settings are located in. Settings can only be applied to an agent in the same location. See Available Regions for a list of supported locations.
    name String
    The unique identifier of the settings. Format: projects//locations//securitySettings/.
    project String
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    purgeDataTypes List<String>
    List of types of data to remove when retention settings triggers purge. Each value may be one of: DIALOGFLOW_HISTORY.
    redactionScope String
    Defines what types of data to redact. If not set, defaults to not redacting any kind of data.

    • REDACT_DISK_STORAGE: On data to be written to disk or similar devices that are capable of holding data even if power is disconnected. This includes data that are temporarily saved on disk. Possible values are: REDACT_DISK_STORAGE.
    redactionStrategy String
    Defines how we redact data. If not set, defaults to not redacting.

    • REDACT_WITH_SERVICE: Call redaction service to clean up the data to be persisted. Possible values are: REDACT_WITH_SERVICE.
    retentionStrategy String
    Defines how long we retain persisted data that contains sensitive info. Only one of retention_window_days and retention_strategy may be set.

    • REMOVE_AFTER_CONVERSATION: Removes data when the conversation ends. If there is no conversation explicitly established, a default conversation ends when the corresponding Dialogflow session ends. Possible values are: REMOVE_AFTER_CONVERSATION.
    retentionWindowDays Number
    Retains the data for the specified number of days. User must set a value lower than Dialogflow's default 365d TTL (30 days for Agent Assist traffic), higher value will be ignored and use default. Setting a value higher than that has no effect. A missing value or setting to 0 also means we use default TTL. Only one of retention_window_days and retention_strategy may be set.

    Supporting Types

    CxSecuritySettingsAudioExportSettings, CxSecuritySettingsAudioExportSettingsArgs

    AudioExportPattern string
    Filename pattern for exported audio.
    AudioFormat string
    File format for exported audio file. Currently only in telephony recordings.

    • MULAW: G.711 mu-law PCM with 8kHz sample rate.
    • MP3: MP3 file format.
    • OGG: OGG Vorbis. Possible values are: MULAW, MP3, OGG.
    EnableAudioRedaction bool
    Enable audio redaction if it is true.
    GcsBucket string
    Cloud Storage bucket to export audio record to. Setting this field would grant the Storage Object Creator role to the Dialogflow Service Agent. API caller that tries to modify this field should have the permission of storage.buckets.setIamPolicy.
    AudioExportPattern string
    Filename pattern for exported audio.
    AudioFormat string
    File format for exported audio file. Currently only in telephony recordings.

    • MULAW: G.711 mu-law PCM with 8kHz sample rate.
    • MP3: MP3 file format.
    • OGG: OGG Vorbis. Possible values are: MULAW, MP3, OGG.
    EnableAudioRedaction bool
    Enable audio redaction if it is true.
    GcsBucket string
    Cloud Storage bucket to export audio record to. Setting this field would grant the Storage Object Creator role to the Dialogflow Service Agent. API caller that tries to modify this field should have the permission of storage.buckets.setIamPolicy.
    audioExportPattern String
    Filename pattern for exported audio.
    audioFormat String
    File format for exported audio file. Currently only in telephony recordings.

    • MULAW: G.711 mu-law PCM with 8kHz sample rate.
    • MP3: MP3 file format.
    • OGG: OGG Vorbis. Possible values are: MULAW, MP3, OGG.
    enableAudioRedaction Boolean
    Enable audio redaction if it is true.
    gcsBucket String
    Cloud Storage bucket to export audio record to. Setting this field would grant the Storage Object Creator role to the Dialogflow Service Agent. API caller that tries to modify this field should have the permission of storage.buckets.setIamPolicy.
    audioExportPattern string
    Filename pattern for exported audio.
    audioFormat string
    File format for exported audio file. Currently only in telephony recordings.

    • MULAW: G.711 mu-law PCM with 8kHz sample rate.
    • MP3: MP3 file format.
    • OGG: OGG Vorbis. Possible values are: MULAW, MP3, OGG.
    enableAudioRedaction boolean
    Enable audio redaction if it is true.
    gcsBucket string
    Cloud Storage bucket to export audio record to. Setting this field would grant the Storage Object Creator role to the Dialogflow Service Agent. API caller that tries to modify this field should have the permission of storage.buckets.setIamPolicy.
    audio_export_pattern str
    Filename pattern for exported audio.
    audio_format str
    File format for exported audio file. Currently only in telephony recordings.

    • MULAW: G.711 mu-law PCM with 8kHz sample rate.
    • MP3: MP3 file format.
    • OGG: OGG Vorbis. Possible values are: MULAW, MP3, OGG.
    enable_audio_redaction bool
    Enable audio redaction if it is true.
    gcs_bucket str
    Cloud Storage bucket to export audio record to. Setting this field would grant the Storage Object Creator role to the Dialogflow Service Agent. API caller that tries to modify this field should have the permission of storage.buckets.setIamPolicy.
    audioExportPattern String
    Filename pattern for exported audio.
    audioFormat String
    File format for exported audio file. Currently only in telephony recordings.

    • MULAW: G.711 mu-law PCM with 8kHz sample rate.
    • MP3: MP3 file format.
    • OGG: OGG Vorbis. Possible values are: MULAW, MP3, OGG.
    enableAudioRedaction Boolean
    Enable audio redaction if it is true.
    gcsBucket String
    Cloud Storage bucket to export audio record to. Setting this field would grant the Storage Object Creator role to the Dialogflow Service Agent. API caller that tries to modify this field should have the permission of storage.buckets.setIamPolicy.

    CxSecuritySettingsInsightsExportSettings, CxSecuritySettingsInsightsExportSettingsArgs

    EnableInsightsExport bool
    If enabled, we will automatically exports conversations to Insights and Insights runs its analyzers.
    EnableInsightsExport bool
    If enabled, we will automatically exports conversations to Insights and Insights runs its analyzers.
    enableInsightsExport Boolean
    If enabled, we will automatically exports conversations to Insights and Insights runs its analyzers.
    enableInsightsExport boolean
    If enabled, we will automatically exports conversations to Insights and Insights runs its analyzers.
    enable_insights_export bool
    If enabled, we will automatically exports conversations to Insights and Insights runs its analyzers.
    enableInsightsExport Boolean
    If enabled, we will automatically exports conversations to Insights and Insights runs its analyzers.

    Import

    SecuritySettings can be imported using any of these accepted formats:

    • projects/{{project}}/locations/{{location}}/securitySettings/{{name}}

    • {{project}}/{{location}}/{{name}}

    • {{location}}/{{name}}

    When using the pulumi import command, SecuritySettings can be imported using one of the formats above. For example:

    $ pulumi import gcp:diagflow/cxSecuritySettings:CxSecuritySettings default projects/{{project}}/locations/{{location}}/securitySettings/{{name}}
    
    $ pulumi import gcp:diagflow/cxSecuritySettings:CxSecuritySettings default {{project}}/{{location}}/{{name}}
    
    $ pulumi import gcp:diagflow/cxSecuritySettings:CxSecuritySettings default {{location}}/{{name}}
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    Google Cloud (GCP) Classic pulumi/pulumi-gcp
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the google-beta Terraform Provider.
    gcp logo
    Google Cloud Classic v8.9.3 published on Monday, Nov 18, 2024 by Pulumi