教程:将 Okta 联合身份验证迁移到 Microsoft Entra ID 托管身份验证

在本教程中,了解如何将 Office 365 租户与 Okta 进行联合以实现单一登录 (SSO)。

可以分阶段将联合迁移到 Microsoft Entra ID,以确保用户获得良好的身份验证体验。 在分阶段迁移中,可以测试对剩余 Okta SSO 应用程序的反向联合访问。

注意

本教程中所述的方案只是实现迁移的一种可能方法。 应尝试根据你的特定设置调整这些信息。

先决条件

  • 一个已联合到 Okta 以实现 SSO 的 Office 365 租户
  • Microsoft Entra Connect 服务器或 Microsoft Entra Connect 云配置代理,配置用于到 Microsoft Entra ID 的用户预配
  • 以下角色之一:应用程序管理员、云应用程序管理员或混合标识管理员。

配置 Microsoft Entra Connect 身份验证

将 Office 365 域与 Okta 联合的客户在 Microsoft Entra ID 中可能没有有效的身份验证方法。 在迁移到托管身份验证之前,请验证 Microsoft Entra Connect 并将其配置为用户登录。

设置登录方法:

  • 密码哈希同步 - Microsoft Entra Connect 服务器或云预配代理实现的目录同步功能的扩展
  • 直通身份验证 - 使用相同的密码登录本地和云应用程序
  • 无缝 SSO - 在连接到公司网络的公司台式机上登录用户

要在 Microsoft Entra ID 中创建无缝身份验证用户体验,请将无缝 SSO 部署到密码哈希同步或直通身份验证。

有关无缝 SSO 的先决条件,请参阅快速入门:Microsoft Entra 无缝单一登录

在本教程中,将配置密码哈希同步和无缝 SSO。

配置用于密码哈希同步和无缝 SSO 的 Microsoft Entra Connect

  1. 在 Microsoft Entra Connect 服务器上,打开Microsoft Entra Connect 应用。
  2. 选择配置
  3. 选择“更改用户登录”。
  4. 选择下一步
  5. 输入 Microsoft Entra Connect 服务器的混合标识管理员凭据。
  6. 服务器已配置为与 Okta 联合。 将选项更改为“密码哈希同步”。
  7. 选择“启用单一登录”。
  8. 选择“下一步”。
  9. 对于本地系统,请输入域管理员凭据。
  10. 选择下一步
  11. 在最后一页上,选择“配置”。
  12. 忽略 Microsoft Entra 混合联接的警告。

配置分阶段推出功能

提示

本文中的步骤可能因开始使用的门户而略有不同。

在测试取消联合域之前,请在 Microsoft Entra ID 中使用云身份验证分阶段推出来测试取消联合用户。

了解详细信息:使用分阶段推出迁移到云身份验证

在 Microsoft Entra Connect 服务器上启用密码哈希同步和无缝 SSO 后,请配置分阶段推出:

  1. 至少以混合标识管理员身份登录到 Microsoft Entra 管理中心

  2. 浏览到“标识”>“混合管理”>“Microsoft Entra Connetc”>“Connect 同步”。

  3. 确认已在租户中启用密码哈希同步

  4. 选择“为托管用户登录启用分阶段推出”。

  5. 服务器配置后,密码哈希同步设置可以更改为“打开”。

  6. 启用设置。

  7. 无缝单一登录为“关闭”。 如果启用它,则会出现错误,因为它已在租户中启用。

  8. 选择“管理组”。

    Microsoft Entra 管理中心内“启用分阶段推出功能”页面的屏幕截图。出现“管理组”按钮。

  9. 将组添加到密码哈希同步推出。

  10. 请等待大约 30 分钟,以便该功能在租户中生效。

  11. 功能生效后,用户在尝试访问 Office 365 服务时不会重定向到 Okta。

