Tests/Integration/MSFT_AdfsApplicationPermission.Config.ps1
<#
.SYNOPSIS AdfsApplicationPermission DSC Resource Integration Test Configuration .NOTES The AdfsApplicationPermission resource has a dependency on an AdfsApplicationGroup, AdfsNativeClientApplication and AdsWebApiApplication resource. #> #region HEADER # Integration Test Config Template Version: 1.2.1 #endregion $configFile = [System.IO.Path]::ChangeExtension($MyInvocation.MyCommand.Path, 'json') if (Test-Path -Path $configFile) { $ConfigurationData = Get-Content -Path $configFile | ConvertFrom-Json } else { $applicationIdentifier = 'e7bfb303-c5f6-4028-a360-b6293d41338c' $ConfigurationData = @{ AllNodes = @( @{ NodeName = 'localhost' CertificateFile = $env:DscPublicCertificatePath } ) AdfsApplicationGroup = @{ Name = 'DscAppGroup1' Description = "This is the AppGroup1 Description" Ensure = 'Present' } AdfsNativeClientApplication = @{ Name = 'DscNativeClientApplication1' Description = 'This is the DscNativeClientApplication1 Description' Identifier = $applicationIdentifier RedirectUri = 'https://nativeapp1.contoso.com' } AdfsWebApiApplication = @{ Name = 'DscWebApiApplication1' Description = 'This is the DscWebApiApplication1 Description' Identifier = $applicationIdentifier AccessControlPolicyName = 'Permit Everyone' } AdfsApplicationPermission = @{ ClientRoleIdentifier = $applicationIdentifier ServerRoleIdentifier = $applicationIdentifier Description = 'This is the DscApplicationPermission Description' ScopeNames = 'openid' } } } Configuration MSFT_AdfsApplicationPermission_Init_Config { <# .SYNOPSIS Initialises the Integration test resources #> Import-DscResource -ModuleName 'AdfsDsc' node $AllNodes.NodeName { AdfsApplicationGroup 'Integration_Test' { Name = $ConfigurationData.AdfsApplicationGroup.Name Ensure = 'Absent' } } } Configuration MSFT_AdfsApplicationPermission_Config { <# .SYNOPSIS Manages an ADFS Application Group and AdfsApplicationPermission #> Import-DscResource -ModuleName 'AdfsDsc' node $AllNodes.NodeName { AdfsApplicationGroup 'Integration_Test' { Name = $ConfigurationData.AdfsApplicationGroup.Name Description = $ConfigurationData.AdfsApplicationGroup.Description } AdfsNativeClientApplication 'Integration_Test' { Name = $ConfigurationData.AdfsNativeClientApplication.Name Description = $ConfigurationData.AdfsNativeClientApplication.Description ApplicationGroupIdentifier = $ConfigurationData.AdfsApplicationGroup.Name Identifier = $ConfigurationData.AdfsNativeClientApplication.Identifier RedirectUri = $ConfigurationData.AdfsNativeClientApplication.RedirectUri } AdfsWebApiApplication 'Integration_Test' { Name = $ConfigurationData.AdfsWebApiApplication.Name Description = $ConfigurationData.AdfsWebApiApplication.Description ApplicationGroupIdentifier = $ConfigurationData.AdfsApplicationGroup.Name Identifier = $ConfigurationData.AdfsWebApiApplication.Identifier AccessControlPolicyName = $ConfigurationData.AdfsWebApiApplication.AccessControlPolicyName } AdfsApplicationPermission 'Integration_Test' { ClientRoleIdentifier = $ConfigurationData.AdfsApplicationPermission.ClientRoleIdentifier ServerRoleIdentifier = $ConfigurationData.AdfsApplicationPermission.ServerRoleIdentifier Description = $ConfigurationData.AdfsApplicationPermission.Description ScopeNames = $ConfigurationData.AdfsApplicationPermission.ScopeNames } } } |