当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 如何使用 PowerShell 更新 Intune MDM 用户范围

作者:精品下载站 日期:2024-12-14 06:47:03 浏览:18 分类:玩电脑

如何使用 PowerShell 更新 Intune MDM 用户范围


MDM 用户范围指定谁能够将其移动设备和工作站自动注册到 Microsoft Intune。通常,为 Intune 设备管理准备环境的第一步是确保正确配置 MDM 用户范围。

在本教程中,我将向您展示如何使用 PowerShell 向您报告如何配置 MDM 用户范围,并在未分配用户的情况下自动将其设置为“全部”。

MDM 与 MAM

如果通过 Azure 门户配置 Microsoft Intune 注册策略,则有 2 个选项:MDM 用户范围和 MAM 用户范围,但有什么区别呢?

MDM 是移动设备管理的缩写。 MDM 用户范围允许你配置当设备加入 Azure Active Directory 时谁可以将其设备自动注册到 Microsoft Intune。

MAM 是移动应用程序管理的缩写。 MAM 用户范围允许您的设备自动将其个人 BYOD 设备注册到应用程序管理中。

[玩转系统] 如何使用 PowerShell 更新 Intune MDM 用户范围

两种类型的策略之间的区别在于,使用 MDM,您可以管理整个设备,这意味着您可以进行设备限制、安装应用程序并强制合规性。而使用 MAM,您只能控制个人设备上的业务应用程序并对应用程序应用限制,例如阻止用户复制该应用程序外部的数据。

先决条件

要运行本教程中的脚本,您需要确保已安装 Microsoft Graph PowerShell 模块。查看我的有关如何安装 Microsoft Graph PowerShell 模块的指南。

权限:

您应该确保分配有全局管理员权限来执行本教程中的必要任务。

订阅:

需要有效的 Intune 订阅才能将设备加入 Microsoft Intune 管理。

使用 PowerShell 更新 MDM 用户范围

以下脚本将自动检查您是否已配置 MDM 用户范围,如果未设置,它将自动分配 MDM 用户范围中的所有用户。

Import-Module Microsoft.Graph.Identity.SignIns

Select-MgProfile -Name beta

Connect-MgGraph -Scopes Policy.Read.All, Policy.ReadWrite.MobilityManagement

$uri = "https://graph.microsoft.com/beta/policies/mobileDeviceManagementPolicies/0000000a-0000-0000-c000-000000000000/?$select=appliesTo"
$mdmscope = $null
$mdmscope = Invoke-MgGraphRequest -Uri $uri -Method GET

Write-host "Checking MDM Scope settings" -BackgroundColor yellow -ForegroundColor black
sleep 2

If ($mdmscope.appliesTo -eq "none") {
    write-host "MDM scope not set" -backgroundcolor Red
    sleep 2
    write-host "Setting MDM scope to All" -backgroundcolor yellow -ForegroundColor Black
    sleep 2

    try {
        $uripatch = "https://graph.microsoft.com/beta/policies/mobileDeviceManagementPolicies/0000000a-0000-0000-c000-000000000000/?$select=appliesTo"
        $json = @'
        {
        "@odata.context": "https://graph.microsoft.com/beta/$metadata#mobilityManagementPolicies(appliesTo)/$entity",
        "appliesTo": "All"
        }
'@
       
        Invoke-MgGraphRequest -uri $uripatch -body $json -method PATCH -ContentType "Application/Json"
        write-Host "MDM scope is set to all" -ForegroundColor green
        sleep 2
        
        } catch {"Unable to set MDM scope"}
        

} elseif ($mdmscope.appliesTo -eq "selected") {

    $uri = "https://graph.microsoft.com/beta/policies/mobileDeviceManagementPolicies/" + $mdmscope.id + "/includedGroups"
    $PolicyGroups = Invoke-MgGraphRequest -uri $uri -method GET
    $IncludedGroup = $policyGroups.Values.DisplayName
    
    Write-Host "MDM scope is set to" $IncludedGroup -BackgroundColor Green -ForegroundColor Black
    sleep 2
} elseif ($mdmscope.appliesTo -eq "all") {
    write-Host "MDM scope is set to all" -ForegroundColor green
}

我的所有脚本都可以在我的 GitHub 页面上找到。

如果您想了解有关此脚本如何工作的更多信息,请查看我的帖子:如何将 Invoke-MgGraphRequest 与 PowerShell 结合使用。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