使用 AngularJS 和 MVC 的 OpenId 身份验证,使用令牌 cookie

OpenId auth with AngularJS and MVC, with token cookie

我更希望确认我这样做是对还是错。这是场景:

我在 ASP.NET MVC 应用程序中托管 AngularJS 应用程序。使用 MVC 部分我与 IdentityServer 通信以登录,一旦我这样做,我从 OWINOpenIdConnect 验证通知中获取 access_token 并创建一个 Cookie 及其价值,然后我将其与 $cookieStore 对象一起进入 AngularJS 以用于我的请求。

不可否认,到目前为止,安全是我最薄弱的环节,所以我的问题是上述情况是否安全,或者我是否违反了某种允许某人发现安全漏洞的安全规则?

你的问题有点难回答,因为我们无法确定你以后要做什么。通常你走在正确的道路上,但安全很难,所以你应该知道什么时候让别人去做。

IdentityServer v3 是一个很好的开始。

查看示例,特别是此处的 JavaScriptImplicitClient: https://github.com/thinktecture/Thinktecture.IdentityServer.v3.Samples/tree/26293649324783cd5c6bbfe0dbb9e83c6df826fc/source/Clients

这里还有一篇关于 Angular 和 WebAPI 的好文章: http://www.codeproject.com/Articles/784106/AngularJS-Token-Authentication-using-ASP-NET-Web-A

玩得开心!