Remote connection failed: javax.security.sasl.SaslException: Authentication failed: all available au

       今天新申请了阿里云的服务器,运营室给安装了jboss,高高兴兴部署项目的时候,发现报了如下问题。上网一搜说是没有可用权限的用户。我在用的时候新建了manage用户和application用户,(具体新建方法可参照前面)用来往jboss消息队列上发消息使用,结果到配置文件中看了一下,standalone/configuration文件夹下的application-user.properties和application-role.properties及mgmt-user.properties文件,3个文件里面没有新增用户和角色。但是在domain/configuration下对应的文件用户已添加成功,让人很诧异(可能是运营室把standalone文件夹重命名为server1导致的,这个后续再验证)。报错如下:

"config-based-naming-client-endpoint" read-1) JBREM000200: Remote connection failed: javax.security.sasl.SaslException: Authentication failed: all available authentication mechanisms failed

14:23:43,753 ERROR [stderr] (Thread-81) javax.naming.NamingException: Failed to create remoting connection [Root exception is java.lang.RuntimeException: javax.security.sasl.SaslException: Authentication failed: all available authentication mechanisms failed]
14:23:43,754 ERROR [stderr] (Thread-81) at org.jboss.naming.remote.client.ClientUtil.namingException(ClientUtil.java:36)
14:23:43,755 ERROR [stderr] (Thread-81) at org.jboss.naming.remote.client.InitialContextFactory.getInitialContext(InitialContextFactory.java:121)
14:23:43,755 ERROR [stderr] (Thread-81) at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:667)
14:23:43,756 ERROR [stderr] (Thread-81) at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:288)
14:23:43,756 ERROR [stderr] (Thread-81) at javax.naming.InitialContext.init(InitialContext.java:223)
14:23:43,756 ERROR [stderr] (Thread-81) at javax.naming.InitialContext.<init>(InitialContext.java:197)
14:23:43,766 ERROR [stderr] (Thread-81) Caused by: java.lang.RuntimeException: javax.security.sasl.SaslException: Authentication failed: all available authentication mechanisms failed
14:23:43,769 ERROR [stderr] (Thread-81) at org.jboss.naming.remote.protocol.IoFutureHelper.get(IoFutureHelper.java:87)
14:23:43,769 ERROR [stderr] (Thread-81) at org.jboss.naming.remote.client.NamingStoreCache.getRemoteNamingStore(NamingStoreCache.java:56)
14:23:43,770 ERROR [stderr] (Thread-81) at org.jboss.naming.remote.client.InitialContextFactory.getOrCreateCachedNamingStore(InitialContextFactory.java:166)
14:23:43,770 ERROR [stderr] (Thread-81) at org.jboss.naming.remote.client.InitialContextFactory.getOrCreateNamingStore(InitialContextFactory.java:139)
14:23:43,771 ERROR [stderr] (Thread-81) at org.jboss.naming.remote.client.InitialContextFactory.getInitialContext(InitialContextFactory.java:104)
14:23:43,771 ERROR [org.jboss.remoting.remote.connection] (Remoting "config-based-naming-client-endpoint" read-1) JBREM000200: Remote connection failed: javax.security.sasl.SaslException: Authentication failed: all available authentication mechanisms failed
14:23:43,771 ERROR [stderr] (Thread-81) ... 8 more
14:23:43,775 ERROR [stderr] (Thread-81) Caused by: javax.security.sasl.SaslException: Authentication failed: all available authentication mechanisms failed
14:23:43,776 ERROR [stderr] (Thread-81) at org.jboss.remoting3.remote.ClientConnectionOpenListener$Capabilities.handleEvent(ClientConnectionOpenListener.java:365)
14:23:43,776 ERROR [stderr] (Thread-81) at org.jboss.remoting3.remote.ClientConnectionOpenListener$Capabilities.handleEvent(ClientConnectionOpenListener.java:214)
14:23:43,777 ERROR [stderr] (Thread-81) at org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:72)
14:23:43,777 ERROR [stderr] (Thread-81) at org.xnio.channels.TranslatingSuspendableChannel.handleReadable(TranslatingSuspendableChannel.java:189)
14:23:43,778 ERROR [stderr] (Thread-81) at org.xnio.channels.TranslatingSuspendableChannel$1.handleEvent(TranslatingSuspendableChannel.java:103)
14:23:43,778 ERROR [stderr] (Thread-81) at org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:72)
14:23:43,778 ERROR [stderr] (Thread-81) at org.xnio.nio.NioHandle.run(NioHandle.java:90)
14:23:43,779 ERROR [stderr] (Thread-81) at org.xnio.nio.WorkerThread.run(WorkerThread.java:184)
14:23:43,779 ERROR [stderr] (Thread-81) at ...asynchronous invocation...(Unknown Source)
14:23:43,779 ERROR [stderr] (Thread-81) at org.jboss.remoting3.EndpointImpl.doConnect(EndpointImpl.java:270)
14:23:43,780 ERROR [stderr] (Thread-81) at org.jboss.remoting3.EndpointImpl.doConnect(EndpointImpl.java:251)
14:23:43,780 ERROR [stderr] (Thread-81) at org.jboss.remoting3.EndpointImpl.connect(EndpointImpl.java:349)
14:23:43,780 ERROR [stderr] (Thread-81) at org.jboss.remoting3.EndpointImpl.connect(EndpointImpl.java:333)
14:23:43,781 ERROR [stderr] (Thread-81) at org.jboss.naming.remote.client.EndpointCache$EndpointWrapper.connect(EndpointCache.java:105)
14:23:43,781 ERROR [stderr] (Thread-81) at org.jboss.naming.remote.client.NamingStoreCache.getRemoteNamingStore(NamingStoreCache.java:55)

