$(function () { pageContext.i18n.modTalk = 'moderation talk'; pageContext.i18n.replyToComment = 'Reply'; pageContext.i18n.modTalkEmpty = 'moderation talk is empty'; pageContext.url.getModTalk = "/comments/%25ID%25/listModTalk.json"; pageContext.url.possibleCommentRecipients = "/comments/%ID%/possibleRecipients.json"; pageContext.url.commentEdit = '/comments/%25ID%25/edit.html'; pageContext.url.commentView = '/comments/%ID%/view.html'; pageContext.i18n.commentVisibility = { 'full': 'Viewable by all users', 'op': 'Viewable by the original poster', 'mod': 'Viewable by moderators', 'opAndMod': 'Viewable by moderators and the original poster', 'other': 'Advanced visibility', 'dialogTitle': 'Comment visibility', 'selectGroups': 'Visible to groups', 'selectOther': 'Other recipients', 'selectOriginalPoster': 'Original poster', 'selectModerators': 'Moderators', 'selectAssignees': 'Asked to answer users' }; pageContext.i18n.commentMenuLabels = { 'comment-edit': 'comments.menu.edit', 'comment-delete': 'comments.menu.delete', 'comment-convert': 'comments.menu.convert' };pageContext.i18n.answer= { bestAnswer: 'Best Answer', controlBar : { accept: 'Accept', unaccept: 'Unaccept', acceptCommand: 'Accept this answer as correct', cancelAcceptedCommand: 'Remove this answers accepted status' } }; window.croles = { u: false, op: false, m: false, og: false, as: false, ag: false, dc: false, doc: false, eo: false, ea: false }; tools.init({ q: { e: false, ew: false, eo: false, r: false, ro: false, d: false, dow: false, fv: false, c: false, co: false, p: false, tm: false , ms: false, mos: false }, n: { f: false, vf: false, vfo: false, vr: false, vro: false, c: false, co: false, vu: false, vd: false, w: false, wo: false, l: false }, c: { e: false, eo: false, d: false, dow: false, ta: false, tao: false, l: false }, a: { e: false, ew: false, eo: false, d: false, dow: false, a: false, aoq: false, ao: false, tc: false, tco: false, p: false, tm: false }, pc: croles }, { tc: true, nsc: true }); commandUtils.initializeLabels(); }); Skip to Content
0

Weird issue with HANA XS SAML SSO and Odata service

May 09, 2017 at 06:00 AM

149

avatar image
Former Member

We recently updated to SAP HANA 2.0 SPS01 and we have a weird issue with HANA XS SAML SSO and Odata service after the update. We use ADFS as the IDP for our SAML. Here is a brief of the issue.

1) Accessing url "https://<server>:<port>/OData_Services/<odata_name>/services.xsodata/Organizations?$filter=indexof(tolower(ORGNAME),'town') ge 0&$top=50" will show error “No cookie with target path found in request” which suggests that SAML Token is not passed. There is nothing in the indexserver or xsserver logs to suggest an issue though.

2) Accessing url "https://<server>:<port>/OData_Services/<odata_name>/services.xsodata" which is the same as the url in ITEM 1 without filters works and user is authenticated. After getting authenticated, trying the url in ITEM 1 will work without issues.

3) Open a new session and access url "https://<server>:<port>/OData_Services/<odata_name>/services.xsodata/Organizations?$filter=ORGNAME%20eq%20%27AB%20Transportation%27". This is also the same as in ITEM 1 but with a filter EQ. This works without issues as well and user is authenticated. After getting authenticated, trying the url in ITEM 1 will work without issues.

The thing is the application consuming the data needs to have a filter that is not exact as users will use that application to query data. Also, as it works after getting authenticated from another url, this is very weird.

Tried with SAP but no dice as they seem to not know why this is happening. Does anyone have an idea as to where to check or how to fix it?

Any ideas or leads are more than welcome as I'm now on my wits end with this issue.

Thanks a lot.

10 |10000 characters needed characters left characters exceeded
* Please Login or Register to Answer, Follow or Comment.

2 Answers

Best Answer
avatar image
Former Member Aug 07, 2017 at 03:42 AM
1

Hi Lutz,

Apologies for the late reply. Anyway, SAP has come back on this and verified that this is an issue related to the temp fix we had before for a bug (using parameter ce2qo_disable_unfolding). After update to the newer patch, the patch should have taken care of the bug so the temp fix before should be turned off. After doing that, it worked without issues.

Regards,

Robert

Share
10 |10000 characters needed characters left characters exceeded
Lutz Rottmann May 12, 2017 at 01:58 PM
0

Hi Robert, just a quick guess:

Did you already try to properly urlencode your filter parameter? Your query string violates standards.

Instead of

https://<server>:<port>/OData_Services/<odata_name>/services.xsodata/Organizations?$filter=indexof(tolower(ORGNAME),'town') ge 0&$top=50

try

https://<server>:<port>/OData_Services/<odata_name>/services.xsodata/Organizations?$filter=indexof%28tolower%28ORGNAME%29%2C%27town%27%29%20ge%200&$top=50

Some HANA software component might stumble over ( or ' or spaces.

Cheers, Lutz

Share
10 |10000 characters needed characters left characters exceeded