【问题标题】:Does Maven transmit username/passwords in plaintext over httpMaven是否通过http以明文形式传输用户名/密码
【发布时间】:2018-03-25 16:51:25
【问题描述】:

如果我的settings.xml 文件中有一个带有 HTTP(不是 HTTPS)URL 的 (Nexus) 远程存储库的用户名/密码,这个用户名/密码会以明文形式发送到远程服务器吗?

我想知道我们面向公众的仅通过 HTTP 密码验证的 Nexus 服务器是否存在潜在的安全问题。

【问题讨论】:

    标签: java maven maven-2 nexus


    【解决方案1】:

    Maven 使用 HTTP 基本身份验证来发送凭据。一个典型的 HTTP 标头看起来像这样:

    Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
    

    QWxhZGRpbjpvcGVuIHNlc2FtZQ== 实际上是 username:password 组合的 Base64 编码表示。这不提供任何安全性,但也不是纯文本。

    更多HTTP Basic认证详情,可以查看here

    大多数构建工具,如 Maven、Ant、Gradle、SBT、npm,都使用 HTTP Basic。这并不像应有的那样安全。通过 HTTPS 使用它可以让您感觉更安全。 :)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-04-13
      • 2010-09-13
      • 2021-03-15
      • 2020-09-09
      • 2023-01-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多