问题标签 [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 投票
2 回答
2821 浏览

asp.net-mvc - 在 MVC 5 中获取 DataProtectionProvider 以正确进行依赖注入

在尝试DataProtectionProvider手动创建时,我偶然发现了 Microsoft 文档,DpapiDataProtectionProvider其中说:

用于提供源自数据保护 API 的数据保护服务。当您的应用程序不是由 ASP.NET 托管并且所有进程都以相同的域身份运行时,它是数据保护的最佳选择。

突然出现一个问题:当您的应用程序由 ASP.NET 托管时,最好的选择是什么?

进一步搜索,似乎最好的选择是DataProtectionProvider从 OWIN 获得。这可以在启动配置中完成,您可以在其中拥有IAppBuilder和使用AppBuilderExtensions位于Microsoft.Owin.Security.DataProtection命名空间中的名称,您可以调用app.GetDataProtectionProvider().

到目前为止,我还是很满意的。但是,现在您想DataProtectionProvider在类的构造函数中注入 (例如 a UserManager)。我看到了一个建议,您将其存储DataProtectionProvider在静态属性中,然后在需要的地方使用它,但这似乎是一个相当错误的解决方案。

我认为类似于以下代码的解决方案是合适的(使用 ninject 容器):

0 投票
1 回答
211 浏览

openid - OWIN OpenID Connect 中间件是否支持资源所有者流程

我看到的所有使用 Microsoft 的 OWIN OpenID Connect 中间件(即 app.UseOpenIdConnectAuthentication)的示例都使用授权代码、隐式流或混合流。

该中间件是否也支持资源所有者流程,如果支持,是否有示例?

0 投票
1 回答
1281 浏览

asp.net - 使用 JwtBearerAuthenticationOptions 时未授权 Web API

我已经从如何使用 jwt 授权的演练中获取了第 2 部分,以便我可以从我的客户端获取访问令牌并授权他们使用 api。但是,我似乎无法让它发挥作用。我不断收到来自 Postman 的 401 消息,并附有:

教程链接:http ://bitoftech.net/2014/10/27/json-web-token-asp-net-web-api-2-jwt-owin-authorization-server/

访问令牌来自我用 Java 创建的授权服务,因此本教程的第一部分不适用于我。

智威汤逊

Web API 代码片段

它与第 2 节中链接上的内容略有不同,但那是因为我没有对我的秘密进行 base64 编码,而且我也没有将颁发者放在我的 jwt 中。

邮差

任何帮助将不胜感激。

谢谢!

0 投票
1 回答
662 浏览

asp.net - 未调用 OWIN Cookie 身份验证中的 OnValidateIdentity

我正在使用 OWIN cookie 身份验证中间件,并设置了一个自定义OnValidateIdentity方法,应该在所有需要进行身份验证的请求上调用该方法。

我的设置如下所示:

我遇到的问题是,对于某些请求,OnValidateIdentity没有调用。如果我多次点击同一个受保护的 Web API 控制器,一些请求将不会调用OnValidateIdentity-method。

当我需要使用GetOwinContext().Authentication.User并且ClaimsPrincipal未填充时,这会导致稍后在处理中出现问题。

这可能是什么原因?

0 投票
0 回答
21 浏览

asp.net-mvc - 我试图澄清三年前关于“从startup.auth到视图ASP.NET的SteamAuth var”的不同答案

我意识到这可能有点老了,但我正在尝试和原来的问题一样。可以在这里看到: SteamAuth var from startup.auth to the view ASP.NET

我已经写了你所有的东西,但是“Steam.Models.ApplicationDbContext()”对我不起作用。

那是只存在于我的项目中的东西,使它成为命名约定错误,还是其他什么?

如果有人知道获取从 app.UseSteamAuthentication(API Key) 返回的信息的方法;那也行。

教程的链接也返回 404 错误。我想看看它是否仍然可用。

谢谢您的帮助。:)

0 投票
2 回答
1621 浏览

