@饶维立 你好,想跟你请教个问题:
在用smack模拟登录时报错:SASL authentication DIGEST-MD5 failed: not -authorized
请问是什么原因?该如何解决?谢谢
谢谢,这个问题我后来发现是这样的。 我误认为router-users.xml就是管理员,以为可以用来登录的,但实际用来登录的帐号是数据库里authreg表中的帐号,也就是通过注册来的。所以一直会有401,但还是对router-users.xml中配置的用户用来干什么,不是很清楚。
回复
很久没用openfire了,我也是凭经验判断。登陆过程是这样:Socket建立->Stream绑定(得到服务器domain)->发送登陆请求->服务器返回验证方式->发送登陆验证信息(账号密码等)->登陆成功或者失败(401);一般401就是认证信息不对,你可以通过openfire的日志看下,里面应该有记录认证失败的信息,也可以对比下发送的协议看下是不是协议发送的不正确;用Openfrie的Smack客户端对比验证下。
回复not-authorized(401),这个 怎么弄好的啊?说下啊....
回复我也碰到这个问题,求方法
回复请问是如何解决掉 的?我也遇到这个问题了。
回复你是怎么解决的?我现在也遇到这问题了,求帮忙
router-users.xml <users> <user> <name>jabberd</name> <secret>secret</secret> </user> </users> 是这个文件中的帐号吗?用这个也是401啊,还和什么地方的配置有关呢?
设置为登录不验证了,结果又出了下面的错误呢: not-authorized(401) at org.jivesoftware.smack.NonSASLAuthentication.authenticate(NonSASLAuthentication.java:109)
我的作法是关闭掉sasl认证方式,这种认证方式在Smack和Openfire有些版本中好像有问题。
同时Smack缺省还会打开TLS等处理,测试和开发环境下建议都关掉。
config.setTLSEnabled(false);config.setCompressionEnabled(false);config.setSelfSignedCertificateEnabled(false);config.setSASLAuthenticationEnabled(false);config.setVerifyChainEnabled(false);
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
暂无简介
文章 0 评论 0
接受
发布评论
评论(9)
谢谢,这个问题我后来发现是这样的。 我误认为router-users.xml就是管理员,以为可以用来登录的,但实际用来登录的帐号是数据库里authreg表中的帐号,也就是通过注册来的。所以一直会有401,但还是对router-users.xml中配置的用户用来干什么,不是很清楚。
回复
很久没用openfire了,我也是凭经验判断。
登陆过程是这样:Socket建立->Stream绑定(得到服务器domain)->发送登陆请求->服务器返回验证方式->发送登陆验证信息(账号密码等)->登陆成功或者失败(401);
一般401就是认证信息不对,你可以通过openfire的日志看下,里面应该有记录认证失败的信息,也可以对比下发送的协议看下是不是协议发送的不正确;用Openfrie的Smack客户端对比验证下。
回复
not-authorized(401),这个 怎么弄好的啊?说下啊....
回复
我也碰到这个问题,求方法
回复
请问是如何解决掉 的?我也遇到这个问题了。
回复
你是怎么解决的?我现在也遇到这问题了,求帮忙
router-users.xml <users> <user> <name>jabberd</name> <secret>secret</secret> </user> </users> 是这个文件中的帐号吗?用这个也是401啊,还和什么地方的配置有关呢?
设置为登录不验证了,结果又出了下面的错误呢: not-authorized(401) at org.jivesoftware.smack.NonSASLAuthentication.authenticate(NonSASLAuthentication.java:109)
我的作法是关闭掉sasl认证方式,这种认证方式在Smack和Openfire有些版本中好像有问题。
同时Smack缺省还会打开TLS等处理,测试和开发环境下建议都关掉。
config.setTLSEnabled(false);
config.setCompressionEnabled(false);
config.setSelfSignedCertificateEnabled(false);
config.setSASLAuthenticationEnabled(false);
config.setVerifyChainEnabled(false);