Pergunta

After I invoke single-log-out (SLO), by calling 'GET' on https://[PingFederate Server Instance]:[Port]/idp/startSLO.ping, my PingFederate server begins making requests to my SP logout services. [I know this because I can see it happening in Fiddler.]

But somewhere along the way, it noticed that I apparently forgot to define a logout service for one of my SPs.

My Questions:

  • Which SP is it referring to?
  • How can I resolve this error?

2011-11-25 21:40:16,923 WARN [org.sourceid.servlet.ErrorServlet] Top level error (ref#wprmxs): org.sourceid.saml20.adapter.AuthnAdapterException: Logout functionality invoked, but no logout service is configured for this adapter. org.sourceid.websso.profiles.ProcessRuntimeException: org.sourceid.saml20.adapter.AuthnAdapterException: Logout functionality invoked, but no logout service is configured for this adapter. at org.sourceid.websso.profiles.ResumableResponseHandlerBase.resume(ResumableResponseHandlerBase.java:50) at org.sourceid.saml20.profiles.idp.HandleLogoutResponse.doIt(HandleLogoutResponse.java:154) at org.sourceid.saml20.profiles.idp.HandleLogoutResponse.handleException(HandleLogoutResponse.java:80) at org.sourceid.websso.profiles.ResponseHandlerBase.process(ResponseHandlerBase.java:86) at org.sourceid.saml20.profiles.ProfileProcessManager.doHandleResponse(ProfileProcessManager.java:92) at $ProfileProcessMgmtService_132f8e9ec21.doHandleResponse($ProfileProcessMgmtService_132f8e9ec21.java) at org.sourceid.websso.servlet.ProtocolControllerServlet.doIt(ProtocolControllerServlet.java:75) at org.sourceid.websso.servlet.ProtocolControllerServlet.process(ProtocolControllerServlet.java:84) at org.sourceid.websso.servlet.EnforcerServletBase.checkProcess(EnforcerServletBase.java:59) at org.sourceid.websso.servlet.EnforcerServletBase.doGet(EnforcerServletBase.java:84) at javax.servlet.http.HttpServlet.service(HttpServlet.java:707) at javax.servlet.http.HttpServlet.service(HttpServlet.java:820) at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487) at org.mortbay.jetty.servlet.jsr77.Jsr77ServletHolder.handle(Jsr77ServletHolder.java:74) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1093) at org.sourceid.servlet.filter.NoCacheFilter.doFilter(NoCacheFilter.java:46) at org.sourceid.servlet.filter.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:53) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084) at org.sourceid.websso.servlet.ProxyFilter.doFilter(ProxyFilter.java:34) at org.sourceid.servlet.filter.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:53) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084) at org.sourceid.websso.servlet.SessionIdFilter.doFilter(SessionIdFilter.java:67) at org.sourceid.servlet.filter.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:53) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360) at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726) at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405) at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:206) at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139) at org.mortbay.jetty.Server.handle(Server.java:324) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505) at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:828) at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514) at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380) at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:228) at com.pingidentity.appserver.jetty.DynamicSslSocketConnector$SslConnection.run(DynamicSslSocketConnector.java:637) at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450) Caused by: org.sourceid.saml20.adapter.AuthnAdapterException: Logout functionality invoked, but no logout service is configured for this adapter. at com.pingidentity.adapters.opentoken.IdpAuthnAdapter.logoutAuthN(IdpAuthnAdapter.java:270) at org.sourceid.saml20.profiles.idp.AdapterSupport.logoutAuthN(AdapterSupport.java:306) at org.sourceid.saml20.profiles.idp.HandleLogoutResponse.doResume(HandleLogoutResponse.java:184) at org.sourceid.websso.profiles.ResumableResponseHandlerBase.resume(ResumableResponseHandlerBase.java:46) ... 40 more

Foi útil?

Solução

This is an Adapter level error, not a connection one. You must verify that your adapter has a Logout Service URL configured.

In PingFederate Administration, click on the link to "Adapters" (either SP or IdP side), then select the adapter you are using (I suspect it's an instance of an Open Token one). In its configuration (under IdP Adapter tab or SP Adapter tab -> Show Advanced Fields) check that your Logout Service setting has a value that maps to your application's session logout URL.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top