立即行动:MSOnline 和 AzureAD PowerShell将于 2025 年 4 月开始停用

Microsoft 宣布MSOnline 和 AzureAD PowerShell 模块将在 2025 年 4 月开始停用。

这一变动对于广大使用这些工具进行日常工作的技术人员和企业来说,无疑是一个重大的挑战,但同时也是一个向更先进技术迈进的机遇。

自 2024 年 3 月 30 日起,Azure AD、Azure AD 预览版和 MS Online PowerShell 模块已弃用。仅针对关键安全修复提供支持。它们将继续运作到 2025 年 3 月 30 日。注意: 只有 MSOnline 版本 1.1.166.0 (2017) 及更高版本可以保证在 2025 年 3 月 30 日之前正常运行。在 2024 年 6 月 30 日之后,使用 1.1.166.0 之前的版本可能会遇到中断。

  • MSOnline PowerShell 将于 2025 年 4 月初至 2025 年 5 月下旬停用(并停止工作)。
  • AzureAD PowerShell 在 2025 年 3 月 30 日之后将不再受支持,但其将在 2025 年 7 月 1 日之后停用。此推迟是为了让您有时间完成 MSOnline PowerShell 迁移。
  • 为了确保客户为 MSOnline PowerShell 停用做好准备,将在 2025 年 1 月至 3 月期间对所有租户进行一系列临时中断测试
模块 支持终止 临时中断测试 退休
MSOnline 3月 30, 2025 2025 年 1 月 20 日至 2025 年 3 月 30 日期间 2025 年 4 月上旬至 2025 年 5 月下旬
AzureAD 3月 30, 2025 不适用 2025 年 7 月 1 日之后

 

MSOnline PowerShell

MSOnline PowerShell 将优先停用,并将在 2025 年 4 月初至 2025 年 5 月下旬之间停用。MSOnline PowerShell 将在停用后停止工作。

为了确保客户为 MSOnline PowerShell 的停用做好准备,Microsoft将在 2025 年 1 月至 3 月期间部署一系列临时中断。在这些临时中断期间,使用 MSOnline cmdlet 将失败,并显示一条消息,指示不允许使用 MS Online PowerShell。这些临时中断的预计时间表为:

  • 在 2025 年 1 月 20 日至 2025 年 2 月 28 日期间,租户将经历至少两 (2) 次 MSOnline PowerShell 临时中断,每次中断持续时间为 3 到 8 小时,时间在一天中的不同时间。
  • 在 2025 年 3 月期间,所有租户都将经历较长的临时休假,以便为 2025 年 4 月开始停用 MSOnline PowerShell 做最后准备。

每次临时中断后,功能都将恢复,以便您继续迁移 MSOnline PowerShell 使用情况。

 

AzureAD PowerShell

AzureAD PowerShell 的弃用通知期将于 2025 年 3 月 30 日结束。在此日期之后,它将不再有进一步的维护或支持承诺。为了让客户能够专注于从 MSOnline 迁移,Microsoft的目标是在 2025 年第三季度停用。

 

停用的影响

  • 对现有脚本和自动化流程的影响:许多企业和组织依赖 MSOnline 和 AzureAD PowerShell 来实现自动化的用户管理、权限配置、租户设置等操作。停用后,现有的脚本和自动化流程将无法继续正常运行,需要进行全面的审查和修改,这可能会耗费大量的时间和精力。
  • 对管理员工作效率的影响:管理员习惯使用这些 PowerShell 模块来快速执行各种管理任务,如批量创建用户、分配许可证、设置组策略等。停用后,若没有合适的替代方案,管理员可能需要手动在图形界面中完成这些任务,或者学习新的工具和方法,这将在短期内降低工作效率。
  • 对与其他系统集成的影响:部分企业将 MSOnline 和 AzureAD PowerShell 集成到了其他内部系统或第三方应用中,用于实现身份验证、数据同步等功能。这些集成点需要重新评估和调整,以确保系统之间的正常交互和数据的准确性。

所需操作

  • 确定环境中使用 Azure AD 或 MS Online PowerShell 模块的脚本。

Microsoft Entra 登录日志可用于识别来自 MSOnline 和 AzureAD PowerShell 的登录。这些日志事件提供有关 PowerShell 会话的客户端和用户的信息。

  • 导航到 Microsoft Entra 管理中心
  • 展开 Identity (身份) 并单击 Show more (显示更多)。
  • 在 Monitoring & Health (监视和健康状况) 下,选择 Sign-in logs (登录日志)。
  • 选择 User sign-ins (non-interactive) 选项卡,然后单击 Add filters 以启动 Pick a field 对象选取器。
    • 选择 Application (应用程序),然后单击 Apply (应用)。
    • 在应用程序提示符中,输入 Azure Active Directory PowerShell,然后单击应用。
  • 对用户登录(交互式)日志重复这些步骤

MSOnline PowerShell 和 AzureAD PowerShell 登录事件都显示应用程序名称 Azure Active Directory PowerShell。 

