api - 使用 RESTful API - 安全吗?

标签 api url rest https

我们正在与通过 RESTful API 公开其服务的服务提供商合作。

我们可以通过将用户名和密码作为 URL 参数传递来使用 API 进行身份验证。

示例:https://example.com/api/service.json?api_user=Username&api_key=Password
我知道这是使用 SSL。但是,由于用户名和密码是URL的一部分,这不能被第三方拦截吗?

最佳答案

不可以,第三方只能看到目的地 (example.com)。 URL 的其余部分实际上嵌入在请求中。

它有助于理解如何发出 HTTP(或 HTTPS)请求的过程。

  • 确定协议(protocol)(在本例中为 HTTPS,使用端口 443)
  • 使用 DNS
  • 获取服务器的 IP 地址
  • 建立与服务器的 TCP 连接(如果涉及 SSL,则有点复杂)
  • 在新连接上向服务器发出请求,看起来像
    GET /api/service.json?api_user=Username&api_key=Password

  • 由于实际请求是加密数据流的一部分,因此监视连接的人无法提取敏感信息。

    关于api - 使用 RESTful API - 安全吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14758469/

    相关文章:

    Javascript omdb api不会发送所有信息

    spring - Java Spring Eclipse Tomcat - RestTemplate,使用 HTTPS API

    python - 将 URL 路径拆分为组件

    java - 通过 AJAX POST 传递给 POJO 时,JSON 对象传递部分 NULL 值?

    api - 使用 http api 发布到默认的 rabbitmq exchange

    java - 公开 WSDL SOAP 操作的子集

    java - 如何从 wicket 中的 URL 创建 PageParamters?

    asp.net-mvc - ASP MVC - 使用参数模型中的列表调用 Controller

    java - 如何在 Spring-Mvc 中缓存具有两个参数的方法

    python - 使用 Python 的 XML POST REST 请求