You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
-`min_password_length` (Number) The minimum length required for the password. Enforces a stronger password policy by ensuring a minimum number of characters. Default minimum length is `6`.
49
49
-`min_special_characters` (Number) The minimum number of special characters (e.g., !, @, #, $, %) required in the password. This increases the password's security level by including symbols. Minimum special characters should be `1`.
50
50
-`min_uppercase_letters` (Number) The minimum number of uppercase letters (A-Z) required in the password. Helps ensure password complexity with a mix of case-sensitive characters. Minimum length of upper case should be `1`.
51
-
-`password_expiry_days` (Number) The number of days before the password expires. Must be between 1 and 1000 days. Defines how often passwords must be changed. Default is `999` days for expiry.
51
+
-`password_expiry_days` (Number) The number of days before the password expires. Must be between 1 and 1000 days. Defines how often passwords must be changed. Default is `999` days for expiry. Conflicts with `min_password_length`, `min_uppercase_letters`, `min_digits`, `min_lowercase_letters`, `min_special_characters`
52
52
-`password_regex` (String) A regular expression (regex) to define custom password patterns, such as enforcing specific characters or sequences in the password.
53
53
-`timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
-`cluster_auto_remediation` (Boolean) Enables automatic remediation for unhealthy nodes in Palette-provisioned clusters by replacing them with new nodes. Disabling this feature prevents auto-remediation. Not applicable to `EKS`, `AKS`, or `TKE` clusters.
51
51
-`context` (String) Defines the scope of the platform setting. Valid values are `project` or `tenant`. By default, it is set to `tenant`. If the `project` context is specified, the project name will sourced from the provider configuration parameter [`project_name`](https://registry.terraform.io/providers/spectrocloud/spectrocloud/latest/docs#schema).
52
52
-`enable_auto_remediation` (Boolean) Enables automatic remediation. set only with `project' context
53
-
-`login_banner` (Block List, Max: 1) Configure a login banner that users must acknowledge before signing in. (see [below for nested schema](#nestedblock--login_banner))
54
-
-`non_fips_addon_pack` (Boolean) Allows users in this tenant to use non-FIPS-compliant addon packs when creating cluster profiles. The `non_fips_addon_pack` only supported in palette vertex environment.
55
-
-`non_fips_cluster_import` (Boolean) Allows users in this tenant to import clusters, but the imported clusters may not be FIPS-compliant. The `non_fips_cluster_import` only supported in palette vertex environment.
56
-
-`non_fips_features` (Boolean) Allows users in this tenant to access non-FIPS-compliant features such as backup, restore, and scans. The `non_fips_features` only supported in palette vertex environment.
53
+
-`login_banner` (Block List, Max: 1) Configure a login banner that users must acknowledge before signing in. Allowed only for `tenant` context (see [below for nested schema](#nestedblock--login_banner))
54
+
-`non_fips_addon_pack` (Boolean) Allows users in this tenant to use non-FIPS-compliant addon packs when creating cluster profiles. The `non_fips_addon_pack` only supported in palette vertex environment. Allowed only for `tenant` context
55
+
-`non_fips_cluster_import` (Boolean) Allows users in this tenant to import clusters, but the imported clusters may not be FIPS-compliant. The `non_fips_cluster_import` only supported in palette vertex environment. Allowed only for `tenant` context
56
+
-`non_fips_features` (Boolean) Allows users in this tenant to access non-FIPS-compliant features such as backup, restore, and scans. The `non_fips_features` only supported in palette vertex environment. Allowed only for `tenant` context
57
57
-`pause_agent_upgrades` (String) Controls automatic upgrades for Palette components and agents in clusters deployed under a tenant or project. Setting it to `lock` disables automatic upgrades, while `unlock` (default) allows automatic upgrades.
58
-
-`session_timeout` (Number) Specifies the duration (in minutes) of inactivity before a user is automatically logged out. The default is 240 minutes allowed in Palette
58
+
-`session_timeout` (Number) Specifies the duration (in minutes) of inactivity before a user is automatically logged out. The default is 240 minutes allowed in Palette. Allowed only for `tenant` context
59
59
-`timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
Description: "A regular expression (regex) to define custom password patterns, such as enforcing specific characters or sequences in the password.",
33
+
Type: schema.TypeString,
34
+
Optional: true,
35
+
Default: "",
36
+
Description: "A regular expression (regex) to define custom password patterns, such as enforcing specific characters or sequences in the password.",
38
37
},
39
38
"password_expiry_days": {
40
39
Type: schema.TypeInt,
41
40
Optional: true,
42
41
Default: 999,
43
42
ValidateFunc: validation.IntBetween(1, 1000),
44
-
Description: "The number of days before the password expires. Must be between 1 and 1000 days. Defines how often passwords must be changed. Default is `999` days for expiry.",
43
+
Description: "The number of days before the password expires. Must be between 1 and 1000 days. Defines how often passwords must be changed. Default is `999` days for expiry. Conflicts with `min_password_length`, `min_uppercase_letters`, `min_digits`, `min_lowercase_letters`, `min_special_characters`",
// // If password_regex is set, check that the individual password requirements are not set
85
+
// if passwordRegex != "" {
86
+
// conflictingFields := []string{
87
+
// "min_password_length",
88
+
// "min_uppercase_letters",
89
+
// "min_digits",
90
+
// "min_lowercase_letters",
91
+
// "min_special_characters",
92
+
// }
93
+
94
+
// for _, field := range conflictingFields {
95
+
// if val := diff.Get(field); val != nil && val != 0 {
96
+
// return fmt.Errorf("password_regex cannot be used together with %s. Use either password_regex for custom patterns or the individual minimum requirements", field)
97
+
// }
98
+
// }
99
+
100
+
// // When using password_regex, password_expiry_days and first_reminder_days are required
101
+
// if diff.Get("password_expiry_days").(int) == 0 {
102
+
// return fmt.Errorf("password_expiry_days is required when using password_regex")
103
+
// }
104
+
// if diff.Get("first_reminder_days").(int) == 0 {
105
+
// return fmt.Errorf("first_reminder_days is required when using password_regex")
Description: "Specifies the duration (in minutes) of inactivity before a user is automatically logged out. The default is 240 minutes allowed in Palette",
42
+
Description: "Specifies the duration (in minutes) of inactivity before a user is automatically logged out. The default is 240 minutes allowed in Palette. Allowed only for `tenant` context",
Description: "Allows users in this tenant to use non-FIPS-compliant addon packs when creating cluster profiles. The `non_fips_addon_pack` only supported in palette vertex environment.",
68
+
Description: "Allows users in this tenant to use non-FIPS-compliant addon packs when creating cluster profiles. The `non_fips_addon_pack` only supported in palette vertex environment. Allowed only for `tenant` context",
68
69
},
69
70
"non_fips_features": {
70
71
Type: schema.TypeBool,
71
72
Optional: true,
72
-
Description: "Allows users in this tenant to access non-FIPS-compliant features such as backup, restore, and scans. The `non_fips_features` only supported in palette vertex environment.",
73
+
Description: "Allows users in this tenant to access non-FIPS-compliant features such as backup, restore, and scans. The `non_fips_features` only supported in palette vertex environment. Allowed only for `tenant` context",
73
74
},
74
75
"non_fips_cluster_import": {
75
76
Type: schema.TypeBool,
76
77
Optional: true,
77
-
Description: "Allows users in this tenant to import clusters, but the imported clusters may not be FIPS-compliant. The `non_fips_cluster_import` only supported in palette vertex environment.",
78
+
Description: "Allows users in this tenant to import clusters, but the imported clusters may not be FIPS-compliant. The `non_fips_cluster_import` only supported in palette vertex environment. Allowed only for `tenant` context",
78
79
},
79
80
"login_banner": {
80
81
Type: schema.TypeList,
81
82
MaxItems: 1,
82
83
Optional: true,
83
-
Description: "Configure a login banner that users must acknowledge before signing in.",
84
+
Description: "Configure a login banner that users must acknowledge before signing in. Allowed only for `tenant` context",
0 commit comments