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

数据库服务器_分布式对象存储系统_返现

小七 141 0

本博客是一系列教程的一部分,详细介绍了SAP云平台后端服务的使用情况。

在本教程中,我们将采取另一个步骤来创建专业应用程序。我们将编写和配置一个小场景,使用后端服务作为后端。主要学习:如何配置和使用"令牌交换"类型的目的地

快速链接:目的地应用程序.js所有项目文件

目标

我们希望使用后端服务新使用目标身份验证类型"令牌交换"我们需要一个使用后端服务的节点应用程序我们想有一个合适的处理用户登录新的我们要重用用户登录

解决方案

配置应用路由器来处理用户登录和转发访问令牌使用节点.js应用程序添加应用程序逻辑和重用令牌配置令牌交换目标以处理API终结点使用后端服务托管和访问数据

我们的场景如下:

注意:目前我们的场景不包含任何用户界面

详细流程:

我们的最终用户在浏览器中打开我们的应用路由器公开的URL我们的应用路由器需要通过xsuaa认证,因此,用户必须在XSUAA显示的登录屏幕中输入凭证之后,我们的应用路由器将呼叫委托给我们的节点.js应用程序,转发访问令牌我们的节点.js应用程序存储令牌并将其发送到目标服务目标服务连接到XSUAA实例,以处理授权目标服务读取请求的目标配置并发送详细信息此外,目的地配置为处理OAuth令牌所以它发送一个有效的令牌来访问后端服务API我们的节点.js应用程序使用此令牌在后端服务中调用我们的API,这需要令牌最后,我们的API返回数据,返回到最终用户的浏览器

概述:

实现场景需要以下步骤:

配置创建授权和信任管理服务(XSUAA)的服务实例创建目标服务的服务实例在后台服务

开发中创建指向API URL的目的地配置在后端服务中创建API(无编码)创建应用程序路由器应用程序(无编码)创建节点.js应用(少量节点.js编码)

测试调用应用程序路由器端点并从后端服务API查看有效负载

前提条件

了解后端服务并准备好API以供使用了解应用程序路由器了解目的地服务可选:节点.js安装在您的机器上

准备

在这个博客中我们部署了2个应用程序,因此我们需要一种"项目结构"在我们的文件系统上

项目结构

我们有一个主要的项目文件夹:场景在这里,我们存储了2个配置文件,返利宝,这些配置文件在运行时不是应用程序所需要的项目文件夹包含2个子文件夹,用于我们独立部署的2个应用程序每个子文件夹都包含一个清单.yml文件和appfolder目录每个appfolder都包含一个包.json文件(两个应用程序都是节点应用程序)此外,approver的appfolder包含一个xs-应用程序.json文件,配置应用路由器

根据以下树创建文件和文件夹

C:\场景目的地.propertiesxs型-安全.jsonC: \方案\批准人清单.ymlC: \方案\批准人\应用文件夹包.jsonxs型-应用程序.jsonC: \方案\客户端清单.ymlC: \方案\clientapp\appfolder包.json应用程序.js

1在后端服务中创建API

请看这里

2创建XSUAA服务实例

对于我们的场景,我们需要一个新的XSUAA服务实例它将被绑定到应用程序路由器,供用户登录,以及我们的节点.js应用程序目标服务也会使用它。

XSUAA实例需要配置作用域:目标服务需要uaa.user用户范围后端服务需要access token和AllAccess scope

目标服务和后端服务都会检查接收到的JWT token中是否包含所需的scope

因此,在创建XSUAA服务实例时,需要定义所需的scope:

需要将租户模式设置为"专用",否则服务计划"应用程序"的默认值为"共享",这将导致一些问题

现在创建服务实例:选择"应用程序"作为服务计划指向xs-安全.json配置参数的文件(或复制和粘贴内容)保存名为"XsuaaForScenario"的实例

xs的内容请参见附录部分-安全.json文件,在创建XSUAA服务实例时使用

需要更多详细信息吗?请看这里

3创建应用程序路由器应用程序

我们使用应用程序路由器有一个进入我们的场景的入口点,添加身份验证和授权

xs-应用程序.json

我们将应用路由器部署配置为需要通过XSUAA进行身份验证

此设置将导致在用户打开路由时显示登录屏幕,并且还应检查用户是否具有调用后端服务API所需的角色

我们的应用路由器公开作为根URL的端点:

有关完整的textx,请参阅附录部分-应用程序.json文件内容

清单.yml

在manifest中,我们定义了对我们在上面创建的XSUAA服务实例的依赖关系

此外,我们还定义了一个指向我们服务的端点的目的地节点.js应用程序(我们稍后会部署它,但我知道URL已经……

重要:我们声明由App Router处理的访问令牌应转发到目的地