在用smack模拟登录时报错:SASL authentication DIGEST-MD5 failed

发布于 2021-11-22 05:17:54 字数 225 浏览 826 评论 9

@饶维立 你好,想跟你请教个问题:

在用smack模拟登录时报错:SASL authentication DIGEST-MD5 failed: not -authorized

请问是什么原因?该如何解决?谢谢

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(9

自此以后,行同陌路 2021-11-27 10:42:42

谢谢,这个问题我后来发现是这样的。 我误认为router-users.xml就是管理员,以为可以用来登录的,但实际用来登录的帐号是数据库里authreg表中的帐号,也就是通过注册来的。所以一直会有401,但还是对router-users.xml中配置的用户用来干什么,不是很清楚。

怎言笑 2021-11-27 10:17:02

回复

很久没用openfire了,我也是凭经验判断。

登陆过程是这样:Socket建立->Stream绑定(得到服务器domain)->发送登陆请求->服务器返回验证方式->发送登陆验证信息(账号密码等)->登陆成功或者失败(401);

一般401就是认证信息不对,你可以通过openfire的日志看下,里面应该有记录认证失败的信息,也可以对比下发送的协议看下是不是协议发送的不正确;用Openfrie的Smack客户端对比验证下。

风苍溪 2021-11-27 10:04:37

回复
not-authorized(401),这个 怎么弄好的啊?说下啊....

清风夜微凉 2021-11-27 10:02:06

回复
我也碰到这个问题,求方法

鹤舞 2021-11-27 08:42:29

回复
请问是如何解决掉 的?我也遇到这个问题了。

混吃等死 2021-11-27 01:04:36

回复
你是怎么解决的?我现在也遇到这问题了,求帮忙

奈何桥上唱咆哮 2021-11-24 14:57:31

router-users.xml <users> <user> <name>jabberd</name> <secret>secret</secret> </user> </users> 是这个文件中的帐号吗?用这个也是401啊,还和什么地方的配置有关呢?

筱果果 2021-11-24 02:43:02

设置为登录不验证了,结果又出了下面的错误呢: not-authorized(401) at org.jivesoftware.smack.NonSASLAuthentication.authenticate(NonSASLAuthentication.java:109)

别低头,皇冠会掉 2021-11-22 15:47:53

我的作法是关闭掉sasl认证方式,这种认证方式在Smack和Openfire有些版本中好像有问题。

同时Smack缺省还会打开TLS等处理,测试和开发环境下建议都关掉。

config.setTLSEnabled(false);
config.setCompressionEnabled(false);
config.setSelfSignedCertificateEnabled(false);
config.setSASLAuthenticationEnabled(false);
config.setVerifyChainEnabled(false);

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文