RESTAPI、HTTP谓词和访问日志
在设计RESTfulAPI时,我一直在努力遵循良好的RESTfulAPI实践。其中一个非常简单和常见的问题一直很难理解:RESTAPI、HTTP谓词和访问日志,http,rest,restful-url,httpverbs,Http,Rest,Restful Url,Httpverbs,在设计RESTfulAPI时,我一直在努力遵循良好的RESTfulAPI实践。其中一个非常简单和常见的问题一直很难理解: 使用GEThttp谓词检索资源 为什么??假设你有一个URI来获得这样的帐户信息: 其中,AXY_883772是银行系统中的帐户id。安全审计将发出警告,说明: 帐户ID将显示在HTTP访问日志上 帐户ID可能会缓存在浏览器的历史记录中(即使不太可能定期使用浏览器访问RESTful API) 他们最后“建议”应该使用POST动词 所以,我的问题是: 我们能做些什么?
- 使用
http谓词检索资源GET
AXY_883772
是银行系统中的帐户id。安全审计将发出警告,说明:
POST
动词
所以,我的问题是:
我们能做些什么?只需遵循安全建议,避免在大多数情况下使用
GET
?使用某种特殊的APACHE/IIS/NGINX访问日志配置来避免记录对某些URL的访问?如果您的URL中有敏感信息,并且您正在记录URL,那么您正在记录敏感信息
所以有两个显而易见的解决方案:
- 不要记录url
- 使用不包含敏感信息的其他url
这不仅适用于GET,实际上也适用于PUT、DELETE和POST。我想说的是,当RESTful不适用于您的项目时,不要编写RESTful。