5.0.4http_auth认证,body里配置了CN等信息,若客户端不启用TLS连接,则进入不了http_auth接口

环境信息

  • EMQX 版本:5.0.4
  • 操作系统及版本:windows10(docker)
  • 其他

问题描述

http_auth认证时,在body里配置了${cert_subject}和${cert_common_name},客户端若不使用TLS连接,进入不了http_auth接口,若不使用,不应该是传空吗?。

配置文件及日志

EMQX_AUTHENTICATION__2__BODY={username:"$${username}",clientid:"$${clientid}",peerhost:"$${peerhost}",subject:"$${cert_subject}",cn:"$${cert_common_name}"}

image

1 个赞

这是一个已知问题,正在处理中

我的问题和他的问题还是不一样的,他是授权的,我是认证的,认证里可以取到证书信息,但是如果客户端不用TLS连接的话,是走不到http_auth配置的接口的,我理解应该让走到,只不过证书信息为空,但是事实却走不到。

感谢反馈!@qinl 我刚刚检查了最新的实现 (v5.0.8),确实存在这样的现象。现在的情况是只要存在获取不到的字段都直接报上面截图中的 canot_get_variable, <<"xxx">> 的错误。

和团队讨论后我会在给你回复,感谢!

好的,感谢