亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在 Spring Boot 應用程序的 com.ibm.ws.security.jaspi

在 Spring Boot 應用程序的 com.ibm.ws.security.jaspi

慕無忌1623718 2022-06-15 15:06:23
我正在使用帶有 tomcat 作為容器的 Spring Boot 應用程序。在某些機器上它正在工作,而在其他機器上我得到:java.lang.SecurityException: AuthConfigFactory error: java.lang.ClassNotFoundException: com.ibm.ws.security.jaspi.ProviderRegistry        at javax.security.auth.message.config.AuthConfigFactory.getFactory(AuthConfigFactory.java:85) ~[tomcat-embed-core-8.5.20.jar!/:8.5.20]        at org.apache.catalina.authenticator.AuthenticatorBase.findJaspicProvider(AuthenticatorBase.java:1205) ~[tomcat-embed-core-8.5.20.jar!/:8.5.20]        at org.apache.catalina.authenticator.AuthenticatorBase.getJaspicProvider(AuthenticatorBase.java:1195) ~[tomcat-embed-core-8.5.20.jar!/:8.5.20]        at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:469) ~[tomcat-embed-core-8.5.20.jar!/:8.5.20]        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140) ~[tomcat-embed-core-8.5.20.jar!/:8.5.20]        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80) [tomcat-embed-core-8.5.20.jar!/:8.5.20]        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87) [tomcat-embed-core-8.5.20.jar!/:8.5.20]        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342) [tomcat-embed-core-8.5.20.jar!/:8.5.20]        at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:799) [tomcat-embed-core-8.5.20.jar!/:8.5.20]        at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) [tomcat-embed-core-8.5.20.jar!/:8.5.20]        at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868) [tomcat-embed-core-8.5.20.jar!/:8.5.20]        at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1457) [tomcat-embed-core-8.5.20.jar!/:8.5.20]該類com.ibm.ws.security.jaspi.ProviderRegistry看起來像一個 WebSphere 類,它與我的應用程序無關,因為我使用的是 tomcat。
查看完整描述

1 回答

?
拉丁的傳說

TA貢獻1789條經驗 獲得超8個贊

問題是 java 安全試圖在AuthConfigFactory::getFactory(). 它首先檢查安全屬性是否authconfigprovider.factory存在。

如果該屬性authconfigprovider.factory不存在,它將創建為類的默認實例org.apache.catalina.authenticator.jaspic.AuthConfigFactoryImpl,這可能沒問題。

問題是當您嘗試在已在 java.security 文件中定義該安全屬性的機器上運行時authconfigprovider.factorycom.ibm.ws.security.jaspi.ProviderRegistry可能該機器用于 WebSphere)。

所以當然你沒有課程com.ibm.ws.security.jaspi.ProviderRegistry,你會得到ClassNotFoundException。

要解決它,請嘗試創建您自己的 java.security 文件并將其定位在您的應用程序下,在該文件內 - 覆蓋屬性,如authconfigprovider.factory=org.apache.catalina.authenticator.jaspic.AuthConfigFactoryImpl.

要使您的新 java.security 文件處于活動狀態,請添加 jvm 參數-Djava.security.properties=java.security。


查看完整回答
反對 回復 2022-06-15
  • 1 回答
  • 0 關注
  • 339 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號