云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

分布式数据库_邮政企业邮箱号_三重好礼

小七 141 0

应用程序编程接口(API)允许开发人员访问预定义的服务,同时隐藏这些服务的实现复杂性。近年来,随着越来越多的公司决定公开其数据和功能,api越来越流行。一方面,使合作伙伴和客户能够访问数据/功能是开发创新解决方案的关键驱动力。另一方面,它允许一个应用程序访问另一个应用程序的服务,这对于连接企业应用程序是必不可少的。

去年,SAP Analytics Cloud(SAC)已开始通过发布REST API开放对其数据的访问。上个月,URL API紧随其后。URL和restapi都已在API Hub上发布。restapi符合OpenAPI规范。

本文是SAC的URL-API和restapi的用户指南。在深入研究api本身之前,我们将讨论如何实现oauth2.0,让第三方应用程序访问SAC上受保护的资源。一旦第三方应用程序被授权,它就可以对SAC进行API调用。

本文的结构如下:

1。通过SAC

1.1中的OAuth 2.0进行用户授权。客户注册

1.2。授权码授予(三条腿)

1.2.1。登记详情

1.2.2。获取接入令牌

1.3。客户证书授予(双腿)

1.3.1。登记详情

1.3.2。SAML承载断言

2。SAC URL API

2.1。启用iFrame嵌入

2.2。编写URL

2.2.1。显示参数

2.2.2。过滤参数

2.2.3。可变参数

3。SAC REST API

SAC允许第三方应用程序使用授权协议oauth2.0访问其web服务。使用OAuth 2.0,我们可以在应用程序之间进行web服务调用,而无需交换用户凭据(参见标准RFC 6746)。

OAuth协议中涉及的四个实体是:

资源所有者:授予对受保护资源(可以是最终用户)的访问权。资源服务器:向客户端提供受保护的资源。客户端:请求受保护的资源。(请注意,web云服务器,此实体独立于其实现,即"客户端"也可以是服务器。)授权服务器:授权客户端并授予访问令牌。

转换到我们的上下文中,资源所有者是最终用户,资源服务器(服务提供商)是SAC,客户端是任何第三方应用程序(客户端或服务器端应用程序),授权服务器是我们的身份提供商(IdP)(默认为SAP云)平台身份认证服务)。

授权服务器下发两类令牌:访问令牌和刷新令牌。当访问令牌授予用户访问受保护资源的权限时,刷新令牌主要用于在当前访问令牌失效(例如,因为它已过期)时获取新的访问令牌。

下面,我们首先将第三方应用程序注册为OAuth客户端。此后,我们将看到如何从SAC中检索数据,实现原始的三条腿或两条腿的OAuth流。

1.1。客户端注册

拥有SAC租户的管理员权限,我们可以在管理页面的应用程序集成选项卡中注册OAuth客户端。我们通过点击≡(主菜单)->系统->管理导航到管理页面。

在应用程序集成选项卡(1)中,我们现在可以通过点击+添加新的OAuth客户端(2)注册新的OAuth客户端。

这将打开注册新OAuth客户端的对话框。在为我们的客户选择了名称(1)和ID(2)之后,我们指定了从授权服务器(3)获取令牌时要使用的授权方法。

目前有两种授权方法:授权代码授予和客户凭证授予。简言之,授权代码授权用于使用API的客户端应用程序,客户端凭据授权用于授权服务器端应用程序。

1.2。授权码授权(三条腿)

当应用程序代表最终用户发出API请求时,使用授权码授权。因此,这种授权类型需要与资源所有者交互,或者更确切地说是与最终用户交互。最终用户允许她(例如)移动或web应用程序访问服务提供商上的受保护资源,而服务提供商不知道她的用户凭据(参见RFC 6749)。

要实现授权码授予流,客户端需要注册为OAuth客户端(1.2.1)。注册详细信息)并从授权服务器(1.2.2)获取访问令牌。获取访问令牌)。

首先,我们将应用程序注册为OAuth客户端。我们在"授权授予"下选择授权码,并可选择定义授权码的生存期(1)。

指定机密是一种附加安全措施,可选择(2)。如果设置,我们的客户只有在知道秘密的情况下才能从授权服务器获取授权码。

在重定向URI下,我们指示授权服务器在成功授权后返回给客户的回调URL(3)。

客户能够从回调URL的查询字符串中解析授权码(例如。:8080/回拨?code=1234abcd-5678-e9fg-h123i-4567jkl8mnop)。

定义访问和刷新令牌的生存期也是可选的(4)。

有关配置的详细信息,请参阅配置OAuth 2.0授权码授予工作流和管理OAuth客户端。

下图描述了根据我们的上下文定制的授权码授予流程,并指导您实现它。如前所述,最终用户授权应用程序访问服务提供商(SP)上的受保护资源。因此,最终用户必须与IdP(授权服务器)进行交互。

请注意,SCP身份验证服务是可以更改的默认IdP。