分阶段推出功能不支持某些方案:

  • 不支持 POP3 和 SMTP 等旧式身份验证协议。
  • 如果为 Okta 配置了 Microsoft Entra 混合联接,则 Microsoft Entra 混合联接流将进入 Okta,直到域被取消联合。
    • Okta 中保留了 Microsoft Entra 混合联接 Windows 客户端的旧式身份验证的登录策略。

在 Microsoft Entra ID 中创建 Okta 应用

转换为托管身份验证的用户可能需要访问 Okta 中的应用程序。 要让用户访问这些应用程序,请注册链接到 Okta 主页的 Microsoft Entra 应用程序。

为 Okta 配置企业应用程序注册。

  1. 至少以云应用程序管理员身份登录到 Microsoft Entra 管理中心

  2. 浏览到“标识”>“应用程序”>“企业应用程序”>“所有应用程序”。

    Microsoft Entra 管理中心左侧菜单的屏幕截图。

  3. 选择“新建应用程序” 。

    显示 Microsoft Entra 管理中心内“所有应用程序”页的屏幕截图。其中显示了新应用程序。

  4. 选择“创建自己的应用程序”。

  5. 在菜单上,命名 Okta 应用。

  6. 选择“注册所用的应用程序以将其与 Microsoft Entra ID 集成”。

  7. 选择创建

  8. 选择“任何组织目录中的帐户(任何 Microsoft Entra 目录 - 多租户)”。

  9. 选择“注册”。

    注册应用程序的屏幕截图。

  10. 在“Microsoft Entra ID”菜单上,选择“应用注册”。

  11. 打开创建的注册。

Microsoft Entra 管理中心内“应用注册”页的屏幕截图。出现新的应用注册。

  1. 记录租户 ID 和应用程序 ID。

备注

需要租户 ID 和应用程序 ID 来配置 Okta 中的标识提供者。

Microsoft Entra 管理中心内“Okta 应用程序访问”页的屏幕截图。出现租户 ID 和应用程序 ID。

  1. 在左侧菜单中选择“证书和机密”
  2. 选择“新建客户端机密”。
  3. 输入机密名称。
  4. 输入其到期日期。
  5. 记录机密值和 ID。

注意

值和 ID 稍后不会出现。 如果不记录信息,则必须重新生成秘密。

  1. 在左侧菜单中,选择“API 权限”。

  2. 向应用程序授予对 OpenID Connect (OIDC) 堆栈的访问权限。

  3. 选择“添加权限”。

  4. 选择“Microsoft Graph

  5. 选择“委托的权限”。

  6. 从“OpenID 权限”部分,添加“电子邮件”、“openid”和“配置文件” 。

  7. 选择“添加权限”。

  8. 选择“为<租户域名>授予管理员同意”。

  9. 等待“已授予”状态出现。

    API 权限页面的屏幕截图,其中包含已授予同意的消息。

  10. 在左侧菜单中,选择“品牌”。

  11. 对于“主页 URL”,请添加用户应用程序主页。

  12. 在 Okta 管理门户中,要添加新的标识提供者,请选择“安全性”,然后选择“标识提供者”。

  13. 选择“添加 Microsoft”。

    Okta 管理门户的屏幕截图。“添加 Microsoft”将出现在“添加标识提供者”列表中。

  14. 在“标识提供者”页面,在“客户端 ID”字段中输入应用程序 ID。

  15. 在“客户端密码”字段中输入客户端密码。

  16. 选择“显示高级设置”。 默认情况下,此配置将 Okta 中的用户主体名称 (UPN) 关联到 Microsoft Entra ID 中的 UPN,以实现反向联合访问。

    重要

    如果 Okta 和 Microsoft Entra ID 中的 UPN 不匹配,请选择在用户之间通用的属性。

  17. 完成自动预配选择。

  18. 默认情况下,如果 Okta 用户的匹配项没有出现,系统会尝试在 Microsoft Entra ID 中预配用户。 如果从 Okta 迁移了预配,请选择“重定向到 Okta 登录页面”。

    Okta 管理门户中“常规设置”页面的屏幕截图。出现重定向到 Okta 登录页面的选项。

