Skip to content

Commit 703e112

Browse files
clean up some AI sloppiness
1 parent b66b178 commit 703e112

1 file changed

Lines changed: 59 additions & 75 deletions

File tree

Modules/CIPPCore/Public/Entrypoints/HTTP Functions/CIPP/Settings/Invoke-ExecPasswordConfig.ps1

Lines changed: 59 additions & 75 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
Function Invoke-ExecPasswordConfig {
1+
function Invoke-ExecPasswordConfig {
22
<#
33
.FUNCTIONALITY
44
Entrypoint
@@ -14,42 +14,30 @@ Function Invoke-ExecPasswordConfig {
1414
$PasswordSettings = Get-CIPPAzDataTableEntity @Table -Filter "PartitionKey eq 'settings' and RowKey eq 'settings'"
1515

1616
# Helper functions for consistent data conversion
17-
function ConvertTo-BoolString ($raw) {
18-
if ($null -eq $raw) { return $false }
19-
$stringValue = "$raw"
20-
return ($stringValue -eq 'true' -or $stringValue -eq '1' -or $stringValue -eq 'yes')
21-
}
22-
2317
function ConvertTo-Bool ($raw) {
2418
if ($null -eq $raw) { return $false }
2519
$stringValue = "$raw"
2620
return ($stringValue -eq 'true' -or $stringValue -eq '1' -or $stringValue -eq 'yes')
2721
}
2822

29-
function Test-RequestBody ($body) {
30-
if (-not $body) { return $false }
31-
if ($body -is [string] -or $body -is [array]) { return $false }
32-
return $true
33-
}
34-
3523

3624
$results = try {
3725
if ($Request.Query.List) {
3826
if (-not $PasswordSettings) {
3927
# Return default values if not set
4028
@{
41-
passwordType = 'Classic'
42-
charCount = 14
43-
includeUppercase = $true
44-
includeLowercase = $true
45-
includeDigits = $true
29+
passwordType = 'Classic'
30+
charCount = 14
31+
includeUppercase = $true
32+
includeLowercase = $true
33+
includeDigits = $true
4634
includeSpecialChars = $true
47-
specialCharSet = '$%&*#'
48-
wordCount = 4
49-
separator = '-'
50-
capitalizeWords = $false
51-
appendNumber = $false
52-
appendSpecialChar = $false
35+
specialCharSet = '$%&*#'
36+
wordCount = 4
37+
separator = '-'
38+
capitalizeWords = $false
39+
appendNumber = $false
40+
appendSpecialChar = $false
5341
}
5442
} else {
5543
# Migrate legacy 'Correct-Battery-Horse' type to 'Passphrase'
@@ -60,37 +48,37 @@ Function Invoke-ExecPasswordConfig {
6048
}
6149

6250
$resolvedConfig = @{
63-
passwordType = $storedType
64-
charCount = if ($PasswordSettings.charCount -and [int]::TryParse("$($PasswordSettings.charCount)", [ref]$null)) { [int]$PasswordSettings.charCount } else { 14 }
65-
includeUppercase = if ($null -ne $PasswordSettings.includeUppercase) { ConvertTo-Bool $PasswordSettings.includeUppercase } else { $true }
66-
includeLowercase = if ($null -ne $PasswordSettings.includeLowercase) { ConvertTo-Bool $PasswordSettings.includeLowercase } else { $true }
67-
includeDigits = if ($null -ne $PasswordSettings.includeDigits) { ConvertTo-Bool $PasswordSettings.includeDigits } else { $true }
51+
passwordType = $storedType
52+
charCount = if ($PasswordSettings.charCount -and [int]::TryParse("$($PasswordSettings.charCount)", [ref]$null)) { [int]$PasswordSettings.charCount } else { 14 }
53+
includeUppercase = if ($null -ne $PasswordSettings.includeUppercase) { ConvertTo-Bool $PasswordSettings.includeUppercase } else { $true }
54+
includeLowercase = if ($null -ne $PasswordSettings.includeLowercase) { ConvertTo-Bool $PasswordSettings.includeLowercase } else { $true }
55+
includeDigits = if ($null -ne $PasswordSettings.includeDigits) { ConvertTo-Bool $PasswordSettings.includeDigits } else { $true }
6856
includeSpecialChars = if ($null -ne $PasswordSettings.includeSpecialChars) { ConvertTo-Bool $PasswordSettings.includeSpecialChars } else { $true }
69-
specialCharSet = if ($PasswordSettings.specialCharSet) { $PasswordSettings.specialCharSet } else { '$%&*#' }
70-
wordCount = if ($PasswordSettings.wordCount -and [int]::TryParse("$($PasswordSettings.wordCount)", [ref]$null)) { [int]$PasswordSettings.wordCount } else { 4 }
71-
separator = if ($null -ne $PasswordSettings.separator) { $PasswordSettings.separator } else { '-' }
72-
capitalizeWords = if ($null -ne $PasswordSettings.capitalizeWords) { ConvertTo-Bool $PasswordSettings.capitalizeWords } else { $false }
73-
appendNumber = if ($null -ne $PasswordSettings.appendNumber) { ConvertTo-Bool $PasswordSettings.appendNumber } else { $false }
74-
appendSpecialChar = if ($null -ne $PasswordSettings.appendSpecialChar) { ConvertTo-Bool $PasswordSettings.appendSpecialChar } else { $false }
57+
specialCharSet = if ($PasswordSettings.specialCharSet) { $PasswordSettings.specialCharSet } else { '$%&*#' }
58+
wordCount = if ($PasswordSettings.wordCount -and [int]::TryParse("$($PasswordSettings.wordCount)", [ref]$null)) { [int]$PasswordSettings.wordCount } else { 4 }
59+
separator = if ($null -ne $PasswordSettings.separator) { $PasswordSettings.separator } else { '-' }
60+
capitalizeWords = if ($null -ne $PasswordSettings.capitalizeWords) { ConvertTo-Bool $PasswordSettings.capitalizeWords } else { $false }
61+
appendNumber = if ($null -ne $PasswordSettings.appendNumber) { ConvertTo-Bool $PasswordSettings.appendNumber } else { $false }
62+
appendSpecialChar = if ($null -ne $PasswordSettings.appendSpecialChar) { ConvertTo-Bool $PasswordSettings.appendSpecialChar } else { $false }
7563
}
7664

7765
# Persist migrated config so legacy type is upgraded in storage
7866
if ($needsMigration) {
7967
$MigratedEntity = @{
80-
'PartitionKey' = 'settings'
81-
'RowKey' = 'settings'
82-
'passwordType' = $resolvedConfig.passwordType
83-
'charCount' = "$($resolvedConfig.charCount)"
84-
'includeUppercase' = $resolvedConfig.includeUppercase
85-
'includeLowercase' = $resolvedConfig.includeLowercase
86-
'includeDigits' = $resolvedConfig.includeDigits
68+
'PartitionKey' = 'settings'
69+
'RowKey' = 'settings'
70+
'passwordType' = $resolvedConfig.passwordType
71+
'charCount' = "$($resolvedConfig.charCount)"
72+
'includeUppercase' = $resolvedConfig.includeUppercase
73+
'includeLowercase' = $resolvedConfig.includeLowercase
74+
'includeDigits' = $resolvedConfig.includeDigits
8775
'includeSpecialChars' = $resolvedConfig.includeSpecialChars
88-
'specialCharSet' = $resolvedConfig.specialCharSet
89-
'wordCount' = "$($resolvedConfig.wordCount)"
90-
'separator' = $resolvedConfig.separator
91-
'capitalizeWords' = $resolvedConfig.capitalizeWords
92-
'appendNumber' = $resolvedConfig.appendNumber
93-
'appendSpecialChar' = $resolvedConfig.appendSpecialChar
76+
'specialCharSet' = $resolvedConfig.specialCharSet
77+
'wordCount' = "$($resolvedConfig.wordCount)"
78+
'separator' = $resolvedConfig.separator
79+
'capitalizeWords' = $resolvedConfig.capitalizeWords
80+
'appendNumber' = $resolvedConfig.appendNumber
81+
'appendSpecialChar' = $resolvedConfig.appendSpecialChar
9482
}
9583
Add-CIPPAzDataTableEntity @Table -Entity $MigratedEntity -Force | Out-Null
9684
Write-LogMessage -headers $Request.Headers -API $APIName -message "Migrated legacy password type 'Correct-Battery-Horse' to 'Passphrase'" -Sev 'Info'
@@ -99,11 +87,7 @@ Function Invoke-ExecPasswordConfig {
9987
$resolvedConfig
10088
}
10189
} else {
102-
# ── Validate request body ────────────────────────────────────────
103-
if (-not (Test-RequestBody $Request.Body)) {
104-
$StatusCode = [HttpStatusCode]::BadRequest
105-
throw 'Request body must be a valid JSON object'
106-
}
90+
10791

10892
# Password type validation
10993
$pwType = if ($null -ne $Request.Body.passwordType) { "$($Request.Body.passwordType)" } else { '' }
@@ -116,13 +100,13 @@ Function Invoke-ExecPasswordConfig {
116100
throw 'Please select a valid password type (Classic or Passphrase)'
117101
}
118102

119-
$includeUppercase = ConvertTo-Bool $Request.Body.includeUppercase
120-
$includeLowercase = ConvertTo-Bool $Request.Body.includeLowercase
121-
$includeDigits = ConvertTo-Bool $Request.Body.includeDigits
103+
$includeUppercase = ConvertTo-Bool $Request.Body.includeUppercase
104+
$includeLowercase = ConvertTo-Bool $Request.Body.includeLowercase
105+
$includeDigits = ConvertTo-Bool $Request.Body.includeDigits
122106
$includeSpecialChars = ConvertTo-Bool $Request.Body.includeSpecialChars
123-
$capitalizeWords = ConvertTo-Bool $Request.Body.capitalizeWords
124-
$appendNumber = ConvertTo-Bool $Request.Body.appendNumber
125-
$appendSpecialChar = ConvertTo-Bool $Request.Body.appendSpecialChar
107+
$capitalizeWords = ConvertTo-Bool $Request.Body.capitalizeWords
108+
$appendNumber = ConvertTo-Bool $Request.Body.appendNumber
109+
$appendSpecialChar = ConvertTo-Bool $Request.Body.appendSpecialChar
126110

127111
# Char count validation (classic only)
128112
$charCount = 0
@@ -235,25 +219,25 @@ Function Invoke-ExecPasswordConfig {
235219

236220
# ── Persist validated config ──────────────────────────────────────
237221
$PasswordConfig = @{
238-
'PartitionKey' = 'settings'
239-
'RowKey' = 'settings'
240-
'passwordType' = $pwType
241-
'charCount' = "$charCount"
242-
'includeUppercase' = $includeUppercase
243-
'includeLowercase' = $includeLowercase
244-
'includeDigits' = $includeDigits
222+
'PartitionKey' = 'settings'
223+
'RowKey' = 'settings'
224+
'passwordType' = $pwType
225+
'charCount' = "$charCount"
226+
'includeUppercase' = $includeUppercase
227+
'includeLowercase' = $includeLowercase
228+
'includeDigits' = $includeDigits
245229
'includeSpecialChars' = $includeSpecialChars
246-
'specialCharSet' = $specialCharSet
247-
'wordCount' = "$wordCount"
248-
'separator' = $separator
249-
'capitalizeWords' = $capitalizeWords
250-
'appendNumber' = $appendNumber
251-
'appendSpecialChar' = $appendSpecialChar
230+
'specialCharSet' = $specialCharSet
231+
'wordCount' = "$wordCount"
232+
'separator' = $separator
233+
'capitalizeWords' = $capitalizeWords
234+
'appendNumber' = $appendNumber
235+
'appendSpecialChar' = $appendSpecialChar
252236
}
253237

254238
Add-CIPPAzDataTableEntity @Table -Entity $PasswordConfig -Force | Out-Null
255-
Write-LogMessage -headers $Request.Headers -API $APIName -message "Successfully set password configuration" -Sev 'Info'
256-
"Successfully set the configuration"
239+
Write-LogMessage -headers $Request.Headers -API $APIName -message 'Successfully set password configuration' -Sev 'Info'
240+
'Successfully set the configuration'
257241
}
258242
} catch {
259243
if ($StatusCode -eq [HttpStatusCode]::OK) {
@@ -264,7 +248,7 @@ Function Invoke-ExecPasswordConfig {
264248
"Failed to set configuration: $($ErrorMessage.NormalizedError)"
265249
}
266250

267-
$body = [pscustomobject]@{'Results' = if ($null -ne $results) { $results } else { "Operation completed" } }
251+
$body = [pscustomobject]@{'Results' = if ($null -ne $results) { $results } else { 'Operation completed' } }
268252

269253
return ([HttpResponseContext]@{
270254
StatusCode = $StatusCode

0 commit comments

Comments
 (0)