14:23:43,782 ERROR [stderr] (Thread-81) ... 11 more



解决办法是,将domain中对应文件里的加密信息复制到standalone的配置文件(只复制新增内容),重启服务即可解决。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderExceptionJava中的一个错误,表示构建PKIX路径失败,无法找到有效的证书路径。这个错误通常发生在使用SSL连接时,由于Java不信任SSL证书导致的。 解决这个问题的方法有多种,其中一种是手动导入证书到本地的信任库。这种方法比较复杂,需要按照一定的步骤进行操作。另一种方法是信任SSL证书,可以通过以下步骤解决该问题: 1. 创建一个TrustManager,用于信任所有的SSL证书。可以使用X509TrustManager接口的实现类,如下所示: ```java import javax.net.ssl.X509TrustManager; import java.security.cert.CertificateException; import java.security.cert.X509Certificate; public class TrustAllManager implements X509TrustManager { @Override public void checkClientTrusted(X509Certificate[] x509Certificates, String s) throws CertificateException { } @Override public void checkServerTrusted(X509Certificate[] x509Certificates, String s) throws CertificateException { } @Override public X509Certificate[] getAcceptedIssuers() { return new X509Certificate[0]; } } ``` 2. 在使用SSL连接之前,将TrustManager设置为信任所有SSL证书。可以使用以下代码片段实现: ```java import javax.net.ssl.HttpsURLConnection; import javax.net.ssl.SSLContext; import javax.net.ssl.TrustManager; // 创建SSL上下文 SSLContext sslContext = SSLContext.getInstance("TLS"); // 创建TrustManager数组,只包含一个TrustAllManager TrustManager[] trustManagers = {new TrustAllManager()}; // 初始化SSL上下文 sslContext.init(null, trustManagers, null); // 设置默认的SSLSocketFactory和HostnameVerifier HttpsURLConnection.setDefaultSSLSocketFactory(sslContext.getSocketFactory()); HttpsURLConnection.setDefaultHostnameVerifier((hostname, session) -> true); ``` 通过以上步骤,你可以解决PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException错误。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值