创建了标识提供者 (IDP)。 将用户发送到正确的 IDP。

  1. 在“标识提供者”菜单上,选择“传递规则”,然后选择“添加传递规则”。

  2. 使用 Okta 配置文件中的可用属性之一。

  3. 若要从设备和 IP 直接登录到 Microsoft Entra ID,请设置下图中的策略。 在本例中,分区属性在所有 Okta 配置文件中都未使用。 这是 IDP 路由的不错选择。

  4. 记录重定向 URI 以将其添加到应用程序注册中。

    重定向 URI 位置的屏幕截图。

  5. 在应用程序注册上的左侧菜单中,选择“身份验证”。

  6. 选择“添加平台

  7. 选择“Web”。

  8. 在 Okta 中添加在 IDP 中记下的重定向 URI。

  9. 选择“访问令牌”和“ID 令牌” 。

  10. 在管理控制台中,选择“目录”。

  11. 选择“人员”。

  12. 选择测试用户来编辑配置文件。

  13. 在配置文件中,添加“ToAzureAD”。 请查看下图。

  14. 选择“保存”。

    Okta 管理门户的屏幕截图。将出现配置文件设置,并且“分区”框具有 ToAzureAD。

  15. 以修改后的用户身份登录到 Microsoft 356 门户。 如果用户不在托管身份验证试点中,则操作将进入循环。 若要退出这种循环,请将该用户添加到托管身份验证体验。

测试试点成员的 Okta 应用访问权限

在 Microsoft Entra ID 中配置 Okta 应用并在 Okta 门户中配置 IDP 后,将应用程序分配给用户。

  1. 在 Microsoft Entra 管理中心内,浏览到“标识”>“应用程序”>“企业应用程序”。

  2. 选择创建的应用注册。

  3. 转到“用户和组”。

  4. 添加与托管身份验证试点关联的组。

    注意

    可以从“企业应用程序”页面添加用户和组。 不能从“应用注册”菜单添加用户。

    Microsoft Entra 管理中心的“用户和组”页面的屏幕截图。出现名为“托管身份验证暂存组”的组。

  5. 请等待大约 15 分钟。

  6. 以托管身份验证试点用户身份登录。

  7. 转到“我的应用”。

    “我的应用”库的屏幕截图。出现 Okta 应用程序访问的图标。

  8. 要返回 Okta 主页,请选择“Okta 应用程序访问”磁贴。

测试试点成员的托管身份验证

配置 Okta 反向联合应用后,请用户对托管身份验证体验进行测试。 建议配置公司品牌打造以帮助用户识别租户。

了解详细信息:配置公司品牌打造

重要

在从 Okta 取消联合域之前,请确定所需的条件访问策略。 可以在截断之前保护环境。 请参阅教程:将 Okta 登录策略迁移到 Microsoft Entra 条件访问

取消联合 Office 365 域

如果你的组织对托管身份验证体验感到满意,则可以从 Okta 取消联合你的域。 若要开始,请使用以下命令连接到 Microsoft Graph PowerShell。 如果没有 Mirosoft Graph PowerShell 模块,请输入 Install-Module Microsoft.Graph 下载该模块。

  1. 在 PowerShell 中,使用混合标识管理员帐户登录到 Microsoft Entra ID。

     Connect-MgGraph -Scopes "Domain.ReadWrite.All", "Directory.AccessAsUser.All"
    
  2. 若要转换域,请运行以下命令:

     Update-MgDomain -DomainId yourdomain.com -AuthenticationType "Managed"
    
  3. 验证是否已通过运行以下命令将该域转换为托管域。 应将“身份验证类型”设置为“托管”。

    Get-MgDomain -DomainId yourdomain.com
    

将域设置为托管身份验证后,便已从 Okta 取消联合了你的 Office 365 租户,同时还保留了用户对 Okta 主页的访问权限。

后续步骤