配置 ADFS 以允许服务器应用程序访问并应用身份验证策略

配置 ADFS 以允许服务器应用程序访问并应用身份验证策略

我的目标是将身份验证从我的 OIDC 身份提供商(使用 Identity Server 4)委托给 ADFS。在 ADFS 中,我还想配置在该场景中必须使用 MFA。

根据文档我的解释是我Server application在 下创建了一个客户端AD FS -> Application Groups。该定义给了我一个客户端 ID 和客户端密钥,这很好,因为我的 IDP 是一个机密客户端。委托工作正常。现在的问题是,我无法配置应用于该客户端的身份验证策略,即用户登录时必须使用 MFA。

客户Web Api端定义是唯一允许配置身份验证策略的定义(与Native application和相反Server application)。(在示例中可见这里)。我不明白为什么Web API存在可能的应用程序类型。Web API 不会从 ADFS 请求访问或 ID 令牌。它只需验证令牌。但Web APINative application或之间似乎存在一些依赖关系(因为客户端-服务器应用程序模板) Server application

是否可能?我如何使用身份验证策略配置机密客户端?

答案1

同时我找到了一个解决方案堆栈溢出

引用:

看起来,通过在同一个应用程序组中定义两个应用程序可以实现这一点:

The server application, which has a client secret in addition to client id
The WebAPI application, for which you can define an access policy.

为了使其工作,您需要将依赖方标识符(服务器应用程序的客户端 ID)分配给 WebAPI 标识符,并确保 WebAPI 应用程序的“客户端权限”包含服务器应用程序。

如果访问策略评估未成功,则依赖方(请求身份验证的应用程序)将收到 access_denied 消息。

相关内容