获取有关 Office 365 的移动设备管理(MDM)托管的设备的详细信息

本文介绍如何使用 Windows PowerShell 获取有关你为 Office 365 的移动设备管理 设置的组织中的设备的详细信息。

我可以获取哪些设备详细信息?

下面是一个细目。

主体

在 PowerShell 中查找的内容

在 MDM For Office 365 中注册设备

IsManaged参数的值为:

True = 设备已注册。

False = 设备未注册。

设备符合你的设备安全策略

IsCompliant参数的值为:

True = 设备符合策略。

False = 设备不符合策略。

显示用于确定设备是否已注册和投诉的 AAD Shell 参数值的流

注意: 本文中的命令和脚本还将返回有关由Microsoft Intune管理的任何设备的详细信息。

准备工作

您需要设置一些内容才能运行本文所述的命令和脚本。

有关这些步骤的详细信息,请参阅连接到 Office 365 PowerShell

  1. 转到适用于 IT 专业人员的 Microsoft Online Services 登录助手 RTWl单击 " Microsoft Online For Microsoft online services 登录助手"。

  2. 通过以下步骤安装适用于 Windows PowerShell 的 Microsoft Azure Active Directory 模块:

    1. 打开管理员级别的 PowerShell 命令提示符。

    2. 运行 "安装模块 Import-module msonline" 命令。

    3. 如果系统提示您安装 NuGet 提供程序,请键入 Y,然后按 ENTER。

    4. 如果系统提示从 PSGallery 安装模块,请键入 Y,然后按 ENTER。

    5. 安装后,关闭 PowerShell 命令窗口。

  1. 在 windows PowerShell 的 Windows Azure Active Directory 模块中,运行以下命令。

    $UserCredential = Get-Credential
  2. 在 " Windows PowerShell 凭据请求" 对话框中,键入 Office 365 全局管理员帐户的用户名和密码,然后单击"确定"

  3. 运行以下命令。

    Connect-MsolService -Credential $UserCredential

注意: 如果你已设置为运行 PowerShell 脚本,则可以跳过此步骤。

若要运行Get-MsolUserDeviceComplianceStatus脚本,你需要启用 PowerShell 脚本的运行。

  1. 在 Windows 桌面中,单击 "开始",然后键入 " Windows PowerShell"。 右键单击 " Windows PowerShell",然后单击 "以管理员身份运行"。

  2. 运行以下命令。

    Set-ExecutionPolicy RemoteSigned
  3. 出现提示时,键入 " Y ",然后按 enter。

运行 MsolDevice cmdlet 以显示组织中所有设备的详细信息

  1. 打开适用于 Windows PowerShell 的 Microsoft Azure Active Directory 模块。

  2. 运行以下命令。

    Get-MsolDevice -All -ReturnRegisteredOwners | Where-Object {$_.RegisteredOwners.Count -gt 0}

有关更多示例,请参阅MsolDevice

运行脚本以获取设备详细信息

  1. 将以下文本复制并粘贴到记事本中。

    param (
        [PSObject[]]$users = @(),
        [Switch]$export,
        [String]$exportFileName = "UserDeviceComplianceStatus_" + (Get-Date -Format "yyMMdd_HHMMss") + ".csv",
        [String]$exportPath = [Environment]::GetFolderPath("Desktop")
     )
    
    [System.Collections.IDictionary]$script:schema = @{
        
        DeviceId = ''
        DeviceOSType = ''
        DeviceOSVersion = ''
        DeviceTrustLevel = ''
        DisplayName = ''
        IsCompliant = ''
        IsManaged = ''
        ApproximateLastLogonTimestamp = ''
        DeviceObjectId = ''    
        RegisteredOwnerUpn = ''
        RegisteredOwnerObjectId = ''
        RegisteredOwnerDisplayName = ''
    }
    
    function createResultObject
    {
    
        [PSObject]$resultObject = New-Object -TypeName PSObject -Property $script:schema
    
        return $resultObject
    }
    
    If ($users.Count -eq 0)
    {
        $users = Get-MsolUser
    }
    
    [PSObject[]]$result = foreach ($u in $users)
    {
        
        [PSObject]$devices = get-msoldevice -RegisteredOwnerUpn $u.UserPrincipalName
        foreach ($d in $devices)
        {
            [PSObject]$deviceResult = createResultObject
            $deviceResult.DeviceId = $d.DeviceId 
            $deviceResult.DeviceOSType = $d.DeviceOSType 
            $deviceResult.DeviceOSVersion = $d.DeviceOSVersion 
            $deviceResult.DeviceTrustLevel = $d.DeviceTrustLevel
            $deviceResult.DisplayName = $d.DisplayName
            $deviceResult.IsCompliant = $d.GraphDeviceObject.IsCompliant
            $deviceResult.IsManaged = $d.GraphDeviceObject.IsManaged
            $deviceResult.DeviceObjectId = $d.ObjectId
            $deviceResult.RegisteredOwnerUpn = $u.UserPrincipalName
            $deviceResult.RegisteredOwnerObjectId = $u.ObjectId
            $deviceResult.RegisteredOwnerDisplayName = $u.DisplayName
            $deviceResult.ApproximateLastLogonTimestamp = $d.ApproximateLastLogonTimestamp
    
            $deviceResult
        }
    
    }
    
    If ($export)
    {
        $result | Export-Csv -path ($exportPath + "\" + $exportFileName) -NoTypeInformation
    }
    Else
    {
        $result
    }
    
  2. 使用文件扩展名 ps1 将其另存为 Windows PowerShell 脚本文件例如, Get-MsolUserDeviceComplianceStatus. ps1

  1. 打开适用于 Windows PowerShell 的 Microsoft Azure Active Directory 模块。

  2. 导航到保存脚本的文件夹。 例如,如果您将其保存到C:\PS-Scripts,您将运行以下命令。

    cd C:\PS-Scripts
  3. 运行以下命令以确定要获取其设备详细信息的用户。 此示例获取 bar@example.com 的详细信息。

    $u = Get-MsolUser -UserPrincipalName bar@example.com
  4. 运行以下命令以启动脚本。

    .\Get-MsolUserDeviceComplianceStatus.ps1 -User $u -Export

该信息将作为 CSV 文件导出到 Windows 桌面。 你可以使用其他参数指定 CSV 的文件名和路径。

  1. 打开适用于 Windows PowerShell 的 Microsoft Azure Active Directory 模块。

  2. 导航到保存脚本的文件夹。 例如,如果您将其保存到C:\PS-Scripts,您将运行以下命令。

    cd C:\PS-Scripts
  3. 运行以下命令以标识要获取其设备详细信息的组。 此示例获取 FinanceStaff 组中用户的详细信息。

    $u = Get-MsolGroupMember -SearchString "FinanceStaff" | % { Get-MsolUser -ObjectId $_.ObjectId }
  4. 运行以下命令以启动脚本。

    .\Get-MsolUserDeviceComplianceStatus.ps1 -User $u -Export

该信息将作为 CSV 文件导出到 Windows 桌面。 你可以使用其他参数指定 CSV 的文件名和路径。

详细信息

Microsoft Connect 已停

Office 365 的 MDM 概述

MsolDevice

注意:  本页面是自动翻译的,可能包含语法错误或不准确之处。 我们的目的是使此内容能对你有所帮助。 能否告知我们此信息是否有所帮助? 下面是该参考内容的英文版

扩展你的 Office 技能
了解培训
抢先获得新功能
加入 Office 预览体验计划

此信息是否有帮助?

谢谢您的反馈!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×