我正在开发一个无状态(无数据库)的ASP.NET 5 / MVC 6应用程序,该应用程序使用相同的用户名/密码组合对 2 webservices 进行用户身份验证。用户通过基于OAuth2的REST API进行身份验证,accessToken
需要以某种方式存储sessionId
,同时针对需要以某种方式存储accessToken
的soap服务对用户进行身份验证。
我想做什么:
soapSessionId
和returnUrl
存储在Cookie中以供日后重复使用。accessToken
soapSessionId
和app.UseCookieAuthentication(options => {
options.AutomaticAuthentication = true;
options.LoginPath = "/Home/Login";
});
我已经阅读了很多不同的内容,关于如何在ASP.NET 5 / MVC 6中为您完成大部分工作,但我不确定选择哪条路线。我见过这样的东西:
app.UseIdentity();
但我也看到了这个:
componentDidMount: function() {
TodoStore.addChangeListener(this._onChange);
}
他们有关系吗?我应该使用哪一个?要明确:我不想在数据库中存储任何信息。我只想在cookie中持久化令牌并以符合ASP.NET 5 / MVC 6中最佳实践的方式处理登录(即,不要手动执行任何框架可以解决的问题)
答案 0 :(得分:0)
它们有关系吗?
是的,从某种意义上讲,它们是相关的。因为app.UseIdentity();
内部调用app.UseCookieAuthentication()
。您可以在source code on GitHub。
我不想在数据库中存储任何信息。
使用Identity不会强制您将数据库用于存储数据,但您必须执行某些步骤以在ConfigureServices方法中进行设置。
通常,出于您的目的,您无需使用app.UseIdentity()
。