asp.net-web-api – 密码更改时如何使OAuth令牌无效?
|
我们在使用SimpleAuthorizationServerProvider的Web Api项目中使用ASP.NET Identity,我们使用OAuth-token来授权来自客户端的每个请求。 (令牌已有和到期时间,我们不使用刷新令牌。) 当用户更改密码时,我想使其可能在其他设备上的令牌无效。有没有办法明确地这样做?我尝试了一下,看到现有的令牌在密码更改后没有任何问题,这应该是防止的。 我想到将密码哈希或者哈希的一部分放在OAuth令牌中作为声明,并验证我们派生的AuthorizeAttribute筛选器的OnAuthorization方法。 解决方法我不建议将密码的哈希值作为声明,而且我相信当密码更改时,没有直接的方法使令牌无效。但是如果您可以通过从客户端应用程序发送到受保护的API终端的每个请求来触发数据库,那么您需要为授予资源所有者的每个令牌存储令牌标识符(Guid也许)。然后,您将令牌标识符分配为此令牌的自定义声明,此后,您需要通过查找令牌标识符和资源所有者的用户名来检查每个请求的此表。 密码更改后,您将删除此资源所有者(用户)的该令牌标识符记录,并且下次从客户端发送的令牌将被拒绝,因为该令牌标识符和资源所有者的记录已被删除。 (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 使用Route Id值的ASP.NET MVC 3 Model Id
- asp.net-mvc-2 – 使用ASP.NET MVC 2时更好地保留过滤选项的
- asp.net-mvc – EF 4代码如何首先处理生产环境中的模式更改
- ASP.NET:WebResource.axd调用404错误:如何知道哪个程序集
- asp.net – 剑道:网格中的ComboBox – 将选定组合框的其他
- asp.net mvc多个连接字符串
- asp.net – 在MS Access 2003中INSERT到用户表中的语法错误
- asp.net – Android C2DM获取(401)未经授权
- asp.net – 使用AJAX进行WCF调用
- asp.net-mvc – mvc默认期限后的会话超时(20分钟)
- asp.net – HttpRequest,HttpWebRequest和WebReq
- 当“必须”我使用asp.net CreateChildControls()
- asp.net – 401客户端’协商’,服务器’协商,NTL
- asp.net-mvc – 为什么实体框架在更新父项时会插
- 如何在asp.net中检测新的Microsoft浏览器“Edge”
- asp.net-mvc – 嵌套TagBuilder -as TagBuilderT
- asp.net-mvc – 从单个Web服务器迁移到多个Web服
- asp.net-mvc-4 – DataAnnotation Range属性的客
- asp.net – HttpUtility.HtmlEncode逃避太多了?
- asp.net-mvc – 在哪里可以找到C#示例代码来实现