在Microsoft Entra 管理中心访问概述 页面中点击建议查看将服务主体从即将停用的 Azure AD Graph API 迁移到 Microsoft Graph以确认当前租户中有多少个服务主体正在从 Azure AD Graph 调用一个或多个即将停用的 API,需要迁移到 Microsoft Graph

 

  • 立即采取措施迁移使用低于 1.1.166.0 的 MS Online 版本的脚本。如果您尚未准备好迁移到 Microsoft Graph PowerShell,可以更新到最新版本的 MSOnline PowerShell (1.1.183.81),以避免在 2024 年 6 月 30 日之后受到影响。要检查 MS Online 模块的版本,您可以使用以下 PowerShell 命令:Get-InstalledModule MSOnline
  • 计划在 2025 年 3 月 30 日之前将所有 MS Online(最新版本)和 Azure AD PowerShell 脚本迁移到 Microsoft Graph。具体可以参考:Migrate from Azure AD PowerShell to Microsoft Graph PowerShell. | Microsoft Learn
  • 迁移这些脚本以使用 Microsoft Graph PowerShell SDK。具体可以参考Microsoft Graph PowerShell SDK overview | Microsoft Learn

 

替代方案

  • Microsoft Graph API:它提供了丰富的接口,可以实现对 Azure Active Directory 和其他 Microsoft 365 服务的全面管理。通过使用 Graph API,开发人员可以以编程方式访问和操作各种资源,如用户、组、应用程序等,实现与现有业务逻辑的无缝集成。
  • Azure CLI:对于习惯在命令行中进行操作的管理员,Azure CLI 是一个不错的选择。它提供了一系列命令来管理 Azure 资源,包括 Azure Active Directory。虽然与 PowerShell 的语法和使用方式有所不同,但经过一定的学习和实践,可以快速上手并完成日常管理任务。
  • Entra ID 管理中心:这是一个图形化的管理界面,提供了直观的操作方式来管理 Azure Active Directory 中的各种资源。对于一些简单的管理任务,如用户创建、组管理等,可以直接在管理中心中完成,无需编写代码或命令。

 

迁移策略和建议

  • 全面评估现有环境:在开始迁移之前,企业需要对现有的 MSOnline 和 AzureAD PowerShell 使用情况进行全面评估,包括涉及的脚本数量、自动化流程、与其他系统的集成点等。这将有助于确定迁移的范围和重点,并制定合理的迁移计划。
    • 目的:脚本的主要功能是什么?
    • 位置:您如何存储和保护脚本?它从哪里执行?
    • 执行频率:脚本运行的频率和平台?
    • 重要性:脚本的业务关键性是什么?
    • Length:脚本有多长?
    • 使用的 Cmdlet 和调用次数:使用的所有 cmdlet 的列表以及对它们的调用频率。
    • 仍然需要:您能否使用现有或新的产品功能来执行脚本执行的操作来获得相同的结果?
    • 改进点:你能改进脚本吗?例如,筛选到管道左侧、使用新式身份验证或使用 PSScriptAnalyzer 模块。

 

  • 培训和学习:组织相关的技术人员和管理员参加培训课程,学习新的替代工具和技术。可以通过在线教程、官方文档、培训讲座等多种方式进行学习,确保团队成员能够熟练掌握新的工具和方法。
  • 逐步迁移和测试:不建议一次性完成所有脚本和流程的迁移,而是采取逐步迁移的策略。在迁移过程中,对每个修改后的脚本或流程进行充分的测试,确保其在新的环境中能够正常运行,并且不会对现有业务造成影响。
    • 从简单/低分开始 :如果您使用的是评分机制,请使用最简单、业务关键性较低的脚本测试升级
    • 映射 cmdlet:使用 Cmdlet 映射,获取 cmdlet 的 Microsoft Graph PowerShell 等效项
    • 映射参数/开关:使用 Microsoft Graph PowerShell 语法,映射参数和开关
    • 映射筛选器:使用 Microsoft Graph PowerShell 语法映射筛选器
    • 检查 cmdlet 文档:人工编写的更新经常发生,以添加有关使用新 cmdlet 的示例
    • 使用专用应用程序并遵守最低权限:由于 Microsoft Graph PowerShell 权限不是预先授权的,因此请根据需要执行一次性权限请求
    • 了解所需的权限:使用 Find-MgGraphCommand 和 Find-MgGraphPermission 了解 cmdlet 所需的权限
    • 了解输出对象:了解 Microsoft Graph PowerShell 中输出对象的更改。Get-Member cmdlet 将帮助您了解对象
    • (可选)了解底层 API
  • 建立监控和反馈机制:在迁移完成后,建立监控机制,及时发现和解决可能出现的问题。同时,鼓励团队成员反馈使用新工具过程中遇到的困难和建议,以便不断优化和完善迁移工作。

 

最后关于在 Microsoft Graph PowerShell 中查找 Azure AD PowerShell 和 MSOnline cmdlet可以参考微软官方网站:在 Microsoft Graph PowerShell 中查找 Azure AD 和 MSOnline cmdlet |Microsoft 学习

 


了解 365vCloud's Journey to the Cloud 的更多信息

订阅后即可通过电子邮件收到最新文章。