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

[玩转系统] 使用 PowerShell 将 Office 365 用户 MFA 状态导出到 CSV

作者:精品下载站 日期:2024-12-14 08:24:56 浏览:15 分类:玩电脑

使用 PowerShell 将 Office 365 用户 MFA 状态导出到 CSV


什么是MFA?

多重身份验证 (MFA) 在保护用户帐户方面发挥着至关重要的作用。顾名思义,它使用多种方法来识别授权用户。您可以详细了解什么是 MFA、它的工作原理以及如何使用启用了 MFA 的帐户执行 PowerShell 脚本。

Office 365 硕士学位

为了保护您的 Office 365 环境,您需要为用户和管理员帐户配置 MFA。在深入为租户中的用户设置 MFA 之前,您应该了解各种 MFA 状态。用户帐户可以进行三种设置:

  1. 已禁用 - 登录不需要 MFA。这是新用户的默认状态。
  2. 已启用 - 用户已注册多重身份验证,但尚未完成注册过程。他们下次登录时系统将提示完成该过程。
  3. 强制 - 用户要么已完成注册过程,要么已被管理“强制”使用 MFA。他们必须设置 MFA 才能登录 Office 365 应用程序。

所有用户一开始都是禁用。当您在 Azure MFA 中注册用户时,他们的状态将更改为已启用。当启用的用户登录并完成注册过程后,其状态将更改为强制。

如何使用 PowerShell 检查 Office 365 中是否启用了 MFA?

您可以通过 Office 365 管理中心获取用户及其 MFA 状态的列表,但无法查看其他必要信息,例如 MFA 激活状态、配置的 MFA 方法、默认 MFA 方法、MFA 电话号码、MFA 邮件 ID、许可证状态管理员角色等。使用Powershell,您可以获得所有必要的信息。

注意:如果您想使用图形用户界面 (GUI) 查看所有信息,您可以尝试 AdminDroid 的 Office 365 报告工具。

我们编写了一个 PowerShell 脚本来导出 Office 365 用户的 MFA 状态以及有关用户帐户的许多有用信息。默认情况下,脚本将返回启用并强制执行 MFA 的用户。如果您想列出 MFA 已禁用的用户,则需要使用 -DisabledOnly 参数。

下载脚本:GetMFAStatus.ps1

更新:使用 Microsoft Graph PowerShell 获取 MFA 状态报告

由于“MsOnline”和“AzureAD”PowerShell 模块将于 2022 年之后停用,因此我们编写了一个脚本来使用 Microsoft Graph PowerShell 导出 MFA 状态报告。使用此高级脚本,您可以生成 7 个以上的 MFA 报告,其中包含 10 个以上的用户/MFA 属性。有关详细信息,请参阅:使用 MS Graph PowerShell 导出 MFA 状态报告

脚本亮点:

  • 可以根据 MFA 状态过滤结果。 i。即,您可以单独过滤启用 MFA 的用户/强制用户/禁用用户。 例如,使用“EnabledOnly”标志,您应将 Office 365 用户的 MFA 启用状态导出到 CSV 文件。
  • 将结果导出到 CSV 文件。
  • 可以根据管理员用户过滤结果。
  • 您可以过滤结果以单独显示授权用户
  • 您可以根据登录状态(允许/拒绝登录)过滤结果。
  • 该脚本根据 MFA 状态生成不同的输出文件
  • 您可以使用此脚本获取条件访问设置的用户 MFA 状态。
  • 该脚本可以使用启用 MFA 的帐户执行。
  • 使用“管理员角色”列,您可以查找具有不受 MFA 保护的管理员角色的用户。例如,您可以查找没有 MFA 的全局管理员
  • 该脚本调度程序友好。即,凭证可以作为参数传递,而不是保存在脚本内。

导出 MFA 状态报告 - 示例输出:

导出的 MFA 状态报告将类似于以下屏幕截图。

启用 MFA 的用户报告(适用于已启用/强制执行的用户):

启用 MFA 的用户报告具有以下属性:显示名称、用户主体名称、MFA 状态、激活状态、默认 MFA 方法、所有 MFA 方法、MFA 电话、MFA 电子邮件、许可证状态、IsAdmin、管理员角色、登录状态。

[玩转系统] 使用 PowerShell 将 Office 365 用户 MFA 状态导出到 CSV

MFA 禁用用户报告:

MFA 已禁用的用户报告具有以下属性:显示名称、用户主体名称、部门、MFA 状态、许可证状态、管理员身份、管理员角色、登录状态。

[玩转系统] 使用 PowerShell 将 Office 365 用户 MFA 状态导出到 CSV

如何使用 PowerShell 获取 MFA 状态报告?

此一体化 PowerShell 脚本允许您生成 10 种不同类型的 Office 365 MFA 状态报告。默认情况下,该脚本将返回启用 MFA 并强制执行的用户报告。

./GetMFAStatus.ps1

您可以使用参数/开关来获取更详细的 MFA 状态报告。

如何筛选 Office 365 MFA 报告?

获取有关用户 MFA 启用状态的报告:

作为 Office 365 管理员,您经常会问“如何检查 Office 365 中是否启用了 MFA”?解决方案就在这里。通过使用 -EnabledOnly 参数,您可以将启用 MFA 的用户导出到CSV 文件。

./GetMFAStatus.ps1 -EnabledOnly

将 Office 365 用户的 MFA 强制状态报告导出为 CSV:

某些用户可能启用了 MFA,但未强制执行 MFA(注册过程未完成)。您可以使用 -EnforcedOnly param 获取 MFA 强制用户列表。

./GetMFAStatus.ps1 -EnforcedOnly

列出没有 MFA 的 Office 365 用户:

MFA 为帐户提供了额外的安全级别。要查看 MFA 禁用的用户,您可以使用 -DisabledOnly 参数运行此脚本。

./GetMFAStatus.ps1 -DisabledOnly

通过参考此报告,管理员可以为特定用户或所有用户启用 MFA。

在没有 MFA 的情况下导出 Office 365 管理员:

由于admin账户拥有较多的权限,需要特别注意。根据最近的一项调查,78% 的 Microsoft 365 管理员没有为其帐户激活 MFA。要查找没有多重身份验证的管理员,请使用 -AdminOnly 参数。

./GetMFAStatus.ps1 -AdminOnly -DisabledOnly

导出的 MFA 报告列出了不受 MFA 保护的管理员帐户(用户)。通过参考此报告,您可以启用 MFA 以保护管理员帐户。

导出许可用户的 MFA 状态报告

您可以单独获取许可用户的 MFA 状态,而不是为所有用户生成 MFA 状态报告。您可以使用-

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

取消回复欢迎 发表评论:

关灯