Настроил OAuth2-OpenID Connect Single Sign-On с помощью WSO2 Identity Server-5.10.0 с моим веб-приложением в настройке Kubernetes.
При входе в веб-приложение, когда мы нажимаем ссылку «забыли имя пользователя/пароль» на странице входа SSO, URL-адрес добавляется с номером порта 9443- https://wso2is:9443/accountrecoveryendpoint/recoveraccountrouter.do?client_id
, после удаления номера порта вручную из URL-адреса страница загружается с URL-адресом -https://wso2is/accountrecoveryendpoint/recoveraccountrouter.do?client_id
в браузере.
Ниже приведен файл deployment.toml, используемый в нашей установке.
развертывание.toml
[identity.auth_framework.endpoint]
identity_server_service_url="https://$ref{server.hostname}:9443/services"
[событие.default_listener.identity_mgt]
приоритет = "50"
включить = ложь
[event.default_listener.governance_identity_mgt]
приоритет = "95"
включить = правда
[event.default_listener.governance_identity_store]
приоритет = "97"
включить = правда
[authentication.authenticator.email_otp]
имя = ""
включить = правда
[authentication.authenticator.email_otp.parameters]
useEventHandlerBasedEmailSender = истина
[output_adapter.email]
от_адрес = ""
имя пользователя = ""
пароль = ""
имя хоста = ""
порт=
enable_start_tls = истина
enable_authentication = истина
подпись = ""
Чтобы избежать перенаправления на порт 9443, добавили ниже конфигурацию
[транспорт.https.properties]
проксипорт = 443
После добавления proxyPort = 443 в пользовательском интерфейсе и журналах появляется следующая ошибка:
введите описание изображения здесь
Ошибка при выполнении метода запроса: GET на ресурсе: https://wso2is/api/identity/recovery/v0.9/captcha?tenant-domain=carbon.super&captcha-type=ReCaptcha&recovery-type=password-recovery com.sun .jersey.api.client.ClientHandlerException: java.net.ConnectException: в соединении отказано (в соединении отказано)
в com.sun.jersey.client.urlconnection.URLConnectionClientHandler.handle(URLConnectionClientHandler.java:155)
в com.sun.jersey.api.client.Client.handle(Client.java:652)
на com.sun.jersey.api.client.WebResource.handle(WebResource.java:682)
на com.sun.jersey.api.client.WebResource.access$200(WebResource.java:74)
на com.sun.jersey.api.client.WebResource$Builder.get(WebResource.java:509)
на org.wso2.carbon.identity.mgt.endpoint.util.client.ApiClient.getAPIResponse(ApiClient.java:489)
на org.wso2.carbon.identity.mgt.endpoint.util.client.ApiClient.invokeAPI(ApiClient.java:529)
на org.wso2.carbon.identity.mgt.endpoint.util.client.api.ReCaptchaApi.getReCaptcha(ReCaptchaApi.java:105)
в org.apache.jsp.password_002drecovery_jsp._jspService(password_002drecovery_jsp.java:197)
в org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
в javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
в org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:477)
в org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:385)
в org.apache.jasper.servlet.JspServlet.service(JspServlet.java:329)
в javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
в org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
в org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
в org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
в org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
в org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
в org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:712)
в org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:459)
в org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:384)
в org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:312)
в org.apache.jsp.account_002drecovery_002drouter_jsp._jspService(account_002drecovery_002drouter_jsp.java:138)
в org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
в javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
в org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:477)
в org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:385)
в org.apache.jasper.servlet.JspServlet.service(JspServlet.java:329)
в javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
в org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
в org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
в org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
в org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
в org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
в org.apache.catalina.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:109)
в org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
в org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
в org.wso2.carbon.ui.filters.cache.ContentTypeBasedCachePreventionFilter.doFilter(ContentTypeBasedCachePreventionFilter.java:53)
в org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
в org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
в org.apache.catalina.filters.HttpHeaderSecurityFilter.doFilter(HttpHeaderSecurityFilter.java:126)
в org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
в org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
в org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)
в org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
в org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541)
на org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)
в org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
на org.wso2.carbon.identity.context.rewrite.valve.TenantContextRewriteValve.invoke(TenantContextRewriteValve.java:86)
на org.wso2.carbon.identity.authz.valve.AuthorizationValve.invoke(AuthorizationValve.java:110)
на org.wso2.carbon.identity.auth.valve.AuthenticationValve.invoke(AuthenticationValve.java:75)
на org.wso2.carbon.tomcat.ext.valves.CompositeValve.continueInvocation(CompositeValve.java:99)
на org.wso2.carbon.tomcat.ext.valves.TomcatValveContainer.invokeValves(TomcatValveContainer.java:49)
на org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(CompositeValve.java:62)
на org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve.invoke(CarbonStuckThreadDetectionValve.java:145)
в org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:688)
на org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.java:57)
на org.wso2.carbon.tomcat.ext.valves.RequestEncodingValve.invoke(RequestEncodingValve.java:49)
на org.wso2.carbon.tomcat.ext.valves.RequestCorrelationIdValve.invoke(RequestCorrelationIdValve.java:119)
в org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
в org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
на org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:367)
в org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
в org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868)
в org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1639)
в org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
в java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
в java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
в org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
в java.base/java.lang.Thread.run(Thread.java:834)
Вызвано: java.net.ConnectException: в соединении отказано (в соединении отказано)
в java.base/java.net.PlainSocketImpl.socketConnect (собственный метод)
на java.base/java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:399)
в java.base/java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:242)
на java.base/java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:224)
на java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:403)
на java.base/java.net.Socket.connect(Socket.java:609)
в java.base/sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:285)
в java.base/sun.security.ssl.BaseSSLSocketImpl.connect(BaseSSLSocketImpl.java:173)
на java.base/sun.net.NetworkClient.doConnect(NetworkClient.java:182)
на java.base/sun.net.www.http.HttpClient.openServer(HttpClient.java:474)
на java.base/sun.net.www.http.HttpClient.openServer(HttpClient.java:569)
на java.base/sun.net.www.protocol.https.HttpsClient.<init>(HttpsClient.java:265)
на java.base/sun.net.www.protocol.https.HttpsClient.New(HttpsClient.java:372)
на java.base/sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.getNewHttpClient(AbstractDelegateHttpsURLConnection.java:191)
на java.base/sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1187)
на java.base/sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1081)
на java.base/sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:177)
на java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1587)
на java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1515)
в java.base/java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:527)
на java.base/sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:334)
на com.sun.jersey.client.urlconnection.URLConnectionClientHandler._invoke(URLConnectionClientHandler.java:253)
на com.sun.jersey.client.urlconnection.URLConnectionClientHandler.handle(URLConnectionClientHandler.java:153)
... еще 71