Skip to content

Commit 00e1b42

Browse files
authored
AdcsAuthorityInformationAccess: Always makes a change #128, #138 (#141)
1 parent 60f9961 commit 00e1b42

File tree

5 files changed

+29
-22
lines changed

5 files changed

+29
-22
lines changed

CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1818
- Azure Pipelines - Reverted `PublishCodeCoverageResults` back to v1 to display line level coverage in ADO.
1919
- `Tests` - Added tests for catch blocks in `AdcsCertificationAuthority`, `AcdsOnlineResponder`, `AdcsWebEnrollment`.
2020
- `Tests` - Migrate all tests to Pester 5
21+
- AdcsAuthorityInformationAccess
22+
- Removed `AllowRestartService` parameter from compared settings, force `Get-CaAiaUriList`
23+
to return unmangled `System.String[]` with single values.
24+
Fixes [Issue #128](https://github.com/dsccommunity/ActiveDirectoryCSDsc/issues/128)
25+
Fixes [Issue #138](https://github.com/dsccommunity/ActiveDirectoryCSDsc/issues/138).
2126

2227
## [5.0.0] - 2020-06-20
2328

azure-pipelines.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ stages:
2727
vmImage: 'windows-latest'
2828
steps:
2929
- pwsh: |
30-
dotnet tool install --global GitVersion.Tool
30+
dotnet tool install --global GitVersion.Tool --version 5.*
3131
$gitVersionObject = dotnet-gitversion | ConvertFrom-Json
3232
$gitVersionObject.PSObject.Properties.ForEach{
3333
Write-Host -Object "Setting Task Variable '$($_.Name)' with value '$($_.Value)'."

build.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -174,7 +174,7 @@ DscResource.DocGenerator:
174174
- '\*(.+?)\*' # Match Italic (asterisk)
175175
Publish_GitHub_Wiki_Content:
176176
Debug: false
177-
Generate_Wiki_Content:
177+
Generate_Markdown_For_DSC_Resources:
178178
MofResourceMetadata:
179179
Type: MofResource
180180
Category: Resources

source/DSCResources/DSC_AdcsAuthorityInformationAccess/DSC_AdcsAuthorityInformationAccess.psm1

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,9 @@ function Get-TargetResource
3232
Write-Verbose -Message $script:localizedData.GettingAdcsAiaMessage
3333

3434
return @{
35-
IsSingleInstance = 'Yes'
36-
AiaUri = Get-CaAiaUriList -ExtensionType 'AddToCertificateAia'
37-
OcspUri = Get-CaAiaUriList -ExtensionType 'AddToCertificateOcsp'
35+
IsSingleInstance = 'Yes'
36+
AiaUri = [System.String[]] (Get-CaAiaUriList -ExtensionType 'AddToCertificateAia')
37+
OcspUri = [System.String[]] (Get-CaAiaUriList -ExtensionType 'AddToCertificateOcsp')
3838
AllowRestartService = $false
3939
}
4040
} # function Get-TargetResource
@@ -204,11 +204,13 @@ function Test-TargetResource
204204
-IsSingleInstance $IsSingleInstance `
205205
-Verbose:$VerbosePreference
206206

207-
$null = $PSBoundParameters.Remove('IsSingleInstance')
208-
209207
return Test-DscParameterState `
210208
-CurrentValues $currentSettings `
211209
-DesiredValues $PSBoundParameters `
210+
-ExcludeProperties @(
211+
'IsSingleInstance'
212+
'AllowRestartService'
213+
) `
212214
-Verbose:$VerbosePreference
213215
} # function Test-TargetResource
214216

@@ -228,11 +230,11 @@ function Get-CaAiaUriList
228230
param
229231
(
230232
[Parameter(Mandatory = $true)]
231-
[ValidateSet('AddToCertificateAia','AddToCertificateOcsp')]
233+
[ValidateSet('AddToCertificateAia', 'AddToCertificateOcsp')]
232234
$ExtensionType
233235
)
234236

235237
Write-Verbose -Message ($script:localizedData.GettingAiaUrisMessage -f $ExtensionType)
236238

237-
return [System.String[]] (Get-CAAuthorityInformationAccess | Where-Object -Property $ExtensionType -Eq $true).Uri
239+
return (Get-CAAuthorityInformationAccess | Where-Object -Property $ExtensionType -Eq $true).Uri
238240
}

tests/Unit/DSC_AdcsAuthorityInformationAccess.Tests.ps1

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -249,13 +249,13 @@ Describe 'DSC_AdcsAuthorityInformationAccess\Set-TargetResource' -Tag 'Set' {
249249
}
250250
}
251251

252-
Context 'When AIA and OCSP are passed but OCSP is missing a URI' {
252+
Context 'When AIA and OCSP are passed but AIA is missing a URI' {
253253
BeforeAll {
254254
InModuleScope -ScriptBlock {
255255

256256
$script:setTargetResourceParameters = @{
257257
IsSingleInstance = 'Yes'
258-
AiaUri = $AiaList + ('http://tertiary/Certs/<CATruncatedName>.cer')
258+
AiaUri = $AiaList + @('http://tertiary/Certs/<CATruncatedName>.cer')
259259
OcspUri = $OcspList
260260
AllowRestartService = $true
261261
}
@@ -301,7 +301,7 @@ Describe 'DSC_AdcsAuthorityInformationAccess\Set-TargetResource' -Tag 'Set' {
301301
}
302302
}
303303

304-
Context 'When AIA and OCSP are passed but AIA is missing a URI' {
304+
Context 'When AIA and OCSP are passed but OCSP is missing a URI' {
305305
BeforeAll {
306306
InModuleScope -ScriptBlock {
307307
$script:setTargetResourceParameters = @{
@@ -352,7 +352,7 @@ Describe 'DSC_AdcsAuthorityInformationAccess\Set-TargetResource' -Tag 'Set' {
352352
}
353353
}
354354

355-
Context 'When AIA and OCSP are passed but OCSP has an extra URI' {
355+
Context 'When AIA and OCSP are passed but AIA has an extra URI' {
356356
BeforeAll {
357357
InModuleScope -ScriptBlock {
358358
$script:setTargetResourceParameters = @{
@@ -403,7 +403,7 @@ Describe 'DSC_AdcsAuthorityInformationAccess\Set-TargetResource' -Tag 'Set' {
403403
}
404404
}
405405

406-
Context 'When AIA and OCSP are passed but AIA has an extra URI' {
406+
Context 'When AIA and OCSP are passed but OCSP has an extra URI' {
407407
BeforeAll {
408408
InModuleScope -ScriptBlock {
409409
$script:setTargetResourceParameters = @{
@@ -761,7 +761,7 @@ Describe 'DSC_AdcsAuthorityInformationAccess\Test-TargetResource' -Tag 'Test' {
761761
InModuleScope -ScriptBlock {
762762
$script:testTargetResourceParameters = @{
763763
IsSingleInstance = 'Yes'
764-
AiaUri = $AiaList + ('http://tertiary/Certs/<CATruncatedName>.cer')
764+
AiaUri = $AiaList + @('http://tertiary/Certs/<CATruncatedName>.cer')
765765
OcspUri = $OcspList
766766
AllowRestartService = $false
767767
}
@@ -800,7 +800,7 @@ Describe 'DSC_AdcsAuthorityInformationAccess\Test-TargetResource' -Tag 'Test' {
800800
BeforeAll {
801801
$script:testTargetResourceParameters = @{
802802
IsSingleInstance = 'Yes'
803-
AiaUri = $AiaList + ('http://tertiary/Certs/<CATruncatedName>.cer')
803+
AiaUri = $AiaList + @('http://tertiary/Certs/<CATruncatedName>.cer')
804804
OcspUri = $OcspList + @('http://tertiary-ocsp-responder/ocsp')
805805
AllowRestartService = $false
806806
}
@@ -1068,7 +1068,7 @@ Describe 'DSC_AdcsAuthorityInformationAccess\Get-CaAiaUriList' {
10681068
}
10691069
}
10701070

1071-
Context 'When ExtensionType is AddToCertificateAia and there is AddToCertificateAia URI and one AddToCertificateOcsp URI' {
1071+
Context 'When ExtensionType is AddToCertificateAia and there is one AddToCertificateAia URI and one AddToCertificateOcsp URI' {
10721072
BeforeAll {
10731073
$getCAAuthorityInformationAccessMock = {
10741074
@(
@@ -1100,7 +1100,7 @@ Describe 'DSC_AdcsAuthorityInformationAccess\Get-CaAiaUriList' {
11001100
}
11011101
}
11021102

1103-
It 'Should return null' {
1103+
It 'Should return one entry' {
11041104
InModuleScope -ScriptBlock {
11051105
Set-StrictMode -Version 1.0
11061106

@@ -1115,7 +1115,7 @@ Describe 'DSC_AdcsAuthorityInformationAccess\Get-CaAiaUriList' {
11151115
}
11161116
}
11171117

1118-
Context 'When ExtensionType is AddToCertificateAia and there is AddToCertificateAia URI and two AddToCertificateOcsp URIs' {
1118+
Context 'When ExtensionType is AddToCertificateAia and there is two AddToCertificateAia URI and one AddToCertificateOcsp URIs' {
11191119
BeforeAll {
11201120
$getCAAuthorityInformationAccessMock = {
11211121
@(
@@ -1152,7 +1152,7 @@ Describe 'DSC_AdcsAuthorityInformationAccess\Get-CaAiaUriList' {
11521152
}
11531153
}
11541154

1155-
It 'Should return null' {
1155+
It 'Should return two entries' {
11561156
InModuleScope -ScriptBlock {
11571157
Set-StrictMode -Version 1.0
11581158

@@ -1168,7 +1168,7 @@ Describe 'DSC_AdcsAuthorityInformationAccess\Get-CaAiaUriList' {
11681168
}
11691169
}
11701170

1171-
Context 'When ExtensionType is AddToCertificateOcsp and there are only AddToCertificateAia URIs' {
1171+
Context 'When ExtensionType is AddToCertificateAia and there are only AddToCertificateAia URIs' {
11721172
BeforeAll {
11731173
$getCAAuthorityInformationAccessMock = {
11741174
@(
@@ -1242,7 +1242,7 @@ Describe 'DSC_AdcsAuthorityInformationAccess\Get-CaAiaUriList' {
12421242
}
12431243
}
12441244

1245-
It 'Should return null' {
1245+
It 'Should return one OCSP entry' {
12461246
InModuleScope -ScriptBlock {
12471247
Set-StrictMode -Version 1.0
12481248

0 commit comments

Comments
 (0)