gpt4 book ai didi

angular - 如何保护 .net 核心 API 项目

转载 作者:太空狗 更新时间:2023-10-29 19:28:45 24 4
gpt4 key购买 nike

我有一个用 Angular 4 编写的 Web UI 应用程序在 IIS 后面运行,需要 SSL 和一对一的客户端证书映射。

此 SSL web ui 应用程序调用 .net 核心 API 项目,该项目还使用 SignalR 将其数据推送到 ui 应用程序。

它们在同一域下运行两个不同的 URL。

https://ui.mysite.com
https://api.mysite.com

这两个应用程序都不对公众开放,并且需要良好的安全性。

我很乐意通过个人证书锁定 ui 站点。 SSL 证书是通过受信任的证书颁发机构,然后创建用于客户端身份验证的自签名证书。

如果将 api 站点锁定到外部世界,以便只有 ui 站点(以及我们网络内部用于调试目的的内部开发人员,即查看 json 响应)可以访问,您有什么建议?

我见过有人提到 oauth2/jwt?有例子吗?

唯一需要访问权限的人员是我们公司内部的人员,但他们使用的设备可能未连接到我们的内部网络,例如出差时的手机或笔记本电脑。

最佳答案

您绝对可以使用 JWT 来保护 Web API。

这是一个很好的起点: https://dev.to/samueleresca/developing-token-authentication-using-aspnet-core

基本上,此实现的工作原理是每个具有 [Authorize] 属性的 Controller 或操作都需要通过请求的 Authorization header 发送访问 token 。此访问 token 是通过使用用户名和密码向 /api/token 发送 POST 请求获得的。每个 key 都有一个设置的到期时间,您可以在代码中更改该时间。

这是一个简单的 JWT,但您也可以使用 Angular 色等声明对其进行扩展。

关于angular - 如何保护 .net 核心 API 项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44853822/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com