问题标签 [owin-security]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
single-sign-on - Authentication.Challenge 不适用于 ApiController
使用 ApiController,Authentication.Challenge 不会提示 Microsoft 登录 SSO。它执行 SignIn 操作方法,没有任何错误。如果我从 ApiController 更改为Controller ,那么它会提示。有人知道如何使用 ApiController 提示 Microsoft 登录吗?
公共类 ValuesController : ApiController {
公共类ValuesController:控制器 {
identityserver3 - 来自身份服务器 3 的外部登录(通过 ADFS)以 http 状态代码 504 响应
我从客户那里收到了联合元数据端点,用于在 identityserver3 中配置 WsFederationAuthentication。
从开发人员机器上一切正常,例如身份服务器登录重定向到 adfs 登录页面,但是在将解决方案部署到 AWS 弹性 bean stalk(位于私有子网中)之后,当我尝试通过外部(ADFS)登录时收到 504 HTTP 状态代码登录。
我在邮递员中模拟了这种情况。我在开发人员机器中收到 302 响应,但请求永远不会在 AWS ec2 实例中结束(邮递员结果窗格显示“正在加载...”)。
我能够从 AWS ec2 实例浏览联合元数据 URL 和 /adfs/ls 端点。
在 idnetity 服务器日志中,我可以看到以下日志,
请求提供者的外部登录:adfs
触发外部身份提供者的挑战
HTTP 响应
在此之后,网关超时发生(通过 AWS 负载均衡器)。
根据 Microsoft.Owin.Security.WsFederation.WsFederationAuthenticationHandler.cs 中的代码,来自 ApplyResponseChallengeAsync() 方法的重定向响应应该使用具有 adfs 登录页面 URL 的位置标头生成。但是,这并没有发生。
我在 HTTPError.Log 中看到以下错误。
我在事件查看器日志中没有看到与上述 HTTP 错误相关的任何事件。
我搜索了上述错误,但解决方案没有针对这个问题产生任何好的结果。
identityserver4 - 如何在 IdentityServer 4 和 MVC .Net 461 框架中映射附加声明
我们已经使用 Idsrv4 大约 2 年了,我们已经成功地与 .Net Core APIs、.Net Core Apps 集成。现在,我们有一个遗留应用程序,从 Net461 迁移到 .Net Core 的成本很高。
我正在尝试将我们的 .Net 461 MVC 应用程序与 Identity Server 4 集成,我几乎成功地集成了它。但问题是,我不知道如何将非标准声明映射到 MVC 应用程序用户声明。
例如,在我们的声明中,我们有像 Country 和 custom_user_id 这样的特殊参数。如果我检查 JwtAccessToken,我可以看到这些值,并且可以确认声明/范围工作正常。但在 UserClaims 中,它们根本不存在。我只能找到 sub、nbr 等标准声明...
在 .Net Core 应用程序中,这很简单,我们只需要ClaimActions.MapUniqueJsonKey
像下面这样使用:
您能否指导我如何强制 OWIN 库从 UserInfoEndpoint 获取数据并将我们的自定义声明映射到 UserClaims?
我正在使用 OWIN 库,我的 OWIN StartUp 类如下所示: