Skip to content

Commit 117f865

Browse files
authored
added more param names and some exceptions (#523)
1 parent 26132e3 commit 117f865

File tree

1 file changed

+26
-6
lines changed

1 file changed

+26
-6
lines changed

arm-ttk/testcases/deploymentTemplate/Password-params-must-be-secure.test.ps1

+26-6
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@
99
.\Password-params-must-be-secure.test.ps1 -TemplateObject (Get-Content ..\..\..\unit-tests\Password-params-must-be-secure.test.json -Raw | ConvertFrom-Json)
1010
#>
1111
param(
12-
[Parameter(Mandatory=$true,Position=0)]
13-
[PSObject]
14-
$TemplateObject
12+
[Parameter(Mandatory = $true, Position = 0)]
13+
[PSObject]
14+
$TemplateObject
1515
)
1616

1717
<#
@@ -33,11 +33,31 @@ foreach ($parameter in $templateObject.parameters.psobject.properties) {
3333
$name = $parameter.name
3434

3535
# using a name matching pattern to decide if this should be secured or not
36-
if($name -like "*password*"){
36+
if ($name -like "*password*" -or
37+
$name -like "*secret*" -or
38+
$name -like "*accountkey*") {
3739
# if it's not secure, flag it
40+
3841
if ($type -ne 'securestring' -and $type -ne 'secureobject') {
39-
Write-Error -Message "Parameter `"$name`" is of type `"$type`" but should be secure." -ErrorId Password.Param.Not.Secure -TargetObject $parameter
40-
}
42+
#except certain patterns we know about in ARM
43+
# secret + Permissions (keyVault secret perms is an accessPolicy property)
44+
# secret + Version (url or simply the version property of a secret)
45+
# secret + url
46+
# secret + name
47+
if ($name -like "*secret*" -and
48+
($name -like "*permission*" -or
49+
$name -like "*version*" -or
50+
$name -like "*url*" -or
51+
$name -like "*uri*" -or
52+
$name -like "*name*")
53+
)
54+
{
55+
Write-Warning "Skipping parameter `"$name`""
56+
}
57+
else {
58+
Write-Error -Message "Parameter `"$name`" is of type `"$type`" but should be secure." -ErrorId Password.Param.Not.Secure -TargetObject $parameter
59+
}
60+
}
4161
}
4262
}
4363

0 commit comments

Comments
 (0)