标签: asp.net-mvc api asp.net-web-api
我对Web API如何实现身份验证感到困惑?
我已经浏览了链接1.
Link1
Link2
需要总结一下我的理解。
Owin katana是一种可以实施授权的机制。
可以在主机中创建Iprincipal 在httpmodule中将附加到currentthread到 验证
基于令牌的身份验证实现了owin。
我对web api中的身份验证机制一无所知。如果有人能帮助我理解这一点,那就太好了。
我有以下疑惑。
答案 0 :(得分:1)
你的问题的答案可能很大,我会尝试给你一些指导:
Katana是微软实施的OWIN标准
https://docs.microsoft.com/en-us/aspnet/aspnet/overview/owin-and-katana/getting-started-with-owin-and-katana
基于令牌的授权由OWIN支持,因此由Katana支持。 有两种非常常用的方法来实现此令牌授权,您可以使用Windows授权
https://docs.microsoft.com/en-us/aspnet/aspnet/overview/owin-and-katana/enabling-windows-authentication-in-katana
或者您可以使用OAuth使用更标准和可推荐的方式:
https://docs.microsoft.com/en-us/aspnet/aspnet/overview/owin-and-katana/owin-oauth-20-authorization-server
使用ASP.net(netfx,而不是核心),您可以使用控制器级别的属性来提供实现授权和身份验证所需的元数据。