关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。
想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。
8年前关闭。
Improve this question
我正在 .NET 4.0 上开发一个 ASP.NET MVC 4 站点。我正在尝试通过 WEB API 对该站点进行身份验证。现在站点将传递用户名和密码,WEB API 将对其进行身份验证。如果通过身份验证,WEB API 将返回一个带有角色、生存时间等的 token 。我正在寻找有关此的一些提示。
1.) 如何生成这个 token ?我不想使用 STS 或其他任何东西。即使是非万无一失的方法也可以。
2.) 在 MVC 端,我必须接收这个 token 并将当前 session 设置为经过身份验证并确保一旦 TTL 过期我将用户重定向到登录页面?同样在所有 WEB API 请求中,我需要发送此 token 。
最佳答案
通常,您可以手动生成 token 并实现其验证逻辑,也可以使用某些 3rd 方工具。
如需手动实现,请查看 here或 here在博客文章中,这对您来说可能是一个很好的起点。它基于 http://oauth.googlecode.com/svn/code/csharp/OAuthBase.cs类(class)。
对于客户端和 OAuth 概念,您可以阅读 here一个很好的答案。
来自第 3 方的粘性选择可能是 DotNetOpenAuth .这是一个很好的库,但在使用 OAuth 时很复杂。试试看它的Web API OAuth2 sample
第二个问题 - 答案是肯定的。您验证 token 并将请求设置为已验证。无论如何,您可以查看实现它的 Wep API OAuth 示例。
关于asp.net-mvc - Asp.net MVC 4 + WEB API - 自定义身份验证 token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16128505/