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

[玩转系统] 使用 PowerShell 的 Office 365 许可证报告和管理

作者:精品下载站 日期:2024-12-14 20:39:18 浏览:15 分类:玩电脑

使用 PowerShell 的 Office 365 许可证报告和管理


Microsoft 365 管理员需要有效管理用户及其许可证,以降低许可证成本。此外,在分配许可证之前有必要了解用户的需求并识别未使用的许可证以优化许可证管理。

2022 年更新:MSOnline 和 AzureAD PowerShell 模块将于 2022 年弃用

本博客使用 MSOnline 模块来管理和生成 Office 365 许可证的报告。由于该模块即将弃用,我们开发了一个新脚本来使用 MS Graph PowerShell 管理 Office 365 许可证。您可以从我们的博客下载该脚本:使用 MS Graph 管理 Microsoft 365 许可证。

如果您是小型组织,可以使用 Microsoft 365 管理中心来分配和监控许可证。但管理中心对于大型组织来说是不可行的。在这种情况下,您可以使用 PowerShell cmdlet 来管理许可证。但是,如果您不熟悉 PowerShell,批量分配或删除许可证以及生成许可证报告将是一项挑战。

为了克服这些困难,我们创建了一个用于 M365 许可证管理的一体化PowerShell 脚本。是的!单个脚本可以执行 10 多个 Office 365 许可证管理和报告活动。

脚本下载:O365LicenseReportingAndManagement.ps1

脚本亮点:
  • 生成 5 Office 365 许可证报告。
  • 允许执行6许可证管理操作,包括批量添加或删除许可证。
  • 许可证名称以其友好名称显示,如“Office 365 Enterprise E3”而不是“ENTERPRISEPACK”。
  • 该脚本也可以使用启用 MFA 的帐户来执行。
  • 将报告结果导出为 CSV
  • 导出许可证分配和删除日志文件
  • 该脚本调度程序友好。即,您可以将凭据作为参数传递,而不是将它们保存在脚本中。

使用 PowerShell 脚本进行 Office 365 许可证报告和管理:

如前所述,您可以使用此脚本生成各种许可证报告并执行许可证管理操作。我们在这里列出了一些重要的行动。

[玩转系统] 使用 PowerShell 的 Office 365 许可证报告和管理

Office 365 许可证报告
  1. 获取所有许可用户报告
  2. 获取所有未经许可的用户报告
  3. 获取具有特定许可证类型的用户
  4. 查找所有拥有许可证的禁用用户
  5. Office 365 许可证使用情况报告
Office 365 许可证管理
  1. 批量:向用户分配许可证(输入 CSV)
  2. 批量:向用户分配多个许可证(输入 CSV)
  3. 删除用户的许可证
  4. 批量:删除用户的所有许可证(输入 CSV)
  5. 删除所有用户的特定许可证
  6. 删除禁用用户的所有许可证

Office 365 许可证报告和管理工具 - 执行方法:

要运行此脚本,您可以选择以下任意一种方法。

方法 1:使用 MFA 和非 MFA 帐户执行脚本

.\O365LicenseReportingAndManagement.ps1

方法 2:通过明确提及凭据和所需的“操作”来执行脚本。

.\O365LicenseReportingAndManagement.ps1 -UserName [email protected] -Password XXX -Action 1

您可以使用上述格式自动生成报告。如果管理员帐户具有 MFA,则需要根据条件访问策略禁用 MFA 才能使其正常工作。

方法 3:要执行多个操作而不多次执行脚本,您可以使用-MultipleActionsMode 参数。

.\O365LicenseReportingAndManagement.ps1 -MultipleActionsMode

它将显示主菜单,直到您通过提供输入 0 来终止脚本。

释放该脚本的全部潜力

该脚本支持以下内置参数,以简化您的 Office 365 许可证管理和报告需求。

1.操作 - 直接指定报告或管理操作,而不是从主菜单中选择。

2.LicenseName - 获取具有特定许可计划的用户。

3.用户名和密码 - 无需交互式登录即可安排 PowerShell 脚本。

4.MultipleActionsMode - 完成操作后再次显示主菜单。它将帮助您连续执行多个操作,而无需一次又一次地执行脚本。

导出 Office 365 中的所有许可用户:

