cancel
Showing results for 
Search instead for 
Did you mean: 

SAP IDM REST API v2 over HTTPS configuration

clotilde_martinez
Participant

Hello Experts,

I'm running over a tricky problem. I recently updated my dev and qa systems to IDM 8.0 SP6 (from IDM 8.0 SP4). I think I'm missing a configuration somewhere in NWA.

Since SP6, documentation says "Identity Management REST Interface v2 requires HTTPS communication by default." If I try from chrome to do a simple request, on production i get a result :

http://:50000/idmrestapi/v2/service/ET_MX_PERSON as well as when i use the url

https://:50001/idmrestapi/v2/service/ET_MX_PERSON

in DEV and QA, if I try the http one, i get the following error message : For security reasons, SAP Identity Management requires HTTPS communication by default. (in line with the documentation)

If i try the second url, i get a 500 Internal Server Error.

NWA log shows the following error :

Cannot process an HTTP request to servlet [OData] in [idmrestapi] web application.
[EXCEPTION]
javax.servlet.ServletException: Failed to invoke XSRF servlet filter
at com.sap.idm.odata.filter.XSRFFilter.doFilter(XSRFFilter.java:52)
at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:79)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:441)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:210)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:441)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:430)
at com.sap.engine.services.servlets_jsp.filters.DSRWebContainerFilter.process(DSRWebContainerFilter.java:38)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.servlets_jsp.filters.ServletSelector.process(ServletSelector.java:81)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.servlets_jsp.filters.ApplicationSelector.process(ApplicationSelector.java:278)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.WebContainerInvoker.process(WebContainerInvoker.java:81)
at com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.ResponseLogWriter.process(ResponseLogWriter.java:60)
at com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.DefineHostFilter.process(DefineHostFilter.java:27)
at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.MonitoringFilter.process(MonitoringFilter.java:29)
at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.SessionSizeFilter.process(SessionSizeFilter.java:26)
at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.MemoryStatisticFilter.process(MemoryStatisticFilter.java:57)
at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.DSRHttpFilter.process(DSRHttpFilter.java:43)
at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.server.Processor.chainedRequest(Processor.java:475)
at com.sap.engine.services.httpserver.server.Processor$FCAProcessorThread.process(Processor.java:269)
at com.sap.engine.services.httpserver.server.rcm.RequestProcessorThread.run(RequestProcessorThread.java:56)
at com.sap.engine.core.thread.execution.Executable.run(Executable.java:122)
at com.sap.engine.core.thread.execution.Executable.run(Executable.java:101)
at com.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:328)

I then tried to change the parameter v2.AllowHttp on the tc~idm~rest~ear Java application to true, restarted the application. And i get the same error in HTTP as in HTTPS.

So I'm almost sure I'm missing something in NWA.

I followed the configuration guide part "Configuring Single Sign-On With Logon Tickets in the REST Interface for AS Java 7.1 and higher" with no success.

Does anyone has any idea on what I'm missing here?

Thanks a lot,

Clotilde

Accepted Solutions (0)

Answers (1)

Answers (1)

0 Kudos

Hi Clotilde,

I'm facing same issue. How did you fix this?

Regards,

Jai

0 Kudos

Hi Jai, did you got solution ?