incubator-hugegraph icon indicating copy to clipboard operation
incubator-hugegraph copied to clipboard

[Question] docker 集群下 3pd-3store-3server ,通过 hubble 账号密码可以连接, 通过API Auth 连接报错 Invalid syntax for username and password

Open Tommu10ve opened this issue 6 months ago • 2 comments

Problem Type (问题类型)

None

Before submit

  • [x] 我已经确认现有的 IssuesFAQ 中没有相同 / 重复问题 (I have confirmed and searched that there are no similar problems in the historical issue and documents)

Environment (环境信息)

  • Server Version: 1.0.0 (Apache Release Version)
  • Backend: RocksDB x nodes, HDD or SSD
  • OS: xx CPUs, xx G RAM, Ubuntu 2x.x / CentOS 7.x
  • Data Size: xx vertices, xx edges

Your Question (问题描述)

Image Image

docker 集群下 3pd-3store-3server ,通过 hubble 账号密码可以连接, 通过API Auth 连接报错 Invalid syntax for username and password?

图片中的Auth 拼接方式是否有误? 错误的情况下,正确的拼接规则是啥?

Vertex/Edge example (问题点 / 边数据举例)


Schema [VertexLabel, EdgeLabel, IndexLabel] (元数据结构)


Tommu10ve avatar Jun 23 '25 06:06 Tommu10ve

你遇到的 “Invalid syntax for username and password” 报错,基本可以确定是 API 请求里的 Authorization 头格式不正确导致的。HugeGraph 的 API 认证要求非常严格,必须用如下格式拼接:

  1. 用英文冒号拼接用户名和密码,比如:admin:kd@2024
  2. 对拼接后的字符串整体做 base64 编码,不能分别编码用户名和密码
  3. Authorization 头应为:Authorization: Basic <base64编码结果>

以你的账号为例,admin:kd@2024 的 base64 编码是 YWRtaW46a2RAMjAyNA==,所以正确的请求头应该是:

Authorization: Basic YWRtaW46a2RAMjAyNA==

curl 示例:

curl -H "Authorization: Basic YWRtaW46a2RAMjAyNA==" http://your-host:port/graphs/hugegraph/schema/vertexlabels

常见错误包括:用户名和密码之间没有冒号、base64 编码内容不对、用户名或密码为空、拼接多了/少了冒号等。Hubble UI 会自动处理这些细节,但 API 请求需要你手动保证格式完全正确。参考1 参考2 源码实现

建议你用抓包工具或日志确认实际发出的 Authorization 头内容。如果还有问题,可以贴下完整的请求头和请求方式,方便进一步排查。

To reply, just mention @dosu.


How did I do? Good | Irrelevant | Incorrect | Verbose | Hallucination | Report 🐛 | Other  Join Discord Share on X

dosubot[bot] avatar Jun 23 '25 06:06 dosubot[bot]

Image

你遇到的 “Invalid syntax for username and password” 报错,基本可以确定是 API 请求里的 Authorization 头格式不正确导致的。HugeGraph 的 API 认证要求非常严格,必须用如下格式拼接:

  1. 用英文冒号拼接用户名和密码,比如:admin:kd@2024
  2. 对拼接后的字符串整体做 base64 编码,不能分别编码用户名和密码
  3. Authorization 头应为:Authorization: Basic <base64编码结果>

以你的账号为例,admin:kd@2024 的 base64 编码是 YWRtaW46a2RAMjAyNA==,所以正确的请求头应该是:

Authorization: Basic YWRtaW46a2RAMjAyNA==

curl 示例:

curl -H "Authorization: Basic YWRtaW46a2RAMjAyNA==" http://your-host:port/graphs/hugegraph/schema/vertexlabels 常见错误包括:用户名和密码之间没有冒号、base64 编码内容不对、用户名或密码为空、拼接多了/少了冒号等。Hubble UI 会自动处理这些细节,但 API 请求需要你手动保证格式完全正确。参考1 参考2 源码实现

建议你用抓包工具或日志确认实际发出的 Authorization 头内容。如果还有问题,可以贴下完整的请求头和请求方式,方便进一步排查。

To reply, just mention @dosu.

How did I do? Good | Irrelevant | Incorrect | Verbose | Hallucination | Report 🐛 | Other  Join Discord Share on X

@imbajin 建议此回答修复完善官方文档,此处官方文档描述存在误导用户 https://hugegraph.apache.org/docs/config/config-authentication/ 中下图部分,

https://github.com/apache/incubator-hugegraph/issues/2818#issuecomment-2995056076

Tommu10ve avatar Jun 23 '25 06:06 Tommu10ve

Due to the lack of activity, the current issue is marked as stale and will be closed after 20 days, any update will remove the stale label

github-actions[bot] avatar Jul 08 '25 21:07 github-actions[bot]