asp.net-mvc - IDX10503:更新到 Owin.Security v 4.0.0 后签名验证失败

根据主题,我将Owin.Security.WsFederation依赖包更新到 4.0 版,但出现错误。

除了更改之外,我没有进行任何代码更改

WsFederationConfiguration现在上课似乎在哪里。

这是我的StartupAuth

4.0 还需要验证签名吗?我假设它正在谈论来自发行人的令牌签名。我没有看到如何启用 ShowPII 以查看它正在查看的密钥。

我正在使用带有完整框架的 MVC5。不是核心。

更新

我尝试修改代码以使用属性文件中身份提供者提供的元数据来创建WsFederationConfiguration,但我仍然得到相同的错误。我不确定签名是什么,或者如果它不在 idp 元数据中,我从哪里得到它。

更新2

以下是我在属性文件中使用 sts 提供的 wsfed 元数据所做的更改。(我已经删除了实际的 base64 编码元数据,但不用说它与您从将元数据发布为端点的 STS 中获取元数据时获得的 XML 相同。正如我上面所说,我得到了同样的错误:

0 投票
0 回答
94 浏览

asp.net-mvc - AuthenticationTicket 类的标识属性

AuthenticationTicket 类的标识属性不包含外部用户的 UPN 声明。这是预期的行为吗?以前有这个问题吗?https://docs.microsoft.com/en-us/previous-versions/aspnet/mt152195(v%3Dvs.113)但是,内部用户存在 UPN 声明!

0 投票
1 回答
102 浏览

asp.net - 为什么 SerializeTicket() 返回具有资源允许客户端的所有范围的令牌

使用 AspNet 4.6.2 生成访问令牌,使用任何 Auth 流(尝试过 Code Flow、Implicit Flow、Client Credentials Flow),使用AuthenticationTokenCreateContext来自 的类Microsoft.Owin.Security.Infrastructure,我观察到一些奇怪的行为。

我们已经实现了一个身份验证服务器,其中资源可以允许客户端请求某些范围,但是,始终返回一个令牌,其中包含客户端能够从该资源请求的所有范围。

相关代码为:

一旦创建,accessTokenCreateContext.Ticket.Properties.GetScope()返回预期的范围,但是一旦通过该SerializeTicket()方法创建(JWT)accessToken,令牌就具有客户端能够从资源请求的所有范围。

为什么此方法使用不在票证中的范围序列化票证?

0 投票
1 回答
343 浏览

c# - ASP.NET Identity 仅更改密码管理员和删除用户无需电子邮件

我正在尝试实现 asp 身份和 owin 安全性。我实现登录,创建新用户,并在创建新用户时为该用户分配角色。新用户使用用户名和密码NOT EMAIL注册。只有管​​理员才能添加新用户,因为他只能访问管理员页面。

所以下一个问题是我想允许管理员重置密码和删除用户。我的逻辑是我在 gridview 中列出所有用户(它是私有应用程序,所以它想要太多用户)并用两个按钮来做这件事。所以我得到用户但重置不起作用。

我发现了像这个LINK这样的问题, 但我没有找到任何解决方案。

这是我添加新用户的方法,它正在工作。

我尝试使用此方法重置密码

但它不起作用。

如果有人可以帮助我重置密码或删除用户,我很感激。

问候

更新 1

我以“经典方式”删除用户

考虑到安全问题,我不知道这是一个不错的选择。

0 投票
1 回答
478 浏览

c# - 无效签名 - JWT 需要有三个段

我正在使用OAuthAuthorizationServerProviderMicrosoft Owin Security,这是我正在使用的代码,

CustomOAuthProvider,

我在这里尝试添加scope,但看起来这不是正确的添加方式,即使所有看起来都很好并且工作正常,当我尝试查看令牌时,

  • jwt.IO我看到无效签名错误。
  • calebb.net,它是说 - JWT 需要有三个段

这里有什么问题?请建议。

在此处输入图像描述

在此处输入图像描述