# Troubleshooting Reference Common issues and solutions for SAP BTP. **Source**: [https://github.com/SAP-docs/sap-btp-cloud-platform/tree/main/docs/60-security](https://github.com/SAP-docs/sap-btp-cloud-platform/tree/main/docs/60-security) --- ## Table of Contents 1. [Authentication Issues](#authentication-issues) 2. [Authorization Issues](#authorization-issues) 3. [Trust Configuration Issues](#trust-configuration-issues) 4. [Token Issues](#token-issues) 5. [XSUAA Issues](#xsuaa-issues) 6. [Cloud Foundry Issues](#cloud-foundry-issues) 7. [Kyma Issues](#kyma-issues) 8. [Connectivity Issues](#connectivity-issues) 9. [Service Instance Issues](#service-instance-issues) --- ## Authentication Issues ### Login Screen Shows "SAP HANA XS Advanced" **Cause**: Application using wrong login endpoint **Solution**: 1. Check xs-app.json authentication configuration 2. Verify XSUAA service binding 3. Ensure correct UAA URL in environment ### Identity Provider Could Not Process Authentication Request **Cause**: Trust configuration mismatch **Solution**: 1. Verify trust configuration in subaccount 2. Check IdP SAML/OIDC metadata is current 3. Ensure certificates are not expired 4. Verify assertion consumer service URL ### Access Is Denied or Forbidden **Causes**: - Missing role assignments - Incorrect scope configuration - User not in required group **Solutions**: 1. Check user role collection assignments 2. Verify application scopes in xs-security.json 3. Check IdP group mappings 4. Verify trust configuration ### AuthnRequest Expired **Cause**: Time synchronization issue between IdP and BTP **Solution**: 1. Sync IdP server time with NTP 2. Check for clock skew > 5 minutes 3. Verify SAML response timestamps --- ## Authorization Issues ### Cannot Add Role Templates to Predefined Role Collections **Cause**: Predefined role collections are immutable **Solution**: 1. Create custom role collection 2. Add desired role templates 3. Assign custom role collection to users ### User Has Role But Still Gets 403 **Causes**: - Scope not checked in application - Cache not refreshed - Wrong role collection assigned **Solutions**: 1. Verify application checks correct scope 2. Clear browser cache, re-login 3. Check role collection contains required roles 4. Verify role template references correct scopes ### Missing Administrator Access **Cause**: No administrator assigned to account **Solutions**: 1. Contact SAP support if locked out 2. Use emergency administrator in default IdP 3. Check SAP ID Service access --- ## Trust Configuration Issues ### 409 Error When Deleting Custom Identity Provider **Cause**: Trust configuration still in use **Solution**: 1. Remove all user assignments from this IdP 2. Delete shadow users from this IdP origin 3. Then delete trust configuration ### Subdomain Does Not Map to Valid Identity Zone **Cause**: Invalid or non-existent subaccount subdomain **Solutions**: 1. Verify subdomain in subaccount settings 2. Check UAA URL format 3. Ensure subaccount exists and is active ### IAS Application Reference Not Created **Cause**: Identity Authentication tenant issue **Solutions**: 1. Verify Identity Authentication subscription 2. Check trust configuration status 3. Re-establish trust if needed ### Trust Establishment Issues **Common causes**: - Expired certificates - Incorrect metadata - Network issues **Solutions**: 1. Re-download IdP metadata 2. Update trust configuration 3. Verify network connectivity to IdP --- ## Token Issues ### 400 Error: OAuth Token Call Not Successful **Causes**: - Invalid client credentials - Wrong token endpoint - Expired client secret **Solutions**: 1. Verify client ID and secret 2. Check token service URL 3. Regenerate service key if needed ### Token Retrieval Fails with 401 **Causes**: - Invalid credentials - Token expired - Wrong authentication method **Solutions**: 1. Check client credentials in service binding 2. Verify token not expired 3. Use correct grant type ### Invalid Redirect URI **Cause**: Callback URL not registered in XSUAA **Solution**: 1. Add redirect URI to xs-security.json: ```json { "oauth2-configuration": { "redirect-uris": [ "[https://myapp.cfapps.eu10.hana.ondemand.com/**"](https://myapp.cfapps.eu10.hana.ondemand.com/**") ] } } ``` 2. Update service instance 3. Restage application --- ## XSUAA Issues ### No Client with Requested ID **Cause**: Service instance not found or wrong client ID **Solutions**: 1. Verify XSUAA service instance exists 2. Check VCAP_SERVICES for correct credentials 3. Ensure binding is active ### XSUAA Limits Exceeded **Limits**: - 100 role templates per application - 100 scopes per application - 50 attributes per application **Solution**: Consolidate roles and scopes ### Sharing Service Instance Issues **Solutions**: 1. Verify instance supports sharing 2. Check cross-subaccount trust 3. Use service instance sharing API --- ## Cloud Foundry Issues ### Application Won't Start **Common causes**: - Out of memory - Port binding issues - Missing dependencies - Buildpack errors **Debugging**: ```bash # View logs cf logs my-app --recent # Check events cf events my-app # SSH for debugging cf ssh my-app ``` ### Service Binding Failed **Causes**: - Service not available in space - Quota exceeded - Service broker error **Solutions**: 1. Check marketplace availability 2. Verify quota assignments 3. Check service broker status ### Requested Route Does Not Exist **Causes**: - Route not mapped - Application stopped - Wrong domain **Solutions**: 1. Map route: `cf map-route my-app cfapps.eu10.hana.ondemand.com -n my-hostname` 2. Start application 3. Verify domain is correct ### Push Fails with Timeout **Solutions**: 1. Increase timeout: `cf push -t 180` 2. Check buildpack compatibility 3. Reduce application size 4. Check staging logs --- ## Kyma Issues ### Pod Not Starting **Debugging**: ```bash # Check pod status kubectl describe pod -n # View events kubectl get events -n --sort-by='.lastTimestamp' # Check logs kubectl logs -n ``` **Common causes**: - Image pull errors - Resource limits - Configuration errors ### Service Binding Not Working (BTP Operator) **Causes**: - BTP Operator module not installed - Incorrect service instance name - Namespace issues **Solutions**: 1. Verify BTP Operator module enabled 2. Check ServiceInstance status 3. Verify namespace labels ### API Rule Not Working **Debugging**: ```bash kubectl get apirules -n kubectl describe apirule -n ``` **Common causes**: - Wrong host configuration - Authentication configuration issues - Istio gateway issues --- ## Connectivity Issues ### Destination Not Found **Causes**: - Destination not created - Wrong destination name - Missing binding **Solutions**: 1. Create destination in subaccount 2. Verify exact name match 3. Bind destination service to app ### Cloud Connector Not Connected **Causes**: - Network issues - Certificate expired - Configuration error **Solutions**: 1. Check Cloud Connector status 2. Verify certificates 3. Check firewall rules 4. Review Cloud Connector logs ### Principal Propagation Failing **Causes**: - Trust not configured - Certificate mapping incorrect - Backend system configuration **Solutions**: 1. Verify trust chain complete 2. Check certificate subject mapping 3. Configure backend for SSO --- ## Service Instance Issues ### Instance Creation Failed **Common causes**: - Quota exceeded - Invalid parameters - Service plan unavailable **Debugging**: ```bash # CF CLI cf service my-service # Check marketplace cf marketplace -e ``` ### Extension Service Instance Failed **For S/4HANA Extensibility**: 1. Verify system registration complete 2. Check communication arrangement syntax 3. Verify entitlements assigned **For SuccessFactors Extensibility**: 1. Verify system registration 2. Check technical user credentials 3. Verify SSO configuration if used --- ## Debugging Commands ### Cloud Foundry ```bash # Application info cf app my-app cf env my-app # Logs cf logs my-app --recent cf logs my-app # Events cf events my-app # SSH cf ssh my-app cf ssh my-app -c "cat /proc/meminfo" # Services cf services cf service my-service ``` ### Kyma/Kubernetes ```bash # Pod debugging kubectl get pods -n kubectl describe pod -n kubectl logs -n kubectl exec -it -n -- /bin/sh # Service debugging kubectl get svc -n kubectl describe svc -n # Events kubectl get events -n --sort-by='.lastTimestamp' # Resource status kubectl get all -n ``` ### Token Debugging ```bash # Decode JWT echo "" | cut -d. -f2 | base64 -d | jq # Test token endpoint curl -X POST "[https:///oauth/token"](https:///oauth/token") \ -H "Content-Type: application/x-www-form-urlencoded" \ -d "grant_type=client_credentials" \ -u "client_id:client_secret" ``` --- ## Related Documentation - Security Troubleshooting: [https://github.com/SAP-docs/sap-btp-cloud-platform/blob/main/docs/60-security/troubleshooting-for-sap-authorization-and-trust-management-service-c33d777.md](https://github.com/SAP-docs/sap-btp-cloud-platform/blob/main/docs/60-security/troubleshooting-for-sap-authorization-and-trust-management-service-c33d777.md) - Extensions Troubleshooting: [https://github.com/SAP-docs/sap-btp-cloud-platform/blob/main/docs/40-extensions/troubleshooting-for-sap-s-4hana-cloud-extensibility-service-3725f59.md](https://github.com/SAP-docs/sap-btp-cloud-platform/blob/main/docs/40-extensions/troubleshooting-for-sap-s-4hana-cloud-extensibility-service-3725f59.md) - Getting Support: [https://github.com/SAP-docs/sap-btp-cloud-platform/tree/main/docs/70-getting-support](https://github.com/SAP-docs/sap-btp-cloud-platform/tree/main/docs/70-getting-support)