Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.pulumi.googlenative.dialogflow.v3.SecuritySettingArgs Maven / Gradle / Ivy
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package com.pulumi.googlenative.dialogflow.v3;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.googlenative.dialogflow.v3.enums.SecuritySettingPurgeDataTypesItem;
import com.pulumi.googlenative.dialogflow.v3.enums.SecuritySettingRedactionScope;
import com.pulumi.googlenative.dialogflow.v3.enums.SecuritySettingRedactionStrategy;
import com.pulumi.googlenative.dialogflow.v3.inputs.GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettingsArgs;
import com.pulumi.googlenative.dialogflow.v3.inputs.GoogleCloudDialogflowCxV3SecuritySettingsInsightsExportSettingsArgs;
import java.lang.Integer;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
public final class SecuritySettingArgs extends com.pulumi.resources.ResourceArgs {
public static final SecuritySettingArgs Empty = new SecuritySettingArgs();
/**
* Controls audio export settings for post-conversation analytics when ingesting audio to conversations via Participants.AnalyzeContent or Participants.StreamingAnalyzeContent. If retention_strategy is set to REMOVE_AFTER_CONVERSATION or audio_export_settings.gcs_bucket is empty, audio export is disabled. If audio export is enabled, audio is recorded and saved to audio_export_settings.gcs_bucket, subject to retention policy of audio_export_settings.gcs_bucket. This setting won't effect audio input for implicit sessions via Sessions.DetectIntent or Sessions.StreamingDetectIntent.
*
*/
@Import(name="audioExportSettings")
private @Nullable Output audioExportSettings;
/**
* @return Controls audio export settings for post-conversation analytics when ingesting audio to conversations via Participants.AnalyzeContent or Participants.StreamingAnalyzeContent. If retention_strategy is set to REMOVE_AFTER_CONVERSATION or audio_export_settings.gcs_bucket is empty, audio export is disabled. If audio export is enabled, audio is recorded and saved to audio_export_settings.gcs_bucket, subject to retention policy of audio_export_settings.gcs_bucket. This setting won't effect audio input for implicit sessions via Sessions.DetectIntent or Sessions.StreamingDetectIntent.
*
*/
public Optional> audioExportSettings() {
return Optional.ofNullable(this.audioExportSettings);
}
/**
* [DLP](https://cloud.google.com/dlp/docs) deidentify template name. Use this template to define de-identification configuration for the content. The `DLP De-identify Templates Reader` role is needed on the Dialogflow service identity service account (has the form `[email protected] `) for your agent's project. If empty, Dialogflow replaces sensitive info with `[redacted]` text. The template name will have one of the following formats: `projects//locations//deidentifyTemplates/` OR `organizations//locations//deidentifyTemplates/` Note: `deidentify_template` must be located in the same region as the `SecuritySettings`.
*
*/
@Import(name="deidentifyTemplate")
private @Nullable Output deidentifyTemplate;
/**
* @return [DLP](https://cloud.google.com/dlp/docs) deidentify template name. Use this template to define de-identification configuration for the content. The `DLP De-identify Templates Reader` role is needed on the Dialogflow service identity service account (has the form `[email protected] `) for your agent's project. If empty, Dialogflow replaces sensitive info with `[redacted]` text. The template name will have one of the following formats: `projects//locations//deidentifyTemplates/` OR `organizations//locations//deidentifyTemplates/` Note: `deidentify_template` must be located in the same region as the `SecuritySettings`.
*
*/
public Optional> deidentifyTemplate() {
return Optional.ofNullable(this.deidentifyTemplate);
}
/**
* The human-readable name of the security settings, unique within the location.
*
*/
@Import(name="displayName", required=true)
private Output displayName;
/**
* @return The human-readable name of the security settings, unique within the location.
*
*/
public Output displayName() {
return this.displayName;
}
/**
* Controls conversation exporting settings to Insights after conversation is completed. If retention_strategy is set to REMOVE_AFTER_CONVERSATION, Insights export is disabled no matter what you configure here.
*
*/
@Import(name="insightsExportSettings")
private @Nullable Output insightsExportSettings;
/**
* @return Controls conversation exporting settings to Insights after conversation is completed. If retention_strategy is set to REMOVE_AFTER_CONVERSATION, Insights export is disabled no matter what you configure here.
*
*/
public Optional> insightsExportSettings() {
return Optional.ofNullable(this.insightsExportSettings);
}
/**
* [DLP](https://cloud.google.com/dlp/docs) inspect template name. Use this template to define inspect base settings. The `DLP Inspect Templates Reader` role is needed on the Dialogflow service identity service account (has the form `[email protected] `) for your agent's project. If empty, we use the default DLP inspect config. The template name will have one of the following formats: `projects//locations//inspectTemplates/` OR `organizations//locations//inspectTemplates/` Note: `inspect_template` must be located in the same region as the `SecuritySettings`.
*
*/
@Import(name="inspectTemplate")
private @Nullable Output inspectTemplate;
/**
* @return [DLP](https://cloud.google.com/dlp/docs) inspect template name. Use this template to define inspect base settings. The `DLP Inspect Templates Reader` role is needed on the Dialogflow service identity service account (has the form `[email protected] `) for your agent's project. If empty, we use the default DLP inspect config. The template name will have one of the following formats: `projects//locations//inspectTemplates/` OR `organizations//locations//inspectTemplates/` Note: `inspect_template` must be located in the same region as the `SecuritySettings`.
*
*/
public Optional> inspectTemplate() {
return Optional.ofNullable(this.inspectTemplate);
}
@Import(name="location")
private @Nullable Output location;
public Optional> location() {
return Optional.ofNullable(this.location);
}
/**
* Resource name of the settings. Required for the SecuritySettingsService.UpdateSecuritySettings method. SecuritySettingsService.CreateSecuritySettings populates the name automatically. Format: `projects//locations//securitySettings/`.
*
*/
@Import(name="name")
private @Nullable Output name;
/**
* @return Resource name of the settings. Required for the SecuritySettingsService.UpdateSecuritySettings method. SecuritySettingsService.CreateSecuritySettings populates the name automatically. Format: `projects//locations//securitySettings/`.
*
*/
public Optional> name() {
return Optional.ofNullable(this.name);
}
@Import(name="project")
private @Nullable Output project;
public Optional> project() {
return Optional.ofNullable(this.project);
}
/**
* List of types of data to remove when retention settings triggers purge.
*
*/
@Import(name="purgeDataTypes")
private @Nullable Output> purgeDataTypes;
/**
* @return List of types of data to remove when retention settings triggers purge.
*
*/
public Optional>> purgeDataTypes() {
return Optional.ofNullable(this.purgeDataTypes);
}
/**
* Defines the data for which Dialogflow applies redaction. Dialogflow does not redact data that it does not have access to – for example, Cloud logging.
*
*/
@Import(name="redactionScope")
private @Nullable Output redactionScope;
/**
* @return Defines the data for which Dialogflow applies redaction. Dialogflow does not redact data that it does not have access to – for example, Cloud logging.
*
*/
public Optional> redactionScope() {
return Optional.ofNullable(this.redactionScope);
}
/**
* Strategy that defines how we do redaction.
*
*/
@Import(name="redactionStrategy")
private @Nullable Output redactionStrategy;
/**
* @return Strategy that defines how we do redaction.
*
*/
public Optional> redactionStrategy() {
return Optional.ofNullable(this.redactionStrategy);
}
/**
* 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.
*
*/
@Import(name="retentionWindowDays")
private @Nullable Output retentionWindowDays;
/**
* @return 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.
*
*/
public Optional> retentionWindowDays() {
return Optional.ofNullable(this.retentionWindowDays);
}
private SecuritySettingArgs() {}
private SecuritySettingArgs(SecuritySettingArgs $) {
this.audioExportSettings = $.audioExportSettings;
this.deidentifyTemplate = $.deidentifyTemplate;
this.displayName = $.displayName;
this.insightsExportSettings = $.insightsExportSettings;
this.inspectTemplate = $.inspectTemplate;
this.location = $.location;
this.name = $.name;
this.project = $.project;
this.purgeDataTypes = $.purgeDataTypes;
this.redactionScope = $.redactionScope;
this.redactionStrategy = $.redactionStrategy;
this.retentionWindowDays = $.retentionWindowDays;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(SecuritySettingArgs defaults) {
return new Builder(defaults);
}
public static final class Builder {
private SecuritySettingArgs $;
public Builder() {
$ = new SecuritySettingArgs();
}
public Builder(SecuritySettingArgs defaults) {
$ = new SecuritySettingArgs(Objects.requireNonNull(defaults));
}
/**
* @param audioExportSettings Controls audio export settings for post-conversation analytics when ingesting audio to conversations via Participants.AnalyzeContent or Participants.StreamingAnalyzeContent. If retention_strategy is set to REMOVE_AFTER_CONVERSATION or audio_export_settings.gcs_bucket is empty, audio export is disabled. If audio export is enabled, audio is recorded and saved to audio_export_settings.gcs_bucket, subject to retention policy of audio_export_settings.gcs_bucket. This setting won't effect audio input for implicit sessions via Sessions.DetectIntent or Sessions.StreamingDetectIntent.
*
* @return builder
*
*/
public Builder audioExportSettings(@Nullable Output audioExportSettings) {
$.audioExportSettings = audioExportSettings;
return this;
}
/**
* @param audioExportSettings Controls audio export settings for post-conversation analytics when ingesting audio to conversations via Participants.AnalyzeContent or Participants.StreamingAnalyzeContent. If retention_strategy is set to REMOVE_AFTER_CONVERSATION or audio_export_settings.gcs_bucket is empty, audio export is disabled. If audio export is enabled, audio is recorded and saved to audio_export_settings.gcs_bucket, subject to retention policy of audio_export_settings.gcs_bucket. This setting won't effect audio input for implicit sessions via Sessions.DetectIntent or Sessions.StreamingDetectIntent.
*
* @return builder
*
*/
public Builder audioExportSettings(GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettingsArgs audioExportSettings) {
return audioExportSettings(Output.of(audioExportSettings));
}
/**
* @param deidentifyTemplate [DLP](https://cloud.google.com/dlp/docs) deidentify template name. Use this template to define de-identification configuration for the content. The `DLP De-identify Templates Reader` role is needed on the Dialogflow service identity service account (has the form `[email protected] `) for your agent's project. If empty, Dialogflow replaces sensitive info with `[redacted]` text. The template name will have one of the following formats: `projects//locations//deidentifyTemplates/` OR `organizations//locations//deidentifyTemplates/` Note: `deidentify_template` must be located in the same region as the `SecuritySettings`.
*
* @return builder
*
*/
public Builder deidentifyTemplate(@Nullable Output deidentifyTemplate) {
$.deidentifyTemplate = deidentifyTemplate;
return this;
}
/**
* @param deidentifyTemplate [DLP](https://cloud.google.com/dlp/docs) deidentify template name. Use this template to define de-identification configuration for the content. The `DLP De-identify Templates Reader` role is needed on the Dialogflow service identity service account (has the form `[email protected] `) for your agent's project. If empty, Dialogflow replaces sensitive info with `[redacted]` text. The template name will have one of the following formats: `projects//locations//deidentifyTemplates/` OR `organizations//locations//deidentifyTemplates/` Note: `deidentify_template` must be located in the same region as the `SecuritySettings`.
*
* @return builder
*
*/
public Builder deidentifyTemplate(String deidentifyTemplate) {
return deidentifyTemplate(Output.of(deidentifyTemplate));
}
/**
* @param displayName The human-readable name of the security settings, unique within the location.
*
* @return builder
*
*/
public Builder displayName(Output displayName) {
$.displayName = displayName;
return this;
}
/**
* @param displayName The human-readable name of the security settings, unique within the location.
*
* @return builder
*
*/
public Builder displayName(String displayName) {
return displayName(Output.of(displayName));
}
/**
* @param insightsExportSettings Controls conversation exporting settings to Insights after conversation is completed. If retention_strategy is set to REMOVE_AFTER_CONVERSATION, Insights export is disabled no matter what you configure here.
*
* @return builder
*
*/
public Builder insightsExportSettings(@Nullable Output insightsExportSettings) {
$.insightsExportSettings = insightsExportSettings;
return this;
}
/**
* @param insightsExportSettings Controls conversation exporting settings to Insights after conversation is completed. If retention_strategy is set to REMOVE_AFTER_CONVERSATION, Insights export is disabled no matter what you configure here.
*
* @return builder
*
*/
public Builder insightsExportSettings(GoogleCloudDialogflowCxV3SecuritySettingsInsightsExportSettingsArgs insightsExportSettings) {
return insightsExportSettings(Output.of(insightsExportSettings));
}
/**
* @param inspectTemplate [DLP](https://cloud.google.com/dlp/docs) inspect template name. Use this template to define inspect base settings. The `DLP Inspect Templates Reader` role is needed on the Dialogflow service identity service account (has the form `[email protected] `) for your agent's project. If empty, we use the default DLP inspect config. The template name will have one of the following formats: `projects//locations//inspectTemplates/` OR `organizations//locations//inspectTemplates/` Note: `inspect_template` must be located in the same region as the `SecuritySettings`.
*
* @return builder
*
*/
public Builder inspectTemplate(@Nullable Output inspectTemplate) {
$.inspectTemplate = inspectTemplate;
return this;
}
/**
* @param inspectTemplate [DLP](https://cloud.google.com/dlp/docs) inspect template name. Use this template to define inspect base settings. The `DLP Inspect Templates Reader` role is needed on the Dialogflow service identity service account (has the form `[email protected] `) for your agent's project. If empty, we use the default DLP inspect config. The template name will have one of the following formats: `projects//locations//inspectTemplates/` OR `organizations//locations//inspectTemplates/` Note: `inspect_template` must be located in the same region as the `SecuritySettings`.
*
* @return builder
*
*/
public Builder inspectTemplate(String inspectTemplate) {
return inspectTemplate(Output.of(inspectTemplate));
}
public Builder location(@Nullable Output location) {
$.location = location;
return this;
}
public Builder location(String location) {
return location(Output.of(location));
}
/**
* @param name Resource name of the settings. Required for the SecuritySettingsService.UpdateSecuritySettings method. SecuritySettingsService.CreateSecuritySettings populates the name automatically. Format: `projects//locations//securitySettings/`.
*
* @return builder
*
*/
public Builder name(@Nullable Output name) {
$.name = name;
return this;
}
/**
* @param name Resource name of the settings. Required for the SecuritySettingsService.UpdateSecuritySettings method. SecuritySettingsService.CreateSecuritySettings populates the name automatically. Format: `projects//locations//securitySettings/`.
*
* @return builder
*
*/
public Builder name(String name) {
return name(Output.of(name));
}
public Builder project(@Nullable Output project) {
$.project = project;
return this;
}
public Builder project(String project) {
return project(Output.of(project));
}
/**
* @param purgeDataTypes List of types of data to remove when retention settings triggers purge.
*
* @return builder
*
*/
public Builder purgeDataTypes(@Nullable Output> purgeDataTypes) {
$.purgeDataTypes = purgeDataTypes;
return this;
}
/**
* @param purgeDataTypes List of types of data to remove when retention settings triggers purge.
*
* @return builder
*
*/
public Builder purgeDataTypes(List purgeDataTypes) {
return purgeDataTypes(Output.of(purgeDataTypes));
}
/**
* @param purgeDataTypes List of types of data to remove when retention settings triggers purge.
*
* @return builder
*
*/
public Builder purgeDataTypes(SecuritySettingPurgeDataTypesItem... purgeDataTypes) {
return purgeDataTypes(List.of(purgeDataTypes));
}
/**
* @param redactionScope Defines the data for which Dialogflow applies redaction. Dialogflow does not redact data that it does not have access to – for example, Cloud logging.
*
* @return builder
*
*/
public Builder redactionScope(@Nullable Output redactionScope) {
$.redactionScope = redactionScope;
return this;
}
/**
* @param redactionScope Defines the data for which Dialogflow applies redaction. Dialogflow does not redact data that it does not have access to – for example, Cloud logging.
*
* @return builder
*
*/
public Builder redactionScope(SecuritySettingRedactionScope redactionScope) {
return redactionScope(Output.of(redactionScope));
}
/**
* @param redactionStrategy Strategy that defines how we do redaction.
*
* @return builder
*
*/
public Builder redactionStrategy(@Nullable Output redactionStrategy) {
$.redactionStrategy = redactionStrategy;
return this;
}
/**
* @param redactionStrategy Strategy that defines how we do redaction.
*
* @return builder
*
*/
public Builder redactionStrategy(SecuritySettingRedactionStrategy redactionStrategy) {
return redactionStrategy(Output.of(redactionStrategy));
}
/**
* @param retentionWindowDays 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.
*
* @return builder
*
*/
public Builder retentionWindowDays(@Nullable Output retentionWindowDays) {
$.retentionWindowDays = retentionWindowDays;
return this;
}
/**
* @param retentionWindowDays 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.
*
* @return builder
*
*/
public Builder retentionWindowDays(Integer retentionWindowDays) {
return retentionWindowDays(Output.of(retentionWindowDays));
}
public SecuritySettingArgs build() {
$.displayName = Objects.requireNonNull($.displayName, "expected parameter 'displayName' to be non-null");
return $;
}
}
}