@@ -58,20 +58,21 @@ Tests that when modifying the properties of a databases's threat detection polic
5858function Test-ThreatDetectionDatabaseUpdatePolicy
5959{
6060 # Setup
61- $testSuffix = 6004
61+ $testSuffix = 6002
6262 Create- TestEnvironment $testSuffix " Japan East" # Create-ThreatDetectionTestEnvironmentWithStorageV2 $testSuffix
6363 $params = Get-SqlAuditingTestEnvironmentParameters $testSuffix # Get-SqlThreatDetectionTestEnvironmentParameters $testSuffix
6464
6565 try
6666 {
6767 # Test
6868 Set-AzureRmSqlDatabaseAuditingPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - DatabaseName $params.databaseName - StorageAccountName $params.storageAccount
69- Set-AzureRmSqlDatabaseThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - DatabaseName $params.databaseName - NotificationRecipientsEmails " koko@mailTest.com;koko1@mailTest.com" - EmailAdmins $false - ExcludedDetectionType " Sql_Injection_Vulnerability"
69+ Set-AzureRmSqlDatabaseThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - DatabaseName $params.databaseName - NotificationRecipientsEmails " koko@mailTest.com;koko1@mailTest.com" - EmailAdmins $false - ExcludedDetectionType " Sql_Injection_Vulnerability" - StorageAccountName $params .storageAccount
7070 $policy = Get-AzureRmSqlDatabaseThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - DatabaseName $params.databaseName
7171
7272 # Assert
7373 Assert-AreEqual $policy.ThreatDetectionState " Enabled"
7474 Assert-AreEqual $policy.NotificationRecipientsEmails " koko@mailTest.com;koko1@mailTest.com"
75+ Assert-AreEqual $policy.StorageAccountName $params.storageAccount
7576 Assert-False {$policy.EmailAdmins }
7677 Assert-AreEqual $policy.ExcludedDetectionTypes.Length 1
7778 Assert-True {$policy.ExcludedDetectionTypes.Contains ([Microsoft.Azure.Commands.Sql.ThreatDetection.Model.DetectionType ]::Sql_Injection_Vulnerability)}
@@ -86,6 +87,7 @@ function Test-ThreatDetectionDatabaseUpdatePolicy
8687 Assert-AreEqual $policy.NotificationRecipientsEmails " koko@mailTest.com;koko1@mailTest.com"
8788 Assert-False {$policy.EmailAdmins }
8889 Assert-AreEqual $policy.ExcludedDetectionTypes.Length 4
90+ Assert-AreEqual $policy.StorageAccountName $params.storageAccount
8991 Assert-True {$policy.ExcludedDetectionTypes.Contains ([Microsoft.Azure.Commands.Sql.ThreatDetection.Model.DetectionType ]::Sql_Injection)}
9092 Assert-True {$policy.ExcludedDetectionTypes.Contains ([Microsoft.Azure.Commands.Sql.ThreatDetection.Model.DetectionType ]::Sql_Injection_Vulnerability)}
9193 Assert-True {$policy.ExcludedDetectionTypes.Contains ([Microsoft.Azure.Commands.Sql.ThreatDetection.Model.DetectionType ]::Access_Anomaly)}
@@ -129,15 +131,15 @@ Tests that when turning off auditing or marking it as "use server default" , thr
129131function Test-DisablingThreatDetection
130132{
131133 # Setup
132- $testSuffix = 7019
134+ $testSuffix = 7079
133135 Create- TestEnvironment $testSuffix " Japan East" # Create-ThreatDetectionTestEnvironmentWithStorageV2 $testSuffix
134136 $params = Get-SqlAuditingTestEnvironmentParameters $testSuffix # Get-SqlThreatDetectionTestEnvironmentParameters $testSuffix
135137
136138 try
137139 {
138140 # 1. Test
139141 Set-AzureRmSqlDatabaseAuditingPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - DatabaseName $params.databaseName - StorageAccountName $params.storageAccount
140- Set-AzureRmSqlDatabaseThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - DatabaseName $params.databaseName
142+ Set-AzureRmSqlDatabaseThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - DatabaseName $params.databaseName - StorageAccountName $params .storageAccount
141143 $policy = Get-AzureRmSqlDatabaseThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - DatabaseName $params.databaseName
142144
143145 # Assert
@@ -155,7 +157,7 @@ function Test-DisablingThreatDetection
155157 # 3. Test - that no exception is thrown
156158 Set-AzureRmSqlServerAuditingPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - StorageAccountName $params.storageAccount
157159 Use-AzureRmSqlServerAuditingPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - DatabaseName $params.databaseName
158- Set-AzureRmSqlDatabaseThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - DatabaseName $params.databaseName
160+ Set-AzureRmSqlDatabaseThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - DatabaseName $params.databaseName - StorageAccountName $params .storageAccount
159161 $policy = Get-AzureRmSqlDatabaseThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - DatabaseName $params.databaseName
160162 }
161163 finally
@@ -172,31 +174,26 @@ Tests sending invalid arguments in database's threat detection
172174function Test-InvalidArgumentsThreatDetection
173175{
174176 # Setup5
175- $testSuffix = 8025
177+ $testSuffix = 8027
176178 Create- TestEnvironment $testSuffix " Japan East" # Create-ThreatDetectionTestEnvironmentWithStorageV2 $testSuffix
177179 $params = Get-SqlAuditingTestEnvironmentParameters $testSuffix # Get-SqlThreatDetectionTestEnvironmentParameters $testSuffix
178180
179181 try
180182 {
181- # turning on threat detection without auditing
182- Assert-Throws {Set-AzureRmSqlDatabaseThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - DatabaseName $params.databaseName }
183+ # turning on threat detection without storage account
183184
184185 Set-AzureRmSqlDatabaseAuditingPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - DatabaseName $params.databaseName - StorageAccountName $params.storageAccount
185- Set-AzureRmSqlServerAuditingPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - StorageAccountName $params.storageAccount
186- Use-AzureRmSqlServerAuditingPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - DatabaseName $params.databaseName
187- Remove-AzureRmSqlServerAuditing - ResourceGroupName $params.rgname - ServerName $params.serverName
188186 Assert-Throws {Set-AzureRmSqlDatabaseThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - DatabaseName $params.databaseName }
189187
190188 # Check that NotificationRecipientsEmails are in correct format
191- Set-AzureRmSqlDatabaseAuditingPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - DatabaseName $params.databaseName - StorageAccountName $params.storageAccount
192189 Assert-Throws {Set-AzureRmSqlDatabaseThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - DatabaseName $params.databaseName - NotificationRecipientsEmails " kokogmail.com" }
193190
194191 # Check that EmailAdmins is not False and NotificationRecipientsEmails is not empty
195- Assert-Throws {Set-AzureRmSqlDatabaseThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - DatabaseName $params.databaseName - EmailAdmins $false }
196- Assert-Throws {Set-AzureRmSqlDatabaseThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - DatabaseName $params.databaseName - EmailAdmins $false - NotificationRecipientsEmails " " }
192+ Assert-Throws {Set-AzureRmSqlDatabaseThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - DatabaseName $params.databaseName - EmailAdmins $false - StorageAccountName $params .storageAccount }
193+ Assert-Throws {Set-AzureRmSqlDatabaseThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - DatabaseName $params.databaseName - EmailAdmins $false - NotificationRecipientsEmails " " - StorageAccountName $params .storageAccount }
197194
198195 # Check that ExcludedDetectionType doesn't hold None and any other type
199- Assert-Throws {Set-AzureRmSqlDatabaseThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - DatabaseName $params.databaseName - EmailAdmins $true - ExcludedDetectionType " None" , " Sql_Injection_Vulnerability" }
196+ Assert-Throws {Set-AzureRmSqlDatabaseThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - DatabaseName $params.databaseName - EmailAdmins $true - ExcludedDetectionType " None" , " Sql_Injection_Vulnerability" - StorageAccountName $params .storageAccount }
200197 }
201198 finally
202199 {
@@ -212,20 +209,19 @@ Tests that thread detection doesn't work on 2.0 servers
212209function Test-ThreatDetectionOnV2Server
213210{
214211 # Setup
215- $testSuffix = 5023
212+ $testSuffix = 5017
216213 Create- TestEnvironment $testSuffix " West Europe" " 2.0" # Create-ThreatDetectionTestEnvironmentWithStorageV2 $testSuffix "2.0"
217214 $params = Get-SqlAuditingTestEnvironmentParameters $testSuffix # Get-SqlThreatDetectionTestEnvironmentParameters $testSuffix
218215
219216 try
220217 {
221218 Set-AzureRmSqlDatabaseAuditingPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - DatabaseName $params.databaseName - StorageAccountName $params.storageAccount
222- Assert-Throws {Set-AzureRmSqlDatabaseThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - DatabaseName $params.databaseName }
223- Assert-Throws {Get-AzureRmSqlDatabaseThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - DatabaseName $params.databaseName }
219+ Assert-Throws {Set-AzureRmSqlDatabaseThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - DatabaseName $params.databaseName - StorageAccountName $params .storageAccount }
220+ Assert-Throws {Get-AzureRmSqlDatabaseThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - DatabaseName $params.databaseName - StorageAccountName $params .storageAccount }
224221
225222 Set-AzureRmSqlServerAuditingPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - StorageAccountName $params.storageAccount
226- Assert-Throws {Set-AzureRmSqlServerThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName }
227- Assert-Throws {Get-AzureRmSqlServerThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName }
228-
223+ Assert-Throws {Set-AzureRmSqlServerThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - StorageAccountName $params.storageAccount }
224+ Assert-Throws {Get-AzureRmSqlServerThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - StorageAccountName $params.storageAccount }
229225 }
230226 finally
231227 {
@@ -249,7 +245,7 @@ function Test-ThreatDetectionServerUpdatePolicy
249245 {
250246 # Test
251247 Set-AzureRmSqlServerAuditingPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - StorageAccountName $params.storageAccount
252- Set-AzureRmSqlServerThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - NotificationRecipientsEmails " koko@mailTest.com;koko1@mailTest.com" - EmailAdmins $false - ExcludedDetectionType Sql_Injection_Vulnerability
248+ Set-AzureRmSqlServerThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - NotificationRecipientsEmails " koko@mailTest.com;koko1@mailTest.com" - EmailAdmins $false - ExcludedDetectionType Sql_Injection_Vulnerability - StorageAccountName $params .storageAccount
253249 $policy = Get-AzureRmSqlServerThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName
254250
255251 # Assert
@@ -261,7 +257,7 @@ function Test-ThreatDetectionServerUpdatePolicy
261257
262258
263259 # Test
264- Set-AzureRmSqlServerThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - ExcludedDetectionType Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Usage_Anomaly
260+ Set-AzureRmSqlServerThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - ExcludedDetectionType Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Usage_Anomaly - StorageAccountName $params .storageAccount
265261 $policy = Get-AzureRmSqlServerThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName
266262
267263 # Assert
@@ -289,7 +285,7 @@ function Test-ThreatDetectionServerUpdatePolicy
289285 Assert-True {$policy.ExcludedDetectionTypes.Contains ([Microsoft.Azure.Commands.Sql.ThreatDetection.Model.DetectionType ]::Usage_Anomaly)}
290286
291287 # Test
292- Set-AzureRmSqlServerThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - ExcludedDetectionType None
288+ Set-AzureRmSqlServerThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName - ExcludedDetectionType None - StorageAccountName $params .storageAccount
293289 $policy = Get-AzureRmSqlServerThreatDetectionPolicy - ResourceGroupName $params.rgname - ServerName $params.serverName
294290
295291 # Assert
0 commit comments