是否可以使用 OpenID Connect 将 FoxID 连接到 Azure AD?

问题描述

是否可以使用 OpenID Connect 将 FoxID 连接到 Azure AD? 将 Azure AD 作为 FoxID 上的升级方 OP (IdP)。

问候 符文 (JO informatik)

解决方法

是的,可以使用 OpenID Connect 将单租户和多租户 Azure AD 应用程序连接为 FoxID 上的up-party。

另请参阅 documentation

配置单个租户

开始在 FoxIDs 中创建 OpenID Connect up-party

  1. 添加名称
  2. 选择显示高级设置
  3. 选择波浪号 URL 绑定模式

Read the redirect URLs

现在可以读取 Redirect URLPost logout redirect URL

创建 Azure AD 应用

  1. 添加名称
  2. 选择单个租户
  3. (这是一个 Web 应用程序)添加 Redirect URL
  4. 点击注册
  5. 复制应用(客户端)ID
  6. 复制目录(租户)ID
  7. 转到“身份验证”选项卡并将 FoxID Post logout redirect URL 添加为 Front-channel logout URL,单击保存。
  8. 转到“证书和机密”选项卡并添加客户端机密并复制机密值。

回到 FoxIDs 派对

  1. 添加权限https://login.microsoftonline.com/{Azure AD tenant ID}/v2.0
  2. 添加配置文件和电子邮件范围
  3. 将 Azure AD 客户端 ID 添加为自定义 SP 客户端 ID
  4. 将 Azure AD 客户端机密值添加为客户端机密
  5. 从 ID 令牌中选择使用声明
  6. 添加被上游方接受的声明。例如,preferred_username、email、name、given_name、family_name、oid、ipaddr
  7. 点击创建。

就是这样,你完成了。现在可以选择新的上级派对作为下级派对中的可能上级派对。

配置多租户

多租户配置与单租户配置略有不同。

在 Azure AD 中

  1. 在应用创建过程中选择多租户

在 FoxIDs 派对

  1. 添加权限https://login.microsoftonline.com/common/v2.0
  2. 选择编辑颁发者
  3. 将发行人更改为https://login.microsoftonline.com/{Azure AD tenant ID}/v2.0,您可以添加多个发行人

从访问令牌中读取声明

如果要从访问令牌读取声明,则需要再添加一个 Azure AD 应用作为资源 (API)。公开资源应用程序的范围,并授予其他 Azure AD 应用资源应用程序范围。 然后将资源应用范围添加为 FoxIDs up-party 中的范围。

在此期间,访问令牌由同一个 OP (IdP) 颁发并因此被接受。