【发布时间】:2014-08-27 22:11:08
【问题描述】:
我有带有方法的 Web API 2 网络服务:
// Makes and returns Token by login/password.
string GetToken(string login, string password);
// Returns orders of current account.
Order[] GetMyOrders();
我想在 GetMyOrders() 中通过他对这个方法的请求来验证用户。
请求必须包含 Token,它会被映射到 web-service 端的 accountId。
客户端将为每个请求使用此令牌。
我可以使用 ASP.NET Identity 实现 GetToken() 方法吗?
使用此令牌和 ASP.NET 身份进行身份验证的正确方法是什么?我可以使用 ValidateAntiForgeryTokenAttribute 或其他东西吗?
GetToken() 只能通过 https 工作,但 GetMyOrders() 将通过 http 工作。
【问题讨论】:
-
您的 API 是 ASP.NET MVC 站点的一部分还是独立的?
-
它是独立的网络服务。它没有任何网络视图。
-
ValidateAntiForgeryTokenAttribute用于防止CSRF、not usually required for an API。
标签: c# web-services authentication token asp.net-web-api