要获取您组织中的许可用户列表,请运行以下脚本或从主菜单中选择所需的操作。

.\O365LicenseReportingAndManagement.ps1 -Action 1

使用此报告,您可以找到许可用户及其分配的许可证、许可证友好名称、帐户状态等。

示例输出:

[玩转系统] 使用 PowerShell 的 Office 365 许可证报告和管理

注意:您可以参考我们之前的博客来获取详细的许可证报告以及分配的服务及其状态。

使用 PowerShell 在 Office 365 中获取未经许可的用户:

要查看您组织中的所有未经许可的用户,请直接运行以下代码或从菜单中选择所需的选项。

.\O365LicenseReportingAndManagement.ps1 -Action 2

通过参考此报告,管理员可以识别没有任何许可计划的用户,并根据需要为他们分配许可。

示例输出:

[玩转系统] 使用 PowerShell 的 Office 365 许可证报告和管理

导出具有特定许可类型的用户列表:

要为 Office 365 用户提供特定许可计划,请运行以下脚本。

.\O365LicenseReportingAndManagement.ps1 -Action 3

它将要求提供许可计划。输入许可计划后,脚本将列出与该许可匹配的许可用户。

例如,要获取拥有 E3 许可证的用户列表,请在脚本提示输入许可证名称时输入“Contoso:EnterprisePack”。

您还可以将许可计划作为参数传递,如下所示。

.\O365LicenseReportingAndManagement.ps1 -Action 3 -LicenseName Contoso:EnterprisePack

示例输出:

示例输出列出了所有拥有 E3 许可证的用户。

[玩转系统] 使用 PowerShell 的 Office 365 许可证报告和管理

让残疾用户在 Office 365 中仍获得许可:

一般来说,前员工离开办公室后,其账户就会被禁用。在某些情况下,您可能希望从离职用户那里恢复 Office 365 许可证,以便您可以将他们分配给其他一些用户。要查找获得许可的禁用用户,请运行以下脚本。

.\O365LicenseReportingAndManagement.ps1 -Action 4

导出的报告包含 UPN、显示名称、许可计划、许可计划友好名称、部门和职务。

示例输出:

[玩转系统] 使用 PowerShell 的 Office 365 许可证报告和管理

Office 365 许可证使用情况报告:

Office 365 许可证使用情况报告列出了组织中可用的所有订阅,以及活动许可证计数和分配的许可证计数。您可以参考此报告来计算未分配的许可证数量。

要生成许可证使用情况报告,请执行脚本并从菜单中选择所需的操作。否则,直接运行以下代码。

.\O365LicenseReportingAndManagement.ps1 -Action 5

示例输出:

[玩转系统] 使用 PowerShell 的 Office 365 许可证报告和管理

使用 PowerShell 批量分配 Office 365 许可证:

用户必须拥有 Office 365 许可证才能使用任何 Microsoft 365 服务。管理员可以使用我们的 PowerShell 脚本批量分配许可证。我们在下面介绍了最需要的用例。

从 CSV 向用户分配许可证:

要使用 CSV 文件将 Office 365 许可证分配给多个用户,请运行 PowerShell 脚本,如下所示。

.\O365LicenseReportingAndManagement.ps1 -Action 6

该脚本将询问许可证名称和 CSV 文件路径。我们在下面给出了输入详细信息的示例。

[玩转系统] 使用 PowerShell 的 Office 365 许可证报告和管理

输入文件格式:

输入 CSV/txt 文件必须遵循以下格式:用户的 UPN,以换行符分隔,不带标题。

[玩转系统] 使用 PowerShell 的 Office 365 许可证报告和管理

输出日志文件 - 示例

脚本执行后,您可以参考“Office365_License_Assignment_Log”文件了解许可证分配结果。

[玩转系统] 使用 PowerShell 的 Office 365 许可证报告和管理

向用户列表分配多个许可证:

要将多个许可证分配给 Microsoft 365 用户,请执行如下所示的脚本。

.\O365LicenseReportingAndManagement.ps1 -Action 7

它将询问 CSV 文件位置和要分配的许可证。您可以按以下格式输入许可证名称 - contoso:EnterprisePack、contoso:Flow_Free

例如,

[玩转系统] 使用 PowerShell 的 Office 365 许可证报告和管理

在 Office 365 中设置使用位置

