[alibaba/arthas]解决Issues#1462 tunnel server除了EndPoint之外的请求都需要鉴权

2025-11-25 338 views
4

id: 'Issues #1462' type: fix scope: 需要登录后才能正常访问网页 subject: 除了EndPoint之外的请求都需要鉴权

回答

0

这个仔细想了下,好像不符合目前的设计。

  • 当前是默认 endpoint需要鉴权,因为可以查看到所有的信息。
  • 其它网页,即输入agentId 去连接的网页不鉴权,是因为 agentId 通常是随机生成的,用户不知道的话是连接不上的
8

这个仔细想了下,好像不符合目前的设计。

  • 当前是默认 endpoint需要鉴权,因为可以查看到所有的信息。
  • 其它网页,即输入agentId 去连接的网页不鉴权,是因为 agentId 通常是随机生成的,用户不知道的话是连接不上的

agentId我是按照一定的规则进行定义的(对于随机生成这种方式,每次重启都会变化,开发也没有环境权限能够查看日志,不是很友好),按理来说是可以通过推测(服务名+ip)得到agentId,变相对内网所有人可见,所以提出了这个问题。之后我也仔细理解了arthas整个的鉴权机制,发现agent启动是可以设置账号密码,远程连接后也是需要先鉴权再执行指令,从这个角度上来说也可以解决我们的问题

6

这个仔细想了下,好像不符合目前的设计。

  • 当前是默认 endpoint需要鉴权,因为可以查看到所有的信息。
  • 其它网页,即输入agentId 去连接的网页不鉴权,是因为 agentId 通常是随机生成的,用户不知道的话是连接不上的

agentId我是按照一定的规则进行定义的(对于随机生成这种方式,每次重启都会变化,开发也没有环境权限能够查看日志,不是很友好),按理来说是可以通过推测(服务名+ip)得到agentId,变相对内网所有人可见,所以提出了这个问题。之后我也仔细理解了arthas整个的鉴权机制,发现agent启动是可以设置账号密码,远程连接后也是需要先鉴权再执行指令,从这个角度上来说也可以解决我们的问题

只要配置了 app name,agent id会是 app name + 随机的方式生成。参考文档里的说明。

8

连接的时候也是要知道完整的agentId才行啊,随机部分对开发不见

6

连接的时候也是要知道完整的agentId才行啊,随机部分对开发不见

所以实际上tunnel server里有一个页面是按 app name查询应用下的所有id的。这个没有写到文档里,可以到代码里看下。