【发布时间】:2020-09-05 23:52:56
【问题描述】:
我的技术栈如下:
- .NET Core Web API (v 2.1)
- 角 9
- CAS 认证服务器
我正在构建一个 Intranet 应用程序,并且需要通过我们的 CAS 身份验证服务器对用户进行身份验证。但是,我不太确定如何将所有部件牢固地粘合在一起。
经过大量研究,我找不到与我需要完成的任务类似的任何事情。这让我有点担心——我是不是想把错误的部分粘在一起?我之所以选择这个堆栈,是因为我过去分别熟悉它们。
所以这是我认为我应该做的:
- 在 Angular 中,检查用户是否经过身份验证。如果不是,则重定向到 CAS 身份验证端点。
- 一旦通过 CAS 认证,Angular 就可以拦截来自 CAS 的 Service Ticket 并将其传递给 Web API。让 Web API 确定票证是否有效。
- 如果 TGT 有效,Web API 会向 Angular 发出 JWT,现在前端和后端可以使用 JWT 安全地进行通信。
这是一种有效的方法吗?当谈到 Angular + Web API + CAS 时,我错过了一些简单的东西?
有没有更好的方法?我应该重新考虑我的技术堆栈吗?
我还没有尝试将它放入代码中,我想在我花时间编码之前确保这种方法是安全的。
【问题讨论】:
标签: angular jwt asp.net-core-webapi cas