在将许可证分配给用户之前,他们必须具有“使用位置”。否则,您将收到“无法将许可证分配给未指定使用位置的用户”错误。为了设置 Office 365 用户的使用位置,我们提供了“LicenseUsageLocation”参数。

运行许可证分配用例时,您可以指定“LicenseUsageLocation”参数,将使用位置设置为使用位置值为空的用户。

例如,

.\O365LicenseReportingAndManagement.ps1 -Action 7 -LicenseUsageLocation US

或者

.\O365LicenseReportingAndManagement.ps1 -LicenseUsageLocation US

使用 PowerShell 取消分配 Office 365 用户的许可证:

识别和回收未使用的许可证有助于优化许可证使用并降低许可证成本。我们在下面介绍了最需要的许可证删除技术。

删除用户的所有许可:

当用户不再需要许可证或离开组织时,您可以删除为该用户分配的所有许可证。通过使用以下格式,您可以从用户帐户中删除所有许可证。

.\O365LicenseReportingAndManagement.ps1 -Action 8

运行上述格式后,脚本将要求输入用户身份以取消分配许可证。您可以提供 UserPrincipalName 作为身份。

删除 CSV 中用户列表的所有 Office 365 许可证:

当您想要重新获得前员工和不活跃用户的许可证时,您可以通过执行以下格式的脚本来批量取消分配许可证。

.\O365LicenseReportingAndManagement.ps1 -Action 9

该脚本将提示输入 CSV。输入文件路径后,脚本将从输入 CSV 中提到的用户帐户中删除许可证。执行后,您可以参考“Office365_License_Removal_Log”文件了解许可证删除状态。

删除所有用户的特定许可:

您可以在以下场景中选择此用例。

  • 当您想要从一种许可计划转移到另一种许可计划时。例如,E3 至 E5。
  • 当您不再使用特定许可计划时

要从所有用户中删除特定许可证,

.\O365LicenseReportingAndManagement.ps1 -Action 10

运行上述格式后,脚本将要求删除许可证计划,然后继续删除许可证。最后,您可以参考许可证删除审核日志文件了解状态。

删除禁用用户的许可:

大多数组织会禁用离职用户的帐户,而不是删除它们。要控制成本并获得未使用的许可证,您可以删除禁用用户的许可证。

要删除所有禁用用户的所有许可证,请运行以下脚本,

.\O365LicenseReportingAndManagement.ps1 -Action 11

您可以参考日志文件了解禁用用户的列表及其未分配的许可证。

安排 Office 365 许可证报告:

您可以使用 Windows 任务计划程序在预先配置的时间自动执行脚本,而不是手动运行脚本。

要按计划的 PowerShell 任务运行脚本,请遵循以下格式

.\O365LicenseReportingAndManagement.ps1 -Action 1 -UserName [email protected] -Password XX

如果管理员帐户具有 MFA,则需要根据条件访问策略禁用 MFA 才能使其正常工作。

如何以简单的方式获取 Office 365 许可证报告?

如果您厌倦了运行 PowerShell cmdlet 或脚本,可以尝试 AdminDroid Office 365 报告工具。该工具免费提供20 多个许可证报告,以有效管理您组织的许可证需求。

[玩转系统] 使用 PowerShell 的 Office 365 许可证报告和管理

此外,AdminDroid 完全免费提供100 多个报告和一些仪表板。它包括有关用户、许可证、组、组成员、设备、登录活动、密码更改、许可证更改等的报告。免费版本还允许您执行自定义、计划和导出。下载 AdminDroid 提供的免费 Office 365 报告工具,看看它如何为您提供帮助。

每份报告都提供人工智能驱动的图形分析,以直观的方式获得见解并理解数据。

[玩转系统] 使用 PowerShell 的 Office 365 许可证报告和管理

此外,AdminDroid Microsoft 365 报告工具提供1500 多个报告,以获取有关各种 Office 365 服务(例如 Azure AD、Exchange Online、SharePoint Online、Microsoft Teams、OneDrive for Business、Streams、One Note、Yammer)的详细报告, ETC。

我希望此博客能够帮助您管理 Office 365 许可证和生成许可证报告。您可以通过评论部分与其他管理员和我们分享您的许可证管理技术。

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

取消回复欢迎 发表评论:

关灯