Skip to content

Commit

Permalink
Merge pull request #4946 from microsoft/Dev
Browse files Browse the repository at this point in the history
Release 1.24.731.1
  • Loading branch information
NikCharlebois authored Aug 1, 2024
2 parents 52a42d0 + 7c2cb99 commit 3b3e152
Show file tree
Hide file tree
Showing 10 changed files with 76 additions and 33 deletions.
25 changes: 24 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,26 @@
# Change log for Microsoft365DSC

# 1.24.731.1

* AADAuthenticationMethodPolicyFido2
* Add missing class identifier to schema.
FIXES [#4900](https://github.com/microsoft/Microsoft365DSC/issues/4900)
FIXES [#4079](https://github.com/microsoft/Microsoft365DSC/issues/4079)
* IntuneAntivirusPolicyWindows10SettingCatalog
* Fixes an issue where the template reference is not set correctly.
FIXES [#4925](https://github.com/microsoft/Microsoft365DSC/issues/4925)
* IntuneDeviceConfigurationEndpointProtectionPolicyWindows10
* Fix compiling if `ProfileTypes` (in `FirewallRules`) is present and contains
more than one value
FIXES [#4936](https://github.com/microsoft/Microsoft365DSC/issues/4936)
* IntuneDeviceConfigurationPolicyiOS
* Fix export of property NetworkUsageRules
FIXES [#4934](https://github.com/microsoft/Microsoft365DSC/issues/4934)
* MISC
* M365DSCReport
* Update key properties for delta report in `AADGroup` resource.
FIXES [#4921](https://github.com/microsoft/Microsoft365DSC/issues/4921)

# 1.24.724.1

* IntuneAntivirusPolicyWindows10SettingCatalog
Expand All @@ -9,7 +30,7 @@
FIXES [#3966](https://github.com/microsoft/Microsoft365DSC/issues/3966)
* IntuneEndpointDetectionAndResponsePolicyLinux
* Initial release.
* IntuneEndointDetectionAndResponsePolicyMacOS
* IntuneEndpointDetectionAndResponsePolicyMacOS
* Initial release.
* IntuneWindowsUpdateForBusinessFeatureUpdateProfileWindows10
* Introduces new properties and updates the handling of the
Expand All @@ -20,6 +41,8 @@
* Fixes an issue where only 25 settings catalog templates were fetched with one call.
* SPOSharingSettings
* Changed approach to MySite filtering.
* DEPENDENCIES
* Updated DSCParser to version 2.0.0.8.

# 1.24.717.1

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ class MSFT_AADAuthenticationMethodPolicyFido2ExcludeTarget
[Write, Description("The object identifier of an Azure AD group.")] String Id;
[Write, Description("The type of the authentication method target. Possible values are: group and unknownFutureValue."), ValueMap{"user","group","unknownFutureValue"}, Values{"user","group","unknownFutureValue"}] String TargetType;
};

[ClassVersion("1.0.0")]
class MSFT_AADAuthenticationMethodPolicyFido2IncludeTarget
{
[Write, Description("The object identifier of an Azure AD group.")] String Id;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -409,7 +409,7 @@ function Get-TargetResource
$AccessTokens
)

try
try
{
Write-Verbose -Message "Checking for the Intune Endpoint Protection Policy {$DisplayName}"

Expand Down Expand Up @@ -955,7 +955,7 @@ function Set-TargetResource
$createParameters = @{
Name = $DisplayName
Description = $Description
TemplateReferenceId = @{ templateId = $templateReferenceId }
TemplateReference = @{ templateId = $templateReferenceId }
Platforms = $platforms
Technologies = $technologies
Settings = $settings
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1057,7 +1057,11 @@ function Get-TargetResource
{
$getValue = Get-MgBetaDeviceManagementDeviceConfiguration `
-Filter "DisplayName eq '$DisplayName'" `
-ErrorAction SilentlyContinue
-ErrorAction SilentlyContinue | Where-Object `
-FilterScript {
$_.AdditionalProperties.'@odata.type' -eq '#microsoft.graph.windows10EndpointProtectionConfiguration'
}

if ($null -eq $getValue)
{
Write-Verbose -Message "Could not find an Intune Device Configuration Endpoint Protection Policy for Windows10 with DisplayName {$DisplayName}"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,7 @@ class MSFT_MicrosoftGraphWindowsFirewallRule
[Write, Description("List of local port ranges. For example, '100-120', '200', '300-320'. If not specified, the default is All.")] String LocalPortRanges[];
[Write, Description("Specifies the list of authorized local users for the app container. This is a string in Security Descriptor Definition Language (SDDL) format.")] String LocalUserAuthorizations;
[Write, Description("The package family name of a Microsoft Store application that's affected by the firewall rule.")] String PackageFamilyName;
[Write, Description("Specifies the profiles to which the rule belongs. If not specified, the default is All. Possible values are: notConfigured, domain, private, public."), ValueMap{"notConfigured","domain","private","public"}, Values{"notConfigured","domain","private","public"}] String ProfileTypes;
[Write, Description("Specifies the profiles to which the rule belongs. If not specified, the default is All. Possible values are: notConfigured, domain, private, public.")] String ProfileTypes;
[Write, Description("0-255 number representing the IP protocol (TCP = 6, UDP = 17). If not specified, the default is All. Valid values 0 to 255")] UInt32 Protocol;
[Write, Description("List of tokens specifying the remote addresses covered by the rule. Tokens are case insensitive. Default is any address. Valid tokens include:'' indicates any remote address. If present, this must be the only token included.'Defaultgateway''DHCP''DNS''WINS''Intranet' (supported on Windows versions 1809+)'RmtIntranet' (supported on Windows versions 1809+)'Internet' (supported on Windows versions 1809+)'Ply2Renders' (supported on Windows versions 1809+)'LocalSubnet' indicates any local address on the local subnet.A subnet can be specified using either the subnet mask or network prefix notation. If neither a subnet mask nor a network prefix is specified, the subnet mask defaults to 255.255.255.255.A valid IPv6 address.An IPv4 address range in the format of 'start address - end address' with no spaces included.An IPv6 address range in the format of 'start address - end address' with no spaces included.")] String RemoteAddressRanges[];
[Write, Description("List of remote port ranges. For example, '100-120', '200', '300-320'. If not specified, the default is All.")] String RemotePortRanges[];
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1048,7 +1048,7 @@ function Get-TargetResource

$complexAppsSingleAppModeList = @()
$currentValueArray = $getValue.AdditionalProperties.appsSingleAppModeList
if ($null -ne $currentValueArray -and $currentValueArray.count -gt 0 )
if ($null -ne $currentValueArray -and $currentValueArray.count -gt 0)
{
foreach($currentValue in $currentValueArray)
{
Expand All @@ -1065,7 +1065,7 @@ function Get-TargetResource

$complexAppsVisibilityList= @()
$currentValueArray = $getValue.AdditionalProperties.appsVisibilityList
if ($null -ne $currentValueArray -and $currentValueArray.count -gt 0 )
if ($null -ne $currentValueArray -and $currentValueArray.count -gt 0)
{
foreach($currentValue in $currentValueArray)
{
Expand All @@ -1082,7 +1082,7 @@ function Get-TargetResource

$complexCompliantAppsList = @()
$currentValueArray = $getValue.AdditionalProperties.compliantAppsList
if ($null -ne $currentValueArray -and $currentValueArray.count -gt 0 )
if ($null -ne $currentValueArray -and $currentValueArray.count -gt 0)
{
foreach($currentValue in $currentValueArray)
{
Expand Down Expand Up @@ -1130,7 +1130,7 @@ function Get-TargetResource

$complexNetworkUsageRules = @()
$currentValueArray = $getValue.AdditionalProperties.networkUsageRules
if ($null -ne $currentValueArray -and $currentValueArray.count -gt 0 )
if ($null -ne $currentValueArray -and $currentValueArray.count -gt 0)
{
foreach($currentValue in $currentValueArray)
{
Expand All @@ -1139,7 +1139,7 @@ function Get-TargetResource
$currentValueHash.Add('CellularDataBlockWhenRoaming',$currentValue.cellularDataBlockWhenRoaming)
$complexManagedApps = @()
$currentValueChildArray = $currentValue.managedApps
if ($null -ne $currentValueChildArray -and $currentValueChildArray.count -gt 0 )
if ($null -ne $currentValueChildArray -and $currentValueChildArray.count -gt 0)
{
foreach($currentChildValue in $currentValueChildArray)
{
Expand Down Expand Up @@ -3332,6 +3332,16 @@ function Export-TargetResource
$currentDSCBlock = Convert-DSCStringParamToVariable -DSCBlock $currentDSCBlock -ParameterName 'MediaContentRatingUnitedStates'
}

if ($Results.NetworkUsageRules)
{
$isCIMArray = $false
if ($Results.NetworkUsageRules.getType().Fullname -like '*[[\]]')
{
$isCIMArray = $true
}
$currentDSCBlock = Convert-DSCStringParamToVariable -DSCBlock $currentDSCBlock -ParameterName 'NetworkUsageRules' -IsCIMArray:$isCIMArray
}

if ($Results.Assignments)
{
$isCIMArray = $false
Expand Down
2 changes: 1 addition & 1 deletion Modules/Microsoft365DSC/Dependencies/Manifest.psd1
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
Dependencies = @(
@{
ModuleName = 'DSCParser'
RequiredVersion = '2.0.0.7'
RequiredVersion = '2.0.0.8'
},
@{
ModuleName = 'ExchangeOnlineManagement'
Expand Down
42 changes: 22 additions & 20 deletions Modules/Microsoft365DSC/Microsoft365DSC.psd1
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,15 @@
#
# Generated by: Microsoft Corporation
#
# Generated on: 2024-07-24
# Generated on: 2024-08-01

@{

# Script module or binary module file associated with this manifest.
# RootModule = ''

# Version number of this module.
ModuleVersion = '1.24.724.1'
ModuleVersion = '1.24.731.1'

# Supported PSEditions
# CompatiblePSEditions = @()
Expand Down Expand Up @@ -142,24 +142,26 @@
IconUri = 'https://github.com/microsoft/Microsoft365DSC/blob/Dev/Modules/Microsoft365DSC/Dependencies/Images/Logo.png?raw=true'

# ReleaseNotes of this module
ReleaseNotes = '* IntuneAntivirusPolicyWindows10SettingCatalog
* Migrate to new settings catalog cmdlets.
* IntuneAttackSurfaceReductionRulesPolicyWindows10ConfigManager
* Migrate to new settings catalog cmdlets.
FIXES [#3966](https://github.com/microsoft/Microsoft365DSC/issues/3966)
* IntuneEndpointDetectionAndResponsePolicyLinux
* Initial release.
* IntuneEndointDetectionAndResponsePolicyMacOS
* Initial release.
* IntuneWindowsUpdateForBusinessFeatureUpdateProfileWindows10
* Introduces new properties and updates the handling of the
start and end dates.
FIXES [#4614](https://github.com/microsoft/Microsoft365DSC/issues/4614)
FIXES [#3438](https://github.com/microsoft/Microsoft365DSC/issues/3438)
* M365DSCDRGUtil
* Fixes an issue where only 25 settings catalog templates were fetched with one call.
* SPOSharingSettings
* Changed approach to MySite filtering.'
ReleaseNotes = '* AADAuthenticationMethodPolicyFido2
* Add missing class identifier to schema.
FIXES [#4900](https://github.com/microsoft/Microsoft365DSC/issues/4900)
FIXES [#4079](https://github.com/microsoft/Microsoft365DSC/issues/4079)
* IntuneAntivirusPolicyWindows10SettingCatalog
* Fixes an issue where the template reference is not set correctly.
FIXES [#4925](https://github.com/microsoft/Microsoft365DSC/issues/4925)
* IntuneDeviceConfigurationEndpointProtectionPolicyWindows10
* Fix compiling if `ProfileTypes` (in `FirewallRules`) is present and contains
more than one value
FIXES [#4936](https://github.com/microsoft/Microsoft365DSC/issues/4936)
* IntuneDeviceConfigurationPolicyiOS
* Fix export of property NetworkUsageRules
FIXES [#4934](https://github.com/microsoft/Microsoft365DSC/issues/4934)
* MISC
* M365DSCReport
* Update key properties for delta report in `AADGroup` resource.
FIXES [#4921](https://github.com/microsoft/Microsoft365DSC/issues/4921)
* Improve PowerShell Core support across the DSC resources.
FIXES [#4911](https://github.com/microsoft/Microsoft365DSC/issues/4911)'

# Flag to indicate whether the module requires explicit user acceptance for install/update
# RequireLicenseAcceptance = $false
Expand Down
4 changes: 4 additions & 0 deletions Modules/Microsoft365DSC/Modules/M365DSCReport.psm1
Original file line number Diff line number Diff line change
Expand Up @@ -1243,6 +1243,10 @@ function Get-M365DSCResourceKey
{
return @('Id')
}
if ($Resource.ResourceName -eq 'AADGroup' -and -not [System.String]::IsNullOrEmpty($Resource.MailNickname))
{
return ('DisplayName', 'MailNickname')
}
if ($Resource.ResourceName -eq 'IntuneDeviceEnrollmentPlatformRestriction' -and $Resource.Keys.Where({ $_ -like "*Restriction"}))
{
return @('ResourceInstanceName')
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -367,7 +367,7 @@
| **LocalPortRanges** | Write | StringArray[] | List of local port ranges. For example, '100-120', '200', '300-320'. If not specified, the default is All. | |
| **LocalUserAuthorizations** | Write | String | Specifies the list of authorized local users for the app container. This is a string in Security Descriptor Definition Language (SDDL) format. | |
| **PackageFamilyName** | Write | String | The package family name of a Microsoft Store application that's affected by the firewall rule. | |
| **ProfileTypes** | Write | String | Specifies the profiles to which the rule belongs. If not specified, the default is All. Possible values are: notConfigured, domain, private, public. | `notConfigured`, `domain`, `private`, `public` |
| **ProfileTypes** | Write | String | Specifies the profiles to which the rule belongs. If not specified, the default is All. Possible values are: notConfigured, domain, private, public. | |
| **Protocol** | Write | UInt32 | 0-255 number representing the IP protocol (TCP = 6, UDP = 17). If not specified, the default is All. Valid values 0 to 255 | |
| **RemoteAddressRanges** | Write | StringArray[] | List of tokens specifying the remote addresses covered by the rule. Tokens are case insensitive. Default is any address. Valid tokens include:'' indicates any remote address. If present, this must be the only token included.'Defaultgateway''DHCP''DNS''WINS''Intranet' (supported on Windows versions 1809+)'RmtIntranet' (supported on Windows versions 1809+)'Internet' (supported on Windows versions 1809+)'Ply2Renders' (supported on Windows versions 1809+)'LocalSubnet' indicates any local address on the local subnet.A subnet can be specified using either the subnet mask or network prefix notation. If neither a subnet mask nor a network prefix is specified, the subnet mask defaults to 255.255.255.255.A valid IPv6 address.An IPv4 address range in the format of 'start address - end address' with no spaces included.An IPv6 address range in the format of 'start address - end address' with no spaces included. | |
| **RemotePortRanges** | Write | StringArray[] | List of remote port ranges. For example, '100-120', '200', '300-320'. If not specified, the default is All. | |
Expand Down

0 comments on commit 3b3e152

Please sign in to comment.