如何检测和调查非活动用户帐户

在大型环境中,当员工离开组织时,并不总是会删除用户帐户。 作为 IT 管理员,你希望检测和解决这些过时的用户帐户,因为它们会带来安全风险。

本文介绍了在 Microsoft Entra ID 中处理过时用户帐户的方法。

备注

本文仅适用于在 Microsoft Entra ID 中查找非活动用户帐户。 它不适用于在 Azure AD B2C 中查找非活动帐户。

先决条件

  • 若要使用 Microsoft Graph 访问 lastSuccessfulSignInDateTime 属性,需要Microsoft Entra ID P1 或 P2 许可证。
  • 需要向应用授予以下Microsoft Graph 权限:
    • AuditLog.Read.All
    • User.Read.All
  • 报告读取者是访问活动日志所需的最低特权角色。

什么是未激活用户帐户?

非活动帐户是组织成员获取对资源的访问权限时不再需要的用户帐户。 非活动帐户的一个关键特点是在一段时间未使用它来登录到你的环境。 由于非活动帐户与登录活动相关联,因此可以使用帐户上次尝试登录时的时间戳来检测非活动帐户。

此方法的难点在于如何界定一段时间在你的环境中的意义。 例如,用户可能由于度假而在一段时间内未登录到环境。 你需要考虑未登录到你的环境的所有合法原因。 在许多组织中,非活动用户帐户的合理窗口介于 90 到 180 天之间。

上次登录日期可以提供关于用户是否仍需要访问资源的潜在见解。 它有助于确定是否仍需要组成员身份或应用访问权限,或者是否可以将其删除。 对于外部用户管理,可以确定外部用户是否仍在租户中处于活动状态或应删除。

如何查找和调查非活动用户帐户

可以使用 Microsoft Entra 管理中心或 Microsoft 图形 API 查找非活动用户帐户。 虽然没有非活动用户帐户的内置报表,但可以使用上次登录日期和时间来确定用户帐户是否处于非活动状态。

若要查找用户的最后一次登录时间,可以在 Microsoft Entra 管理中心查看用户列表。 虽然所有用户都可以查看用户列表,但某些列和详细信息仅适用于具有相应权限的用户。

查找所有用户的最后一次登录时间

  1. 至少以报告读取者身份登录到 Microsoft Entra 管理中心

  2. 浏览到“标识”>“用户”>“所有用户”。

  3. 选择 管理视图,然后 编辑列

    “用户”视图的屏幕截图,其中突出显示了“管理视图”选项。

  4. 选择列表中的“+ 添加列”,然后选择“上次交互式登录时间”,最后选择“保存”。

    “编辑列”窗格的屏幕截图,其中突出显示了“上次交互式登录时间”选项。

  5. 现在,在所有用户列表中显示该列后,选择 添加筛选器 并使用筛选器选项为搜索设置时间范围。

    • 选择 < = 作为运算符,然后选择日期以查找在所选日期之前的最后一次登录

上次登录筛选器结果的屏幕截图。

调查单个用户

如果需要查看用户的最新登录活动,可以在 Microsoft Entra ID 中查看用户的登录详细信息。 你还可以使用 Microsoft Graph API,如按名称查询用户部分中所述。

  1. 至少以报告读取者身份登录到 Microsoft Entra 管理中心

  2. 浏览到“标识”>“用户”>“所有用户”。

  3. 从列表中选择用户。

  4. 在用户“总览”的我的动态区域中,找到登录图块。

    用户概述页的屏幕截图,其中突出显示了登录活动磁贴。

此磁贴上显示的上次登录日期和时间最多可能需要 24 小时才能更新,这意味着日期和时间可能不是最新的。 如果需要几乎实时查看活动,请选择“登录”磁贴上的查看所有登录链接,以查看该用户的所有登录活动。

如何解决非活动用户的问题

识别非活动用户后,首先提出以下问题:

  • 用户是否仍被组织使用?
  • 用户是否仍需访问其有权访问的资源?
  • 是否出于任何其他原因仍然需要该用户帐户?

解决非活动用户的方式取决于你的方案,但清理未使用的帐户或超特权帐户应是降低安全风险的优先级。 以下功能和选项是一个很好的起点,但请注意,其中一些功能可能需要额外的许可。