2016-08-12 79 views
0

外部REST的Web服务,我们有一个要求,要消耗外部 RESTful网络从UI5应用服务。我们需要使用发布在网关中的ODATA服务开发完整的Fiori应用程序而不使用认证来自UI5/Fiori的应用

请帮我在认证外部Web服务。在考虑前端角色和后端角色时,这个要求是否可行?

如果您共享代码段用于执行/消费CRUD于外部服务操作从UI5应用包括认证这将是对我来说更有帮助。

问候

Phani Poorna

+0

您应该像使用其他REST服务一样进行身份验证。你的问题到底是什么? – Qualiture

+0

@Qualiture其实我们正在分析这个需求的阶段。只是想了解安全性和适用范围方面的要求的一致性和可行性。请分享您的观点 –

+0

@Qualiture其实我知道如何使用sap.ui.model.odata.Odata()类调用Odata服务。但不确定在UI5中对外部服务执行crud操作。如果您根据我的特定要求共享代码段或参考文档,对我而言会更有益。 –

回答

2

你正在寻找的认证是不是你应该建立到您的应用程序,但应该由你的应用程序上运行的基础设施来提供。您登录的ID提供者(例如R/3或Active Directory)应为您的浏览器提供必要的令牌或cookie。相应的子系统应该决定根据您携带的Cookie,代币或证书给予访问权限。

有点像这样:

enter image description here

许多菲奥里应用在相同的R/3环境为用户登录到运行。由于这是相同的系统,因此默认情况下它是可信的。这就是为什么你不需要付出太多努力就能从你的服务中获得体面的回应。但是,如果您想连接到外部系统,则必须安装一些IDP管道。这通常涉及诸如建立IDP与外部服务之间的信任等事情。

如前所述,授权不应该是你的应用程序的一部分,因此,在这个答案没有任何代码样本。我希望答案能够为您提供足够的指针来为您的特定情况找到解决方案。不过,这是一个棘手的话题,请阅读它(SCN和帮助部分有很多信息),如果有必要的话,不要害羞地向基础顾问寻求帮助。

另外,请不要踏进建立自己的认证缺陷(例如基本认证或OAuth的),因为它是在默认情况下是不安全的。原因是因为你的Javascript,包括嵌入式算法和令牌,任何人都可以访问应用程序。

+0

Upvoted因为你的第一个和最后一个段落的第一句 – Qualiture

+0

@Qualiture的:安全第一;) – jpenninkhof

+0

@jpenninkhof非常感谢您给我的服务电话和指导方针内概述。这非常有帮助。正如你所说的,许多运行在相同的R/3上。你的意思是说它的嵌入式部署权(网关安装在相同的后端系统上)。但在我们的情况下,它是一种中央部署方法。我们无法通过RFC与网关连接我们的后端。相反,我们可以主持Resftul服务。此外还支持基本身份验证和Oauth。请建议我提出一些技巧来开发此要求。这是一个一致的解决方案吗? –