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

[玩转系统] Office 365 中的基本身份验证第二部分

作者:精品下载站 日期:2024-12-14 07:05:57 浏览:14 分类:玩电脑

Office 365 中的基本身份验证第二部分


Update. Microsoft has changed their plans due to the Covid-19 crisis going on at the moment. Support for Basic Authentication in Exchange Online has been postponed to the second half of 2021 according to their blogpost on Basic Authentication and Exchange Online - April 2020 Update.

There are a few things to be aware of. For new tenants, Basic Authentication is already turned off, for older tenants it is still turned on. However, if Basic Authentication has not been used in a tenant it will be turned off as well. This will start upcoming October.

在我之前的博文中,我详细解释了基本身份验证和现代身份验证、它们的工作原理以及如何识别您的 Outlook 客户端正在使用哪种方法。在这篇博文中,我将详细介绍如何监控基本身份验证,以了解哪些客户端当前仍在 Office 365 环境中使用基本身份验证。我将继续介绍如何禁用基本身份验证以及如何测试可能发生的情况。

监控基本身份验证

在我之前的博文中,我详细解释了基本身份验证、如何识别它以及现代身份验证的工作原理。

下一步是确定有多少用户和应用程序实际上在 Office 365 环境中使用基本身份验证。毕竟,当 Microsoft 停止基本身份验证时,这些用户就会受到影响。

要识别这一点,请登录到 Azure Active Directory 门户 (https://aad.portal.azure.com) 并选择登录(在“监视”下)。在那里,您将看到所有客户端、所有服务和所有位置的 Azure AD 中所有登录(成功和失败)的概述。下面的屏幕截图显示了一个示例(点击放大):

[玩转系统] Office 365 中的基本身份验证第二部分

这显示了 Azure AD 中所有应用程序和服务的所有登录(失败和成功)。您可以使用添加过滤器按钮来缩小信息范围,在此博文中仅显示有关基本身份验证的信息。

为此,请单击添加过滤器 |选择客户端应用 |点击应用

单击“客户端应用程序:未选择”,然后选择除浏览器移动应用程序和桌面客户端之外的所有选项,如以下屏幕截图所示(单击放大):

[玩转系统] Office 365 中的基本身份验证第二部分

注意。于 2020 年 4 月 6 日更新了屏幕截图。微软在这里进行了很好的 GUI 增强,可以轻松识别不同的客户端(现代与传统)。

现在将显示您环境中所有基本身份验证尝试的概述。当您选择一项时,它将显示其他详细信息,包括客户端应用程序、用户名和用户代理(标识客户端应用程序),如以下屏幕截图所示(单击放大):

[玩转系统] Office 365 中的基本身份验证第二部分

另一件有趣的事情是,您可以确定所有失败的基本身份验证尝试来自何处。添加过滤器状态 | 失败,您只会看到失败的尝试。有些是合法的(输入密码时输入错误),但大多数只是暴力攻击。以下屏幕截图显示了来自俄罗斯、泰国和新喀里多尼亚的尝试,这些地区我们没有办事处。您还可以看到该尝试来自脚本(用户代理 CBAInPROD),并且它使用 IMAP4(对所有邮箱禁用)。这是您想要在租户中禁用基本身份验证的原因之一。点击放大:

[玩转系统] Office 365 中的基本身份验证第二部分

这是一种识别使用 ActiveSync 作为协议并因此使用基本身份验证的移动客户端的简单方法。 Apple iOS 原生邮件客户端从 iOS11 开始支持 OAuth2,因此所有最新的 iPhone 都使用现代身份验证。对于 Android 本机邮件客户端来说,情况有所不同。本机 Gmail 客户端支持 OAuth2,但当然不能与 Office 365 一起使用。大多数其他邮件客户端尚不支持 OAuth2,因此这些客户端使用基本身份验证,当 Microsoft 停止基本身份验证时,将会遇到问题。换句话说,这些客户端将停止工作。将客户端应用过滤器更改为仅Exchange ActiveSync,并删除状态 | 失败过滤器。它将显示使用基本身份验证的移动用户列表,如以下屏幕截图所示(出于隐私原因删除了用户名)(点击放大):

[玩转系统] Office 365 中的基本身份验证第二部分

注意。 Outlook for iOS 和 Outlook for Android 正在使用 OAth2,因此它们将继续有效。

因此,使用 Azure AD 门户中登录页面上的筛选选项,您可以确定哪些客户端在访问 Office 365 服务时仍在使用基本身份验证(从而确定哪些客户端在基本身份验证停止时受到影响)。

禁用基本身份验证

可以通过创建身份验证策略并将此策略应用于用户来禁用 Office 365 中的基本身份验证。应用后,他们将无法再使用基本身份验证登录任何 Office 365 服务。要创建新的身份验证策略,请在 Exchange Online PowerShell 中使用以下命令:

[PS] C:\> New-AuthenticationPolicy -Name“阻止基本身份验证”

[玩转系统] Office 365 中的基本身份验证第二部分

要将用户添加到策略并有效阻止该用户的基本身份验证,您可以在 Exchange Online PowerShell 中使用以下命令:

[PS] C:\> Set-User -Identity j.wesselius@exchangelabs.nl -AuthenticationPolicy “阻止基本身份验证”

此政策最多需要 24 小时才能生效。要使策略生效(几乎立即,或至少在 30 分钟内),您可以使用以下命令:

[PS] C:\> Set-User -Identity j.wesselius@exchangelabs.nl -AuthenticationPolicy “阻止基本身份验证” -STSRefreshTokensValidFrom $ ([System.DateTime]::UtcNow)

要从身份验证策略中删除用户,您可以使用 $Null 作为身份验证策略:

[PS] C:\> Set-User -Identity j.wesselius@exchangelabs.nl -AuthenticationPolicy $Null

当您将多个用户添加到此身份验证策略时,您可以开始使用各种客户端进行测试,并创建一个包含客户端和场景的表,如下表所示:

Client

结果

Office 2010

停止工作(不断要求输入密码)

Office 2013/2016

继续工作(已经使用现代身份验证)

Outlook 2010 on-premises mailbox, cross-premises free/busy

继续工作,但需要进一步调查(注 1)

Outlook 2013/2016 on-premises mailbox, cross-premises free/busy

继续工作

iPhone 8, iOS13, native mailclient

继续工作

iPhone 8, iOS13, Outlook for iOS

继续工作

Samsung A10, Android 9, native Email client 6.1.11.6

停止工作

Samsung A10, Android 9, AquaMail (by MobiSystems, supports OAuth)

继续工作(注2)

Samsung A10, Android 9, Outlook for Android

继续工作

Exchange Online PowerShell New-PSSession

停止工作(注释 3)

Exchange Online PowerShell module

继续工作

Exchange PowerShell V2

继续工作

POP3 Clients

待定

IMAP4 Clients

待定

注1。在这种情况下,Outlook 客户端使用本地邮箱,但尝试从 Exchange Online 中的邮箱检索忙/闲信息。这两个帐户都在 Azure AD 中禁用了基本身份验证。

注2。 Android 9 中的本机邮件客户端(在我的三星 A10 上)仅支持基本身份验证。这不是设备限制,而是应用程序限制。例如,AquaMail(来自 MobiSystems)确实支持 OAuth,并在禁用基本身份验证时继续工作。然而,AquaMail 不是免费应用程序,而是基于订阅的应用程序。

注3。可以使用以下方法连接到 Exchange Online,如表第 9 行所示:

$ExCred = Get-Credential TenantAdminAccount
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://ps.outlook.com/powershell/ -Credential $ExCred -Authentication Basic -AllowRedirection
Import-PSSession $Session

这是使用基本身份验证并将停止工作。但是,您无论如何都不应该使用这种工作方式,因为它不支持 MFA,而这是管理员帐户推荐的最佳实践!有关详细信息,请检查 Office 365 中管理员帐户的多重身份验证 MFA。

概括

在前两篇博文中,我尝试更多地解释基本身份验证和现代身份验证,以及当 Microsoft 明年 10 月终止对 Exchange Online 中基本身份验证的支持时可能会发生什么情况。

当然,连接到 Exchange Online 时,事情会中断。最明显的是 Outlook 2010,它将不再连接。不支持 oAuth2 的本机移动客户端(在 Android 邮件应用程序中很常见,但在较旧的 iPhone 中也很常见)也会停止工作。如果您现在不采取行动,当微软做出改变时,您将会遇到很多麻烦。

现在,开始使用我在第二篇博文中解释的选项进行测试。创建您自己的使用基本身份验证的应用程序和服务列表,并开始使用阻止基本身份验证的身份验证策略进行测试。这是为即将到来的这一重大(大型)变革做好准备的唯一方法。但最终,我们都将从安全角度受益。

更多信息

  • 基本身份验证和 Exchange Online - 2020 年 2 月更新 - https://techcommunity.microsoft.com/t5/exchange-team-blog/basic-auth-and-exchange-online-february-2020-update/ba-p/1191282
  • 在 Exchange Online 中禁用基本身份验证 - https://docs.microsoft.com/en-us/exchange/clients-and-mobile-in-exchange-online/disable-basic-authentication-in-exchange-online
  • Microsoft 身份平台 (v2.0) 概述 - https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-overview
  • 在 Exchange Online 中启用新式身份验证 - https://docs.microsoft.com/en-us/exchange/clients-and-mobile-in-exchange-online/enable-or-disable-modern-authentication-in-exchange-online
  • 身份验证基础知识 - https://docs.microsoft.com/nl-nl/azure/active-directory/develop/authentication-scenarios
  • Azure AD 邮袋:发现和阻止旧身份验证 - https://techcommunity.microsoft.com/t5/azure-active-directory-identity/azure-ad-mailbag-discovering-and-blocking-legacy-authentication/ba-p/ 369725
  • 现代身份验证如何适用于 Office 2013 和 Office 2016 客户端应用程序 - https://docs.microsoft.com/en-us/office365/enterprise/modern-auth-for-office-2013-and-2016
  • iOS 11 在本机邮件应用程序中提供对 OAuth 2.0(现代身份验证)的支持 - https://blog.peterdahl.net/2017/09/12/ios-11-provides-support-for-oauth-2-0-in -本机邮件应用程序/
  • Microsoft 身份平台的演变 - https://docs.microsoft.com/en-us/azure/active-directory/develop/about-microsoft-identity-platform
  • 用户代理字符串列表 - https://deviceatlas.com/blog/list-of-user-agent-strings
  • 用于阻止旧版身份验证的 Azure AD 条件访问支持现已推出公共预览版! - https://techcommunity.microsoft.com/t5/Azure-Active-Directory-Identity/Azure-AD-Conditional-Access-support-for-blocking-legacy-auth-is/ba-p/245417
  • 如何:通过条件访问阻止对 Azure AD 的旧式身份验证 - https://docs.microsoft.com/nl-nl/azure/active-directory/conditional-access/block-legacy-authentication

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

取消回复欢迎 发表评论:

关灯