Skip to content

Commit 0d7025a

Browse files
authored
[Bug:] azurerm_mssql_server_vulnerability_assessment - remove validation for storage_account_access_key and storage_container_sas_key being set (#29789)
[Bug] `azurerm_mssql_server_vulnerability_assessment`- `storage_account_access_key` and `storage_container_sas_key` are no longer required to be set
1 parent 0f7981a commit 0d7025a

File tree

1 file changed

+19
-34
lines changed

1 file changed

+19
-34
lines changed

internal/services/mssql/mssql_server_vulnerability_assessment_resource.go

Lines changed: 19 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
package mssql
55

66
import (
7-
"context"
87
"fmt"
98
"log"
109
"time"
@@ -100,19 +99,6 @@ func resourceMsSqlServerVulnerabilityAssessment() *pluginsdk.Resource {
10099
ValidateFunc: validation.StringIsNotEmpty,
101100
},
102101
},
103-
104-
CustomizeDiff: pluginsdk.CustomDiffWithAll(
105-
pluginsdk.CustomizeDiffShim(func(ctx context.Context, d *pluginsdk.ResourceDiff, v interface{}) error {
106-
accessKey := d.GetRawConfig().AsValueMap()["storage_account_access_key"]
107-
sasKey := d.GetRawConfig().AsValueMap()["storage_container_sas_key"]
108-
109-
if accessKey.IsNull() && sasKey.IsNull() {
110-
return fmt.Errorf("at least one of 'storage_account_access_key' or 'storage_container_sas_key' properties must be set, got nil, nil")
111-
}
112-
113-
return nil
114-
}),
115-
),
116102
}
117103
}
118104

