我需要创建可以从不同平台(WEB、WPF、Mobile)访问的 API 应用程序。API 将托管在 Azure 上,客户端将是不同的网站和桌面/移动应用程序。API 需要知道用户名才能返回用户特定的信息
我现在在身份验证方面遇到了一些问题。我从这个线程中使用了如何对 API 进行表单身份验证的想法,但是那里有一个问题,我必须对 API 的每个请求进行身份验证,因为我在上一个请求中创建的 cookie 没有存储到下一个请求。
我正在考虑在那里创建一些自定义解决方案:当使用用户名/密码发送的对 API 的登录请求返回某种令牌时,我将存储在客户端上并随每个请求一起传递。在这种情况下,我可以覆盖 AuthorizeAttribute 并验证令牌。但我不相信我应该创建自定义解决方案,而是更愿意找到一种方法来使用微软为我做的事情。
从不同平台对 WEB API 进行身份验证的最佳方式是什么?如果我要返回令牌,创建它、编码它、过期它的最佳方法是什么……?