问题标签 [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.

0 投票
0 回答
340 浏览

single-sign-on - Authentication.Challenge 不适用于 ApiController

使用 ApiController,Authentication.Challenge 不会提示 Microsoft 登录 SSO。它执行 SignIn 操作方法,没有任何错误。如果我从 ApiController 更改为Controller ,那么它会提示。有人知道如何使用 ApiController 提示 Microsoft 登录吗?

公共类 ValuesController : ApiController {

公共类ValuesController:控制器 {

0 投票
0 回答
18 浏览

visual-studio-2017 - 更新 nuget 包后,Web.Config 中的程序集指令重复

我尝试重新安装 OWIN,并尝试直接更改 web.config,但仍然收到屏幕截图中显示的错误。这一切都发生在我尝试更新 nuget 包之后......

因为这个,它不会再编译了。

在此处输入图像描述

您可以看到 Microsoft.Owin.Security.Cookies 的两个条目。

我尝试为他们关闭自动生成并手动设置它,但它仍然不起作用。我可以删除某个缓存以解决此问题吗?

0 投票
1 回答
124 浏览

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 错误相关的任何事件。

我搜索了上述错误,但解决方案没有针对这个问题产生任何好的结果。

0 投票
0 回答
16 浏览

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 类如下所示: