【发布时间】:2020-08-19 07:34:04
【问题描述】:
我想保护我的 API,以便只有在 Azure AD 中进行身份验证并在我的应用程序中拥有本地帐户的用户才能调用它。前面将是 React SPA 应用程序。我已经创建了使用 Azure AD 对用户进行身份验证的 PoC,并且我可以从 SPA 调用我的 API。
现在我想添加对本地帐户的支持。我想过使用 ASP.NET Core Identity 来管理本地用户。然后我会为 SPA 创建端点以获取 JWT 令牌。但我不确定这是否是要走的路。我看到了代码生成令牌的示例,实现起来似乎并不难,但这就是安全性。也许自己做不是一个好主意?
我看到人们正在使用 IdentityServer4,据我所知,它还可以使用我的本地 ASP.NET Core Identity 帐户并与 Azure Ad 集成。但这将是我需要学习的技术堆栈中的另一个工具。它不会与任何其他应用程序共享,它将是我需要部署和管理的另一项服务。也许这对这种情况来说有点矫枉过正?
我还有什么其他选择?
【问题讨论】:
标签: asp.net-core oauth-2.0 jwt asp.net-core-webapi openid-connect