Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如果客户端IP为白色,是否仍应使用API密钥_Api_Ssl_Web - Fatal编程技术网

如果客户端IP为白色,是否仍应使用API密钥

如果客户端IP为白色,是否仍应使用API密钥,api,ssl,web,Api,Ssl,Web,这是我第一次编写面向公众的web api 我的经理建议不要对我正在编写的Web API使用API密钥,因为我们在白名单中列出了使用API的客户端的ip,并且不认为我们需要额外的时间和复杂性来处理API密钥 我对别人的意见感兴趣 我认为我们确实需要API密钥,原因如下,按重要性降序排列 允许基于API密钥跟踪和限制来自客户端的请求。他们的ip可能会不时更改,但api密钥不应更改。因此,使用api密钥以后报告请求会更容易 白名单上的ip可以被欺骗吗?从我所做的阅读来看,我认为TLS将被启用这一事实使

这是我第一次编写面向公众的web api

我的经理建议不要对我正在编写的Web API使用API密钥,因为我们在白名单中列出了使用API的客户端的ip,并且不认为我们需要额外的时间和复杂性来处理API密钥

我对别人的意见感兴趣

我认为我们确实需要API密钥,原因如下,按重要性降序排列

允许基于API密钥跟踪和限制来自客户端的请求。他们的ip可能会不时更改,但api密钥不应更改。因此,使用api密钥以后报告请求会更容易

白名单上的ip可以被欺骗吗?从我所做的阅读来看,我认为TLS将被启用这一事实使得这一点变得不可能,因为服务器和客户端之间进行了握手,所以欺骗ip会导致握手失败

他毫无头绪,原则上我应该忽略他:-


我们依赖于白名单ip的事实是否消除了使用API密钥进行单独身份验证的需要?客户端可以访问所有API,因此无需授权?

仅信任ip白名单会增加风险:

1操作员错误可能会白名单错误的ip或ip范围

2它增加了客户端的安全要求:没有不安全的软件可以从那些机器上运行,或者从那些可以共享或劫持外部ip的机器上运行

我认为更安全的系统将依赖于ip白名单和客户端ssl证书


你的情况可能很特殊。但是,作为一般规则,我建议不要只使用ip白名单。

如果ip可以被欺骗怎么办?