gpt4 book ai didi

node.js - REST API 安全性。 SSL 还是 OAuth2?

转载 作者:搜寻专家 更新时间:2023-10-31 23:48:34 24 4
gpt4 key购买 nike

我正在构建一个 nodejs express REST API。我有以下设置。

API server(nodejs) 从 mongodb 返回数据。

Web 服务器 (nodejs) 托管角度 Web 应用程序。

一点点谷歌告诉我应该使用 OAuth2 来保护我的 REST API。

一些链接还建议我使用 SSL。

我不清楚 SSL 是否是 OAuth2 的替代解决方案,或者我应该将它与 OAuth2 一起使用以提高安全性?

如果我在 Web 服务器和 API 服务器之间使用 SSL 进行通信!我还需要使用 OAuth2 吗?

我是“首次 API 构建者”。如果这个问题听起来含糊不清,我很抱歉。

最佳答案

为客户端应用程序构建 API 并不少见。有时将负责 API 的应用程序与负责托管客户端应用程序的应用程序分开是有意义的(在这种情况下,它似乎是一个 Angular 应用程序)。但是,要知道这些可以是一体的,并且可能会被推荐,直到它们变得足够大以分离出来。如果它们是分开的,您很快就会遇到 same-origin policy问题,可能需要将来自客户端应用程序的请求代理到单独托管的 API 应用程序——或者您可以在同一域下运行它们并使用 nginx 或 apache 之类的代理。综上所述,您可能会考虑从这两个应用程序开始。

继续安全性,SSL是保护客户端与服务器连接的一种方法(将其视为 HTTPS 可能是最简单的方法)。这是一个很好的策略,一旦有人在客户端和服务器之间传输了不应该被其他人查看的数据,建议他们实现。要知道 SSL 并不特定于 Node.js 或 REST,它只是一种保护 Web 请求/响应通信的方式。

在请求安全的情况下,您仍然需要知道在发出请求,以及他们是否有权执行他们要求的操作。证明你是谁是 authentication , 你可以做的是 authorization .有许多方法可以进行身份​​验证,一旦您这样做了,通常应用程序有责任决定该用户的授权。 OAuth是帮助完成此过程的一种方法,并且已通过 Facebook、Google、Twitter 等登录网站变得流行。有许多工具可以帮助您将 OAuth 与您的应用程序集成,Passport是 Node 最受欢迎的选择之一。

所以你的问题有点含糊,但希望这能帮助你理解 SSL 和 OAuth 之间的区别。

关于node.js - REST API 安全性。 SSL 还是 OAuth2?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24220884/

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