上下文:我不想为我的API创建刷新令牌,而是希望为用户提供终身到期令牌以进行身份验证。但是,让我们说一个令牌受到损害,我需要能够撤销它。现在OAuth不支持撤销开箱即用,所以我正在寻找解决方法。
我的粗略方法:
每次API调用,请检查持票人令牌。如果它属于某个黑名单(存储在db中),则不允许访问该令牌。但为此,我需要能够从调用者获取令牌。知道我怎么能这样做吗?我需要以某种方式修改[System.Web.Http.Authorize]标签吗?
要点:我需要能够跟踪用于调用控制器上任何操作事件的令牌。
感谢。
答案 0 :(得分:2)
当然,你走在正确的轨道上。 发送给Api的每个请求都将携带令牌信息。您所要做的就是扩展当前的[Authorize]属性以获取令牌信息&验证它。