Skip to content

[Bug]: Creating a snowflake_current_account is failing with SAML related error message #4010

@leopasta-enable

Description

@leopasta-enable

Terraform CLI Version

1.5.5

Terraform Provider Version

2.6.0

Company Name

No response

Terraform Configuration

resource "snowflake_network_policy" "workplaces" {
  name                      = "ENABLE_OFFICES_AND_VPNS"
  allowed_network_rule_list = [
    module.platform_management_assets.network_rule_enable_offices_fqn,
    module.platform_management_assets.network_rule_enable_vpns_fqn
    ]
  comment                   = "Enable offices and vpns"
}

resource "snowflake_current_account" "account_settings" {
  network_policy = snowflake_network_policy.workplaces.fully_qualified_name
}

Category

category:resource

Object type(s)

resource:current_account

Expected Behavior

  1. Network policy to be set
  2. terraform apply to complete successfully

Actual Behavior

Terraform apply fails with the error:

module.account_assets.snowflake_current_account.account_settings: Destroying... [id=current_account]

│ Error: 390959 (22023): Use security integration type saml instead of account parameter.

Terraform planning the resource to be replaced:


Terraform will perform the following actions:

  # module.account_assets.snowflake_current_account.account_settings is tainted, so must be replaced
-/+ resource "snowflake_current_account" "account_settings" {
      ~ abort_detached_query                                       = false -> (known after apply)
      + active_python_profiler                                     = (known after apply)
      ~ allow_client_mfa_caching                                   = false -> (known after apply)
      ~ allow_id_token                                             = false -> (known after apply)
      ~ autocommit                                                 = true -> (known after apply)
      + base_location_prefix                                       = (known after apply)
      ~ binary_input_format                                        = "HEX" -> (known after apply)
      ~ binary_output_format                                       = "HEX" -> (known after apply)
      + catalog                                                    = (known after apply)
      + catalog_sync                                               = (known after apply)
      ~ client_enable_log_info_statement_parameters                = false -> (known after apply)
      ~ client_encryption_key_size                                 = 128 -> (known after apply)
      ~ client_memory_limit                                        = 1536 -> (known after apply)
      ~ client_metadata_request_use_connection_ctx                 = false -> (known after apply)
      ~ client_metadata_use_session_database                       = false -> (known after apply)
      ~ client_prefetch_threads                                    = 4 -> (known after apply)
      ~ client_result_chunk_size                                   = 160 -> (known after apply)
      ~ client_result_column_case_insensitive                      = false -> (known after apply)
      ~ client_session_keep_alive                                  = false -> (known after apply)
      ~ client_session_keep_alive_heartbeat_frequency              = 3600 -> (known after apply)
      ~ client_timestamp_type_mapping                              = "TIMESTAMP_LTZ" -> (known after apply)
      ~ cortex_enabled_cross_region                                = "DISABLED" -> (known after apply)
      ~ cortex_models_allowlist                                    = "ALL" -> (known after apply)
      + csv_timestamp_format                                       = (known after apply)
      ~ data_retention_time_in_days                                = 1 -> (known after apply)
      ~ date_input_format                                          = "AUTO" -> (known after apply)
      ~ date_output_format                                         = "YYYY-MM-DD" -> (known after apply)
      + default_ddl_collation                                      = (known after apply)
      ~ default_notebook_compute_pool_cpu                          = "SYSTEM_COMPUTE_POOL_CPU" -> (known after apply)
      ~ default_notebook_compute_pool_gpu                          = "SYSTEM_COMPUTE_POOL_GPU" -> (known after apply)
      ~ default_null_ordering                                      = "LAST" -> (known after apply)
      ~ default_streamlit_notebook_warehouse                       = "SYSTEM$STREAMLIT_NOTEBOOK_WH" -> (known after apply)
      ~ disable_ui_download_button                                 = false -> (known after apply)
      ~ disable_user_privilege_grants                              = false -> (known after apply)
      ~ enable_automatic_sensitive_data_classification_log         = true -> (known after apply)
      ~ enable_egress_cost_optimizer                               = true -> (known after apply)
      ~ enable_identifier_first_login                              = false -> (known after apply)
      ~ enable_internal_stages_privatelink                         = false -> (known after apply)
      ~ enable_tri_secret_and_rekey_opt_out_for_image_repository   = false -> (known after apply)
      ~ enable_tri_secret_and_rekey_opt_out_for_spcs_block_storage = false -> (known after apply)
      ~ enable_unhandled_exceptions_reporting                      = true -> (known after apply)
      ~ enable_unload_physical_type_optimization                   = true -> (known after apply)
      ~ enable_unredacted_query_syntax_error                       = false -> (known after apply)
      ~ enable_unredacted_secure_object_error                      = false -> (known after apply)
      ~ enforce_network_rules_for_internal_stages                  = false -> (known after apply)
      ~ error_on_nondeterministic_merge                            = true -> (known after apply)
      ~ error_on_nondeterministic_update                           = false -> (known after apply)
      ~ event_table                                                = "snowflake.telemetry.events" -> (known after apply)
      ~ external_oauth_add_privileged_roles_to_blocked_list        = true -> (known after apply)
      + external_volume                                            = (known after apply)
      ~ geography_output_format                                    = "GeoJSON" -> (known after apply)
      ~ geometry_output_format                                     = "GeoJSON" -> (known after apply)
      ~ hybrid_table_lock_timeout                                  = 3600 -> (known after apply)
      ~ id                                                         = "current_account" -> (known after apply)
      ~ initial_replication_size_limit_in_tb                       = "10.0" -> (known after apply)
      ~ jdbc_treat_decimal_as_int                                  = true -> (known after apply)
      ~ jdbc_treat_timestamp_ntz_as_utc                            = false -> (known after apply)
      ~ jdbc_use_session_timezone                                  = true -> (known after apply)
      ~ js_treat_integer_as_bigint                                 = false -> (known after apply)
      ~ json_indent                                                = 2 -> (known after apply)
      ~ listing_auto_fulfillment_replication_refresh_schedule      = "1440 MINUTE" -> (known after apply)
      ~ lock_timeout                                               = 43200 -> (known after apply)
      ~ log_level                                                  = "OFF" -> (known after apply)
      ~ max_concurrency_level                                      = 8 -> (known after apply)
      ~ max_data_extension_time_in_days                            = 14 -> (known after apply)
      ~ metric_level                                               = "NONE" -> (known after apply)
      ~ min_data_retention_time_in_days                            = 0 -> (known after apply)
      ~ multi_statement_count                                      = 1 -> (known after apply)
      ~ network_policy                                             = "ENABLE_OFFICES_AND_VPNS" -> "\"ENABLE_OFFICES_AND_VPNS\""
      ~ noorder_sequence_as_default                                = true -> (known after apply)
      ~ oauth_add_privileged_roles_to_blocked_list                 = true -> (known after apply)
      ~ odbc_treat_decimal_as_int                                  = false -> (known after apply)
      ~ periodic_data_rekeying                                     = false -> (known after apply)
      ~ pipe_execution_paused                                      = false -> (known after apply)
      ~ prevent_unload_to_inline_url                               = false -> (known after apply)
      ~ prevent_unload_to_internal_stages                          = false -> (known after apply)
      + python_profiler_modules                                    = (known after apply)
      + python_profiler_target_stage                               = (known after apply)
      + query_tag                                                  = (known after apply)
      ~ quoted_identifiers_ignore_case                             = false -> (known after apply)
      ~ replace_invalid_characters                                 = false -> (known after apply)
      ~ require_storage_integration_for_stage_creation             = false -> (known after apply)
      ~ require_storage_integration_for_stage_operation            = false -> (known after apply)
      ~ rows_per_resultset                                         = 0 -> (known after apply)
      + s3_stage_vpce_dns_name                                     = (known after apply)
      + saml_identity_provider                                     = (known after apply)
      ~ search_path                                                = "$current, $public" -> (known after apply)
      ~ serverless_task_max_statement_size                         = "X2Large" -> (known after apply)
      ~ serverless_task_min_statement_size                         = "XSMALL" -> (known after apply)
      + simulated_data_sharing_consumer                            = (known after apply)
      ~ sso_login_page                                             = false -> (known after apply)
      ~ statement_queued_timeout_in_seconds                        = 0 -> (known after apply)
      ~ statement_timeout_in_seconds                               = 172800 -> (known after apply)
      ~ storage_serialization_policy                               = "OPTIMIZED" -> (known after apply)
      ~ strict_json_output                                         = false -> (known after apply)
      ~ suspend_task_after_num_failures                            = 10 -> (known after apply)
      ~ task_auto_retry_attempts                                   = 0 -> (known after apply)
      ~ time_input_format                                          = "AUTO" -> (known after apply)
      ~ time_output_format                                         = "HH24:MI:SS" -> (known after apply)
      ~ timestamp_day_is_always_24h                                = false -> (known after apply)
      ~ timestamp_input_format                                     = "AUTO" -> (known after apply)
      + timestamp_ltz_output_format                                = (known after apply)
      ~ timestamp_ntz_output_format                                = "YYYY-MM-DD HH24:MI:SS.FF3" -> (known after apply)
      ~ timestamp_output_format                                    = "YYYY-MM-DD HH24:MI:SS.FF3 TZHTZM" -> (known after apply)
      ~ timestamp_type_mapping                                     = "TIMESTAMP_NTZ" -> (known after apply)
      + timestamp_tz_output_format                                 = (known after apply)
      ~ timezone                                                   = "America/Los_Angeles" -> (known after apply)
      ~ trace_level                                                = "OFF" -> (known after apply)
      ~ transaction_abort_on_error                                 = false -> (known after apply)
      ~ transaction_default_isolation_level                        = "READ COMMITTED" -> (known after apply)
      ~ two_digit_century_start                                    = 1970 -> (known after apply)
      ~ unsupported_ddl_action                                     = "ignore" -> (known after apply)
      ~ use_cached_result                                          = true -> (known after apply)
      ~ user_task_managed_initial_warehouse_size                   = "Medium" -> (known after apply)
      ~ user_task_minimum_trigger_interval_in_seconds              = 30 -> (known after apply)
      ~ user_task_timeout_ms                                       = 3600000 -> (known after apply)
      ~ week_of_year_policy                                        = 0 -> (known after apply)
      ~ week_start                                                 = 0 -> (known after apply)
    }

Plan: 1 to add, 0 to change, 1 to destroy.

Steps to Reproduce

  1. Using the resource provided (adapt the network policy as appropriated
  2. Run terraform apply

How much impact is this issue causing?

Low

Logs

No response

Additional Information

No response

Would you like to implement a fix?

  • Yeah, I'll take it 😎

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugReproducible issue with the provider or Snowflake behavior.category:resourceIssue connected to one of the existing/new resources.resource:current_accountIssue connected to the snowflake_current_account resource

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions