Skip to content

Commit

Permalink
Merge branch 'Dev' into fix-enrollment-platforms
Browse files Browse the repository at this point in the history
  • Loading branch information
Fabien Tschanz committed Feb 23, 2024
2 parents 2d922c5 + 604b66e commit 07afeaa
Show file tree
Hide file tree
Showing 437 changed files with 7,485 additions and 2,520 deletions.
2 changes: 2 additions & 0 deletions .github/workflows/Global - Integration - AAD.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ jobs:
# The type of runner that the job will run on
runs-on: windows-latest

permissions: write-all

# Only when run from the main repo
if: github.repository == 'microsoft/Microsoft365DSC'

Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/Global - Integration - EXO.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ jobs:
# The type of runner that the job will run on
runs-on: windows-latest

permissions: write-all

# Only when run from the main repo
if: github.repository == 'microsoft/Microsoft365DSC'

Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/Global - Integration - INTUNE.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ jobs:
# The type of runner that the job will run on
runs-on: windows-latest

permissions: write-all

# Only when run from the main repo
if: github.repository == 'microsoft/Microsoft365DSC'

Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/PublishGitHubPages.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@ jobs:
GenerateResource:
runs-on: windows-latest

permissions: write-all

# Only when run from the main repo
if: github.repository == 'microsoft/Microsoft365DSC'

Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/Unit Tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ jobs:
# The type of runner that the job will run on
runs-on: windows-latest

permissions: write-all

# Only when run from the main repo
if: github.repository == 'microsoft/Microsoft365DSC'

Expand Down
220 changes: 217 additions & 3 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,215 @@

* IntuneDeviceEnrollmentPlatformRestriction
* Update the Intune enrollment platform restriction logic to the single platform approach.
* Fixed an issue where the assignment would not be updated.
* Introduce additional validation for selected properties.
* Fixed an issue where nested settings would throw a conflict
FIXES [#4082](https://github.com/microsoft/Microsoft365DSC/issues/4082)

# 1.24.221.1

* AADApplication
* Expose the description field in the resource.
* AADConditionalAccessPolicy
* Fixing issue where Membership kinds no longer accepted empty values.
ROLLING BACK [#4344](https://github.com/microsoft/Microsoft365DSC/issues/4344)
FIXES [#4347](https://github.com/microsoft/Microsoft365DSC/issues/4347)
* Throws an error if role, user or group was not found in the Set method.
FIXES [#4342](https://github.com/microsoft/Microsoft365DSC/issues/4342)
* EXOAuthenticationPolicyAssignment
* Improved performance by using a filter to retrieve assignments.
* Export now retrieves the user principal name instead of the user id.
* EXOAvailabilityConfig
* Export now retrieves the user principal name instead of the user id.
* EXOCASMailboxPlan
* Added the DisplayName property.
* EXODataClassification
* Added logic to retrieve by name in the GET method if no match found by id.
* EXOMailboxAutoReplyConfiguration
* Added the owner property.
* EXOMailboxPlan
* Added the DisplayName property.
* EXOMailboxSettings
* Export now retrieves instances by User Principal Name instead of GUID.
* EXOPlace
* Added the DisplayName property.
* EXORecipientPermission
* Export now retrieves instances by User Principal Name instead of GUID.
* EXOSharedMailbox
* Added the Identity parameter.
* MISC
* Uninstall-M365DSCOutdatedDependencies
* Outdated Microsoft365DSC-modules are now removed in their entirety

# 1.24.214.3

* AADAuthenticationMethodPolicy
* Fixed an error where the Export method would loop through the response header.
* AADAuthenticationMethodPolicyAuthenticator
* Fixed an error where the Export method would loop through the response header.
* AADAuthenticationMethodPolicyEmail
* Fixed an error where the Export method would loop through the response header.
* AADAuthenticationMethodPolicyFido2
* Fixed an error where the Export method would loop through the response header.
* AADAuthenticationMethodPolicySms
* Fixed an error where the Export method would loop through the response header.
* AADAuthenticationMethodPolicySoftware
* Fixed an error where the Export method would loop through the response header.
* AADAuthenticationMethodPolicyTemporary
* Fixed an error where the Export method would loop through the response header.
* AADAuthenticationMethodPolicyVoice
* Fixed an error where the Export method would loop through the response header.
* AADAuthenticationMethodPolicyX509
* Fixed an error where the Export method would loop through the response header.
* IntuneAppConfigurationPolicy
* Fixed an error in the export on the Settings property.
* IntuneDeviceEnrollmentStatusPageWindows10
* Fixed an error where the Export method would loop through the response header.
* IntuneWindowsAutopilotDeploymentProfileAzureADJoined
* Fixed an error where the Export method would loop through the response header.
* SCDLPComplianceRule
* Fixed the NotifyEmailCustomText and NotifyPolicyTipCustomText to escape fancy
quotes.
* DEPENDENCIES
* Updated Microsoft.Graph to version 2.14.1.

# 1.24.214.2

* AADConditionalAccessPolicy
* Removed invalid empty string value that was added to the validate set
of two parameters.
* Updated permission reference for app-onlzy authentication.
FIXES [[#3329](https://github.com/microsoft/Microsoft365DSC/issues/3329)]
* AADRoleEligibilityScheduleRequest
* Fixed an issue where an error was thrown if no requests were found instead
of simply returning the Null object.
* AADRoleSetting
* Fix handling of DisplayName property in comparison
FIXES [#4019](https://github.com/microsoft/Microsoft365DSC/issues/4019)
* AADUser
* Fixed and issue where an user would be created even if the resrouce was set to absent.
FIXES [[#4265](https://github.com/microsoft/Microsoft365DSC/issues/4265)]
* EXOMobileDeviceMailboxPolicy
* Fixes an issue where an empty MinPasswordLength value was always passed down
to the update logic flow.
* IntuneAppConfigurationPolicy
* Added parameter Id to avoid having to retrieve the same policy multiple
times
* Fixed tests in Test-TargetResource to ensure the resource reports its
correct state
FIXES [#3542](https://github.com/microsoft/Microsoft365DSC/issues/3542)
* IntuneDeviceAndAppManagementAssignmentFilter
* Fixed Test-TargetResource to ensure that resource reports its correct state
FIXES [#3959](https://github.com/microsoft/Microsoft365DSC/issues/3959)
* IntuneDeviceConfigurationNetworkBoundaryPolicyWindows10
* Fixed Test-TargetResource by removing Id from being tested and also used
correct filter while retrieving the policy otherwise it could not be found
FIXES [#3964](https://github.com/microsoft/Microsoft365DSC/issues/3964)
* IntuneDeviceConfigurationPolicyAndroidWorkProfile
* Fix typo in variable which made it export incorrectly and report that
resource was not in correct state due to testing an incorrect value
FIXES [#3972](https://github.com/microsoft/Microsoft365DSC/issues/3972)
* IntuneSettingCatalogASRRulesPolicyWindows10
* Fix removal of resource if Identity comes from another tenant or is not
present in blueprint
* Fix Test-TargetResource by not comparing Identity since it might be from
another tenant or not present in blueprint
FIXES [#4302](https://github.com/microsoft/Microsoft365DSC/issues/4302)
* SCDPLPCompianceRule
* Added support for multiple additional parameters.
* SPOSharingSettings
* Fixed an issue where the resource would return multiple sites.
FIXES [#2759](https://github.com/microsoft/Microsoft365DSC/issues/2759)
* DEPENDENCIES
* Updated DSCParser to version 1.4.0.2.
* Updated Microsoft.Graph dependencies to version 2.13.1.
* Updated MSCloudLoginAssistant to version 1.1.13.
* MISC
* M365DSCReport
* Fix nested change detection for CIMInstances
* Fix IntuneDeviceEnrolllmentPlatformRestriction comparison in report
FIXES [#4291](https://github.com/microsoft/Microsoft365DSC/issues/4291)
* Added new QA test to check for missing description in resource schema

# 1.24.207.2

* TeamsAppSetupPolicy
* Changed the logic to retrieve arrays of Ids in the Get method.
* MISC
* Drift Logging
* Now includes the full list of parameters for the current values.
* Telemetry
* Added a new M365DSCTelemetryEventId parameter to track duplication of events.

# 1.24.207.1

* IntuneDeviceEnrollmentPlatformRestriction
* Added Priority parameter
FIXES [#4081](https://github.com/microsoft/Microsoft365DSC/issues/4081)
* SCDLPComplianceRule
* Properly escapes fancy quotes in the Get method.
* TeamsMeetingPolicy
* Ignore the AllowUserToJoinExternalMeeting parameterfor drift evaluation
since it doesn't do anything based on official documentation.
* DEPENDENCIES
* Updated Microsoft.PowerApps.Administration.PowerShell to version 2.0.180.
* Updated MSCloudLoginAssistant to version 1.1.11
* Updated ReverseDSC to version 2.0.0.19

# 1.24.131.2

* TeamsMeetingPolicy
* Fixed issue with missing ManagedIdentity parameter in Test signature.
* TeamsUpdateManagementPolicy
* Fixed issue with missing ManagedIdentity parameter in Set signature.

# 1.24.131.1

* EXOAvailabilityAddressSpace
* Added support for the TargetServiceEpr and TargetTenantId parameters.
* Fixed the logic to retrieve existing instance by Forest Name.
* EXODistributionGroup
* The Get function now retrieves the ModeratedBy and ManagedBy properties
by the users' UPN instead of their GUID.
* EXOHostedContentFilterRule
* Changed logic to retrieve the Rules by name. Using the Policy's name instead.
* EXOIntraOrganizationConnector
* Fixes the DiscoveryEndpoint value from the Get method to include trailing
forward slash.
* EXOMalwareFilterRule
* Fixed an issue retrieving the right value for the Enabled property
* EXOOMEConfiguration
* Fixes an error in the Get method where the ExternalMailExpiryInDays property
wasn't properly returned.
* EXOSafeLinksPolicy
* Deprecated the UseTranslatedNotificationText property
* IntuneDeviceConfigurationPolicyAndroidOpenSourceProject,
IntuneExploitProtectionPolicyWindows10SettingCatalog, IntuneRoleAssignment,
IntuneRoleDefinition, IntuneSettingCatalogASRRulesPolicyWindows10,
IntuneWiFiConfigurationPolicyAndroidDeviceAdministrator,
IntuneWifiConfigurationPolicyAndroidEnterpriseDeviceOwner,
IntuneWifiConfigurationPolicyAndroidEnterpriseWorkProfile,
IntuneWifiConfigurationPolicyAndroidForWork,
IntuneWifiConfigurationPolicyAndroidOpenSourceProject,
IntuneWifiConfigurationPolicyIOS, IntuneWifiConfigurationPolicyMacOS,
IntuneWifiConfigurationPolicyWindows10, TeamsCallParkPolicy
* Fix condition in Test-TargetResource when resource is absent
FIXES [#3897](https://github.com/microsoft/Microsoft365DSC/issues/3897)
FIXES [#4256](https://github.com/microsoft/Microsoft365DSC/issues/4256)
* TeamsFilesPolicy
* Add default value ('Present') to parameter Ensure
* TeamsEmergencyCallRoutingPolicy
* Fix deletion of resource
FIXES [#4261](https://github.com/microsoft/Microsoft365DSC/issues/4261)
* TeamsUserCallingSettings
* Added support for Certificate Authentication
FIXES [#3180](https://github.com/microsoft/Microsoft365DSC/issues/3180)
* TEAMS
* Added support for ManagedIdentity Authentication across Teams resources.
* DEPENDENCIES
* Updated MSCloudLoginAssistant dependencies to version 1.1.10.
* MISC
* Change the way to Export encoding is done so that it no longer relies
on the Get-DSCResource function.

# 1.24.124.1

Expand All @@ -27,7 +234,7 @@
* Remove the logic path to create a new instance in favor of the update flow.
* AADConditionalAccessPolicy
* Fix issue when not all parameters are specified
FIXES [[#4202](https://github.com/microsoft/Microsoft365DSC/issues/4202)]
FIXES [#4202](https://github.com/microsoft/Microsoft365DSC/issues/4202)
* AADCrossTenantAccessPolicy
* Removed the ability to specify a value of Absent for the Ensure property.
* AADCrossTenantAccessPolicyCOnfigurationDefault
Expand All @@ -46,7 +253,7 @@
* DEPRECATED Resource.
* SCAutoSensitivityLabelRule
* Correct export indentation, which caused an issue with report conversion to JSON.
FIXES [[#4240](https://github.com/microsoft/Microsoft365DSC/issues/4240)]
FIXES [#4240](https://github.com/microsoft/Microsoft365DSC/issues/4240)
* SPOSharingSettings
* Fixed an Issue where the MySiteSharingCapability could be returned as an
empty string instead of a null value from the Get method.
Expand All @@ -63,6 +270,9 @@
* TeamsCallParkPolicy
* Fix condition in Test-TargetResource when resource is absent
FIXES [#4210](https://github.com/microsoft/Microsoft365DSC/issues/4210)
* TeamsCallQueue
* Optimize performances by doing 1 request instead of n+1
FIXES [[#4192](https://github.com/microsoft/Microsoft365DSC/issues/4192)]
* TeamsComplianceRecordingPolicy
* Fix condition in Test-TargetResource when resource is absent
FIXES [#4212](https://github.com/microsoft/Microsoft365DSC/issues/4212)
Expand Down Expand Up @@ -272,6 +482,10 @@
* IntuneAntivirusPolicyWindows10SettingCatalog
* Fix condition in Test-TargetResource to check if resource was removed or not
FIXES [#3958](https://github.com/microsoft/Microsoft365DSC/issues/3958)
* IntuneSettingCatalogASRRulesPolicyWindows10
* Fixed Schema Validation
* Fixed Import with unknown ID of Policy and Assignments by using DisplayName
FIXES [#3961](https://github.com/microsoft/Microsoft365DSC/issues/3961)
* IntuneWindowsUpdateForBusinessRingUpdateProfileWindows10
* Fix typo in assignment cmdlet
FIXES [#3996](https://github.com/microsoft/Microsoft365DSC/issues/3996)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,10 @@ function Get-TargetResource
[System.Boolean]
$AvailableToOtherTenants,

[Parameter()]
[System.String]
$Description,

[Parameter()]
[System.String]
$GroupMembershipClaims,
Expand Down Expand Up @@ -144,7 +148,7 @@ function Get-TargetResource
}
if ($null -ne $AADApp -and $AADApp.Count -gt 1)
{
Throw "Multiple AAD Apps with the Displayname $($DisplayName) exist in the tenant. These apps will not be exported."
Throw "Multiple AAD Apps with the Displayname $($DisplayName) exist in the tenant."
}
elseif ($null -eq $AADApp)
{
Expand Down Expand Up @@ -189,6 +193,7 @@ function Get-TargetResource
$result = @{
DisplayName = $AADApp.DisplayName
AvailableToOtherTenants = $AvailableToOtherTenantsValue
Description = $AADApp.Description
GroupMembershipClaims = $AADApp.GroupMembershipClaims
Homepage = $AADApp.web.HomepageUrl
IdentifierUris = $AADApp.IdentifierUris
Expand Down Expand Up @@ -253,6 +258,10 @@ function Set-TargetResource
[System.Boolean]
$AvailableToOtherTenants,

[Parameter()]
[System.String]
$Description,

[Parameter()]
[System.String]
$GroupMembershipClaims,
Expand Down Expand Up @@ -682,6 +691,10 @@ function Test-TargetResource
[System.Boolean]
$AvailableToOtherTenants,

[Parameter()]
[System.String]
$Description,

[Parameter()]
[System.String]
$GroupMembershipClaims,
Expand Down Expand Up @@ -806,12 +819,6 @@ function Test-TargetResource
$ValuesToCheck.Remove('ObjectId') | Out-Null
$ValuesToCheck.Remove('AppId') | Out-Null
$ValuesToCheck.Remove('Permissions') | Out-Null
$ValuesToCheck.Remove('ApplicationId') | Out-Null
$ValuesToCheck.Remove('Credential') | Out-Null
$ValuesToCheck.Remove('TenantId') | Out-Null
$ValuesToCheck.Remove('ApplicationSecret') | Out-Null
$ValuesToCheck.Remove('CertificateThumbprint') | Out-Null
$ValuesToCheck.Remove('ManagedIdentity') | Out-Null

$TestResult = Test-M365DSCParameterState -CurrentValues $CurrentValues `
-Source $($MyInvocation.MyCommand.Source) `
Expand Down Expand Up @@ -890,6 +897,7 @@ function Export-TargetResource
TenantId = $TenantId
CertificateThumbprint = $CertificateThumbprint
ApplicationSecret = $ApplicationSecret
Description = $AADApp.Description
DisplayName = $AADApp.DisplayName
ObjectID = $AADApp.Id
Credential = $Credential
Expand Down Expand Up @@ -932,6 +940,7 @@ function Export-TargetResource
Write-Host "`r`n $($Global:M365DSCEmojiYellowCircle)" -NoNewline
Write-Host " Multiple app instances wth name {$($AADApp.DisplayName)} were found. We will skip exporting these instances."
}
$i++
}
}
return $dscContent.ToString()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ class MSFT_AADApplication : OMI_BaseResource
[Write, Description("ObjectID of the app.")] String ObjectId;
[Write, Description("AppId for the app.")] String AppId;
[Write, Description("Indicates whether this application is available in other tenants.")] Boolean AvailableToOtherTenants;
[Write, Description("A free text field to provide a description of the application object to end users. The maximum allowed size is 1024 characters.")] String Description;
[Write, Description("A bitmask that configures the groups claim issued in a user or OAuth 2.0 access token that the application expects.")] String GroupMembershipClaims;
[Write, Description("The URL to the application's homepage.")] String Homepage;
[Write, Description("User-defined URI(s) that uniquely identify a Web application within its Azure AD tenant, or within a verified custom domain.")] string IdentifierUris[];
Expand Down
Loading

0 comments on commit 07afeaa

Please sign in to comment.