@@ -131,21 +117,21 @@ func resourceMsSqlServerVulnerabilityAssessmentCreate(d *pluginsdk.ResourceData,
131117

132118
alertResult, err := alertClient.Get(ctx, serverId)
133119
if err != nil {
134-
return fmt.Errorf("retrieving mssql server security alert policy: %+v", err)
120+
return fmt.Errorf("retrieving security alert policy for SQL server %q: %w", serverId.ServerName, err)
135121
}
136122

137123
model := alertResult.Model
138124
if model == nil {
139-
return fmt.Errorf("retrieving mssql server security alert policy %s: model was nil", serverId)
125+
return fmt.Errorf("security alert policy for SQL server %q returned empty response", serverId.ServerName)
140126
}
141127

142128
alertProps := model.Properties
143129
if alertProps == nil {
144-
return fmt.Errorf("retrieving mssql server security alert policy properties %s: properties was nil", serverId)
130+
return fmt.Errorf("security alert policy for SQL server %q has no properties", serverId.ServerName)
145131
}
146132

147133
if alertProps.State != serversecurityalertpolicies.SecurityAlertsPolicyStateEnabled {
148-
return fmt.Errorf("mssql server security alert policy is not 'enabled'")
134+
return fmt.Errorf("security alert policy for SQL server %q must be enabled before configuring vulnerability assessment", serverId.ServerName)
149135
}
150136

151137
log.Printf("[INFO] preparing arguments for mssql server vulnerability assessment creation")
@@ -202,7 +188,7 @@ func resourceMsSqlServerVulnerabilityAssessmentCreate(d *pluginsdk.ResourceData,
202188

203189
result, err := client.CreateOrUpdate(ctx, serverId, payload)
204190
if err != nil || result.Model == nil || result.Model.Id == nil {
205-
return fmt.Errorf("creating mssql server vulnerability assessment %s : %v", id, err)
191+
return fmt.Errorf("creating vulnerability assessment for SQL server %q: %w", serverId.ServerName, err)
206192
}
207193

208194
d.SetId(id.ID())
@@ -228,27 +214,27 @@ func resourceMsSqlServerVulnerabilityAssessmentRead(d *pluginsdk.ResourceData, m
228214
vulnerability, err := client.Get(ctx, serverId)
229215
if err != nil {
230216
if response.WasNotFound(vulnerability.HttpResponse) {
231-
log.Printf("[WARN] mssql server vulnerability assessment %s: not found", id)
217+
log.Printf("[WARN] vulnerability assessment for SQL server %q was not found", serverId.ServerName)
232218
d.SetId("")
233219
return nil
234220
}
235221

236-
return fmt.Errorf("retrieving mssql server vulnerability assessment %s: %+v", *id, err)
222+
return fmt.Errorf("retrieving vulnerability assessment for SQL server %q: %w", serverId.ServerName, err)
237223
}
238224

239225
alert, err := alertClient.Get(ctx, serverId)
240226
if err != nil {
241-
return fmt.Errorf("retrieving mssql server security alert policy by ID: %+v", err)
227+
return fmt.Errorf("retrieving security alert policy for SQL server %q: %w", serverId.ServerName, err)
242228
}
243229

244230
model := alert.Model
245231

246232
if model == nil {
247-
return fmt.Errorf("retrieving mssql server security alert policy %s: model was nil", serverId)
233+
return fmt.Errorf("security alert policy for SQL server %q returned empty response", serverId.ServerName)
248234
}
249235

250236
if model.Id == nil {
251-
return fmt.Errorf("retrieving mssql server security alert policy %s: Id was nil", serverId)
237+
return fmt.Errorf("security alert policy for SQL server %q has no resource ID", serverId.ServerName)
252238
}
253239

254240
recurringScans := make([]interface{}, 0)
@@ -317,38 +303,37 @@ func resourceMsSqlServerVulnerabilityAssessmentUpdate(d *pluginsdk.ResourceData,
317303

318304
alert, err := alertClient.Get(ctx, serverId)
319305
if err != nil {
320-
return fmt.Errorf("retrieving mssql server security alert policy: %+v", err)
306+
return fmt.Errorf("retrieving security alert policy for SQL server %q: %w", serverId.ServerName, err)
321307
}
322308

323309
if alert.Model == nil {
324-
return fmt.Errorf("retrieving mssql server security alert policy %s: model was nil", serverId)
310+
return fmt.Errorf("security alert policy for SQL server %q returned empty response", serverId.ServerName)
325311
}
326312

327313
if alert.Model.Properties == nil {
328-
return fmt.Errorf("retrieving mssql server security alert policy properties %s: properties was nil", serverId)
314+
return fmt.Errorf("security alert policy for SQL server %q has no properties", serverId.ServerName)
329315
}
330316

331317
if alert.Model.Properties.State != serversecurityalertpolicies.SecurityAlertsPolicyStateEnabled {
332-
return fmt.Errorf("mssql server security alert policy is not 'enabled'")
318+
return fmt.Errorf("security alert policy for SQL server %q must be enabled before updating vulnerability assessment", serverId.ServerName)
333319
}
334320

335321
log.Printf("[INFO] preparing arguments for mssql server vulnerability assessment update")
336322

337323
payload := servervulnerabilityassessments.ServerVulnerabilityAssessment{}
338-
339324
result, err := client.Get(ctx, serverId)
340325
if err != nil {
341-
return fmt.Errorf("retrieving mssql server vulnerability assessment policy: %+v", err)
326+
return fmt.Errorf("retrieving existing vulnerability assessment for SQL server %q: %w", serverId.ServerName, err)
342327
}
343328

344329
if result.Model == nil {
345-
return fmt.Errorf("retrieving mssql server vulnerability assessment policy %s: model was nil", serverId)
330+
return fmt.Errorf("vulnerability assessment for SQL server %q returned empty response", serverId.ServerName)
346331
}
347332

348333
props := result.Model.Properties
349334

350335
if props == nil {
351-
return fmt.Errorf("retrieving mssql server vulnerability assessment policy %s: properties was nil", serverId)
336+
return fmt.Errorf("vulnerability assessment for SQL server %q has no properties", serverId.ServerName)
352337
}
353338

354339
if d.HasChange("storage_container_path") {
@@ -408,7 +393,7 @@ func resourceMsSqlServerVulnerabilityAssessmentUpdate(d *pluginsdk.ResourceData,
408393

409394
update, err := client.CreateOrUpdate(ctx, serverId, payload)
410395
if err != nil || update.Model == nil || update.Model.Id == nil {
411-
return fmt.Errorf("updating mssql server vulnerability assessment %s : %v", id, err)
396+
return fmt.Errorf("updating vulnerability assessment for SQL server %q: %w", serverId.ServerName, err)
412397
}
413398

414399
return resourceMsSqlServerVulnerabilityAssessmentRead(d, meta)
@@ -429,7 +414,7 @@ func resourceMsSqlServerVulnerabilityAssessmentDelete(d *pluginsdk.ResourceData,
429414
serverId := commonids.NewSqlServerID(id.SubscriptionId, id.ResourceGroup, id.ServerName)
430415

431416
if _, err = client.Delete(ctx, serverId); err != nil {
432-
return fmt.Errorf("deleting mssql server vulnerability assessment %s: %v", *id, err)
417+
return fmt.Errorf("deleting vulnerability assessment for SQL server %q: %w", serverId.ServerName, err)
433418
}
434419

435420
return nil

0 commit comments

Comments
 (0)