问题标签 [aspnet-contrib]
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.
oauth-2.0 - Asp.Net Core、JWT 和 OpenIdConnectServer
我正在尝试了解有关 Asp.Net Core 中 JWT 令牌的所有这些内容。在因大量误解而流血工作后,我陷入了困境。我的任务是制作带有两个控制器(受保护和不受保护)的 WebApi 服务器。我应该从服务器授予令牌并能够获得受保护的资源。当我运行服务器并尝试从邮递员那里获取受保护的资源时,一切似乎都很好。但是当我在我的 Angular 客户端做同样的事情时,从另一个域我有奇怪的事情。我可以获得不受保护的资源,并且由于以下错误而无法获得受保护的资源:
XMLHttpRequest cannot load http://localhost:10450/api/prvalues. Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:10377' is therefore not allowed access.
为了清楚起见,我展示了我所有的尝试。我的 project.json 看起来像
我的 Startup.ConfigureServices()
样子
公共无效配置服务(IServiceCollection 服务){
AuthManager 和 AuthStore 是从 OpenIddict 中窃取的。我稍后会展示给他们看。我的 Startup.Configure()
样子:
最后,我的AthorizationProvider.GrantResourceOwnerCredentials()
(我使用 AspNet.Security.OpenIdConnect.Server)是:
我已经展示了所有我认为可能导致问题的代码。对不起,如果它很长,但我不知道女巫部分会导致问题。
要访问我的 protecetd 资源(简单地用 装饰[Authorize]
),我使用来自 Angular 客户端的此类虚拟代码
正如我所说,我对此类请求有错误。但是,如果我尝试获取不受保护的资源([Authorize]
从控制器中删除属性),一切正常。
angularjs - 如何在 Web 应用程序中实现刷新令牌 - angularjs
我在我的网络应用程序中使用基于令牌的安全性。服务器端是使用 c# 编写的,我使用 openiddict 登录和发布令牌,在此处找到。我在货币上使用隐式流。
默认情况下,我的令牌的有效期为 1 小时,之后您必须再次登录。我已将我的 API 锁定为仅接受不记名令牌而不接受 cookie。
我想实现刷新令牌,但在阅读了许多网站之后,似乎在 Web 应用程序上实现刷新令牌并不是一个好方法,因为黑客获取了刷新令牌。我知道要使用刷新令牌,您必须使用代码流,而不是隐含的,我可以这样做。
人们如何在他们的网络应用程序中解决这种情况?我不能是唯一一个希望令牌在 Web 应用程序中持续超过一个小时的人吗?
asp.net-core - 构建 AspNet.Security.OpenIdConnect.Server 时出错
我正在尝试构建AspNet.Security.OpenIdConnect.Server
,但出现以下错误:
.NETStandard,Version=v1.3 error NU1002: The dependency System.Security.Cryptography.OpenSsl 4.0.0-rc3-23911 in project AspNet.Security.OpenIdConnect.Server does not support framework .NETStandard,Version=v1.3.
netstandard1.3
如果我在projects.json
项目构建中删除对的引用而没有错误。
我1.0.0-rc2-16595
在 Windows 上使用最新的不稳定 DNX ( )。
谁能帮我弄清楚发生了什么?
提前致以问候和感谢!
asp.net - 项目中的依赖OpenIddict不支持框架DNXCore,Version=v5.0
我做了所有被告知的事情[关于 OpenIddict 入门教程]:
- 我跑了 dnvm 升级
- 我已将所有给定的源添加到 Nuget.Config
- 在 project.json 依赖项中添加了 "OpenIddict": "1.0.0-*"
这就是当我将鼠标悬停在 project.json 中红色“OpenIddict”依赖项下划线时 Visual Studio 所告诉的内容:
项目 [...] 中的依赖项 OpenIddict 1.0.0-alpha2-0161 不支持框架 DNXCore,Version=v5.0
清理项目和恢复 nuget 包没有帮助。我应该怎么做才能让它工作?
编辑:
项目.json:
asp.net-core - asp.NET 5 MVC6 承载令牌授权
我需要一个网站来使用不记名令牌验证其对 API 的请求。相同的令牌可用于所有请求,因为该站点是公开的,因此无需用户登录。
我一直在使用来自AspNet.Security.OpenIdConnect.Samples和其他 SO 问题的一些混搭。
API 启动.cs
授权服务器提供者
客户端启动.cs
现在当OnAuthorizationAsync
inAuthenticationFilter
被调用时,AuthorizationContext.HttpContext.User.Claims
它是空的,所以我无法检查这些值。
c# - IServiceProvider rc2-20215 必须引用 System.ComponentModel 4.0.1
我以为我会升级我的 dnvm(希望我现在从来没有这样做过),最新版本现在是 rc2-20215。我已经设法修复了几件事情,但有一件事似乎是一个错误,或者我可能遗漏了什么,是 IServiceProvider 现在需要对 System.ComponentModel 4.0.1 的引用吗?为什么?
现在,如果我将它添加到我的 project.json 文件中,它仍然会显示错误。
如果我将它添加为 frameworkAssembly,我无法获得 4.0.1 版本,只有 4.0.0 版本。
这是我的 nuget.config
如您所见,我的 global.json 文件是这样的
这是开始的错误消息
尝试将此添加到 project.json 文件中,但仍然存在与上述相同的错误
在这里你可以看到当我将它添加到 frameworkAssembly 时找不到版本 4.0.1.0
还有其他人遇到过这个问题吗?我知道,您会在“预发布”软件中遇到这些问题 :)
c# - 使用 openiddict 时如何避免使用微软的 Microsoft.AspNet.Identity 包
我正在关注这个精彩的教程http://capesean.co.za/blog/asp-net-5-jwt-tokens/
它运行良好。问题是,我想使用自己的用户管理代码来验证给定的用户名、密码以检索访问令牌和刷新令牌。
本教程(以及https://github.com/openiddict/openiddict-core/tree/dev/samples上的示例)使用专有Asp.net Identity
库
如何配置 Startup.cs 类中给出的配置以使用我自己的用户管理代码?
例如....
谢谢
asp.net - 如何更改 asp.net core 1 中的令牌响应?
我正在使用 JWT 令牌和 OpenIdConnectServer。一切都很好,但我无法在令牌响应中添加自定义属性......结果如下:
我想添加一些属性,例如用户名或角色...我正在尝试通过 AuthenticationProperties 添加,但它不起作用。这是我的代码:
entity-framework - 为 OpenIddict 配置 DbContext
我在我的 .NET Core 应用程序中使用OpenIddict进行 JWT 令牌身份验证。我已按照本教程进行操作,但现在收到以下错误:
我的ConfigureServices
方法Startup.cs
:
不知道该怎么做,因为我无法在使用AddIdentity
.
我的连接字符串很好,在添加 OpenIddict 之前一切正常。
更新
这是我的appsettings.json
文件:
我的数据库上下文:
asp.net - 允许匿名访问 .well-known 目录
请耐心等待:我对这一切都很陌生
我正在将 openid connect 与该公司开发的一对应用程序集成在一起。
我们正在使用自定义/公司特定的 openid 连接库,我认为这些库本质上是围绕 Microsoft.Owin.Security.OpenIdConnect 和 Owin.Security.OpenIdConnect.Server 的包装器
在 idP 应用程序 web.config 中,我们有类似的内容:
加上一堆位置节点来允许/拒绝访问特定页面/资源
问题是,当用户未登录(或者,它似乎正在登录过程中)时,当 openid 连接的东西尝试访问 /.well-known/openid-configuration 时,响应是 302 重定向到登录页
显然,当需要 JSON 响应时,这会导致问题
我尝试将位置节点添加到 web.config:
(我也尝试使用 path = "~/.well-known")
但我仍然被重定向到登录页面
需要明确的是,idP 应用程序中没有实际的目录 /.well-known;该文件似乎是在 Owin.Security.OpenIdConnect.Server 中的某处构建的。