【发布时间】:2017-07-03 20:14:38
【问题描述】:
我正在创建一个基于 WebAPI 的 SaaS 应用程序。此 WebAPI 可以单独使用,无需用户界面,需要在向 WebAPI 发出的每个请求时发送基本身份验证,并在调用和验证方法时返回一些对象。
现在我面临一个大问题:我正在 MVC 中创建一个 WebApp(但它可以是任何语言)并且我无法弄清楚如何调用我的 WebAPI 端点而不需要保留用户名和密码为了在我每次调用方法时验证 WebAPI 请求。
在这种特殊情况下,最佳做法是什么? 我似乎找不到任何合适的解决方案...
到目前为止,我已经尝试在HttpContext.Response.Cookies.Add 方法的自定义实现的帮助下创建自定义cookie,其中我将加密的用户名和密码对存储在Cookie 的userData 中。通过这种方式,我可以调用 WebAPI 方法,每次使用正确的用户名和密码指定 BasicAuthenticationCredentials,但从长远来看,这在我看来是一种非常难以维护的方式。
我也想尝试 OAuth2 方式,但我找不到关于如何基于 SQL Server 的自定义用户表实现身份验证服务器的编写良好的指南(Google 结果列表的前五页没有帮不了我,他们确实让我对这个话题更加困惑,整个 OWIN 和 Katana 的事情......)。
如果有人愿意帮助我,我可以提供更多信息。
提前致谢, 斯蒂法诺。
【问题讨论】:
-
这个链接可以帮助你找到好的来源:docs.microsoft.com/en-us/aspnet/identity/overview/…
-
感谢@RuardvanElburg,一定会去看看!
标签: c# authentication cookies model-view-controller asp.net-web-api2