Search code examples
sap-cloud-connector

SICF: Why does a GET request to a SAP REST service fail with HTTP 403 (Forbidden) if requested via Cloud Connector?


Using the transaction sicf I created a REST web service that returns some data on GET. When I accessed the SAP system directly by using its IP in postman/insomnia or using the built-in test fuctionality in sicf the data are returned as expected with a HTTP status 200.

When I tried to GET the same data with the Cloud Connector in between as a proxy the requests fail with HTTP status 403 -- forbidden. The error message says (sorry, original is German only):

Der Aufruf der URL wurde abgebrochen, da der entsprechende Service nicht verfügbar ist.

My own translation is "The request was cancelled because the service is unavailable."

The service has been successfully activated in sicf, otherwise the direct tests wouldn't work. The path + all sub paths are whitelisted in the cloud connector. There are no error logs or traces written inside the ICF. The headers of the 403 response do not contain any useful information (like e.g. a required CSRF token for failing POST requests).


Solution

  • The cloud connector was configured to use the HTTP service port but the configuration of my service in sicf required a SSL/HTTPS connection that runs on a different port. Mutual adjustment of HTTP vs. HTTPS in the sicf and cloud connector configuration respectively fixed the problem.