使用Openiddict的ASP.NET Core 1.0 OAuth服务器
我想使用Openiddict OAuth来保护我的ASP.NET Core 1.0 Web应用程序中的api端点. api端点将由电话应用程序调用,用户必须使用用户名和密码登录.
流程如下: >用户可以通过网络应用程序注册和登录:https://www.domain.com 如何配置Openiddict OAuth,以便使用OAuth保护API端点? 解决方法
您的场景听起来像是the simple “resource owner password credentials” grant的一个很好的候选者,它基本上是OAuth2等同于基本或表单身份验证. 这是我建议的: 创建一个新的AccountController / RegistrationController API控制器,负责创建新帐户: 由于此阶段不存在用户帐户,因此您无法在此处使用令牌身份验证(就像默认的AccountController.Register模板在注册用户之前不需要cookie身份验证一样). 配置OpenIddict以启用令牌端点并允许资源所有者密码凭据授予: services.AddOpenIddict<ApplicationDbContext>() // Disable the HTTPS requirement during development. .DisableHttpsRequirement() // Enable the token endpoint,required to use // the resource owner password credentials grant. .EnableTokenEndpoint("/connect/token") // Enable the password and the refresh token flows. .AllowPasswordFlow() .AllowRefreshTokenFlow(); 使用OAuth2验证中间件来保护您的API: 要启用令牌身份验证,请参阅AspNet.Security.OAuth.Validation 1.0.0-alpha2-final包并在app.UseMvc()之前添加app.USEOAuthValidation().要使身份验证成为必需,只需使用[Authorize]属性,就像使用Cookie身份验证一样. 不要犹豫与this sample一起玩.它不会在客户端部分使用移动应用程序,但您应该很容易理解它是如何工作的. 有关更多信息,您还可以阅读此博客文章,由Mike Rousos撰写,用于Microsoft .NET Web开发和工具博客:Bearer Token Authentication in ASP.NET Core (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net – 在Microsoft Ajax中伪造__EVENTVALIDATION
- [WCF REST] 通过ASP.NET Output Caching实现声明式缓存
- asp.net-mvc – Sitecore和ASP.net MVC
- 在ASP和ASP.Net之间共享登录系统
- Razor Page Library:开发独立通用RPL(内嵌wwwroot资源文件
- asp.net – 在Response.Redirect()之后调用Response.End()
- asp.net-core – 在Asp.Net Core中注入DbContext.具体类型还
- asp.net – 在启用了共享配置的IIS 7上安装Web Deploy
- asp.net-core-mvc – 在Entity Framework Core中使用[Compl
- ASP.NET FileUpload Control – 缓冲到磁盘时的安全问题
- asp.net – 在int类型的Web服务参数上设置minOcc
- asp.net – 从DataContext缓存数据
- ASP.NET 2.0:如何将asp:Menu绑定到SqlDataSour
- asp.net – 以编程方式编辑Web.config
- asp.net-mvc-4 – .net 4.5 ASP.Net web API JSO
- ASP.NET Core使用Elasticsearch记录NLog日志
- 在asp.net mvc上传文件代码后,通过服务器获取“连
- asp.net – Webservices可以作为单身人士引起不同
- asp.net – project.json中的“依赖关系”和“框
- asp.net-mvc – ASP.NET MVC验证消息未被本地化