gpt4 book ai didi

security - Web-api 安全 : SSL?

转载 作者:太空宇宙 更新时间:2023-11-03 13:33:58 26 4
gpt4 key购买 nike

我想知道如何限制 web-api 对特定客户端的请求。

web-api 将托管在计算机 A 上。

客户端(目前只有一个)- 将托管在计算机 B 上。

不同的服务器、机器等

如何让我的 web-api 只“响应”计算机 B 上的客户端?使用 SSL?

  1. 这是如何运作的?
  2. 我需要在服务器端处理任何事情吗?
  3. 我们将来可能需要一个移动应用程序来使用相同的网络 API。在这种情况下,我如何才能“允许”我的应用请求由 web-api 回答?
  4. 如果 SSL 解决了问题,我必须只在服务器和客户端上安装证书吗?

最佳答案

您有多种选择,它们或多或少取决于您的机器工作的环境。一般来说,我会研究三种机制:

  1. 客户端证书身份验证(也称为相互身份验证双向 TLS)。这基本上意味着两台机器都向对方出示证书以进行验证。这种方法在服务器到服务器的通信中很常见。这通常是一种非常好的和安全的方法,但权衡是添加新的受信任的客户端会有点额外的麻烦,因为您需要为其颁发证书。
  2. IP 或主机名(或整个子网等)的白名单。换句话说,在您的服务器上进行配置,以根据来源限制允许的客户端池。这种方法不包括任何密码学,客户端可以轻松地欺骗其来源,但有时您会看到这种方法被用作其他机制的补充(额外层)。
  3. API key 。集成或实现基于 key 的授权以使用 API。这通常用于授权移动应用程序使用 Web API。 API key 最常见的问题之一是它们的保护。您将需要找到一种方法,使任何人都很难窃取这些 key 。最终,这对于移动应用程序通常是不可能的,但无论如何您始终需要进行风险评估,看看如何合理缓解您发现的风险。

您可以将这些机制组合在一起以添加额外的层。您还可以为更多层设置防火墙和网络限制。但是,请始终花点时间评估您要保护的任何事物的风险和值(value)。然后您就会知道用于保护的合理成本和工作量是多少。

这不是所有可能性的完整列表,但我希望它能为您提供一组有用的入门指南。

关于security - Web-api 安全 : SSL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46016935/

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