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

免备案CDN_江苏网站建设培训_测评

小七 141 0

实践教程

在本系列博客中,我们将探讨在SAP云平台、云铸造环境中使用XSUAA进行身份验证和授权。

在本博客中,我们将介绍如何在业务逻辑中执行授权检查。为此,我们将

在XSUAA服务| xs的安全描述符文件中定义作用域和角色模板-安全.json.将body parser包添加到approuter以从httppost解析JSON。将XSUAA容器安全API方法添加到我们的业务逻辑应用程序中,以执行授权检查。创建一个角色集合,使用SAP Cloud Platform cockpit添加角色和添加用户。

在本系列的第七个视频中,我们将探讨使用XSUAA服务进行授权,并对服务应用程序的业务逻辑和前端应用程序路由器进行一些代码更改。

与之前一样,我们继续使用SAP云平台文档中的(稍加修改)示例代码:

授权签入节点.js应用Python应用程序中的授权检查

您可以从存储库下载示例代码

github.com/dvankempen/XSUAA

有关SAP云平台试用环境、Cloud Foundry构建包、依赖项声明、属性、Diego单元等的更多详细信息,请参阅"附录"博客

平台内部

应用程序路由器

我们继续使用上一篇博客中配置的approuter,在那里我们安装了@sap/approuter包并在xs中定义了路由-应用程序.json到目前为止,我们使用了一个非常简单的主页(索引.html)对于web入口点在这个例子中,我们将做一些更详细的事情:查看和更新用户。

页面的主体包含一个链接来触发GET请求:/myapp/users(和以前一样)以及一个按钮和POST请求的输入框。

支持这一点所需的JavaScript在标题。在发送邮件之前,我们需要先获取一个CSRF令牌。这就是为什么addUser函数在fetchCsrfToken中调用addNewUser,我们需要比之前在主页上多一些代码learn.jquery.com/ajax网站有关jQuery和AJAX的更多信息。令牌见跨站点请求伪造

XSUAA服务实例

以前创建XSUAA服务实例时,只提供租户模式为专用的业务逻辑应用名称

XSUAA服务实例(以前的博客)

授权检查,现在增加

两个范围(显示、更新)两个角色模板(查看器、管理器)两个角色集合(查看器、管理器)

部署应用程序后,我们需要将这些角色集合分配给用户。作用域是业务逻辑应用程序中的引用。

要更新XSUAA服务实例,我们可以使用CLI或SAP Cloud Platform cockpit。

和以前一样,我们可以在线或以文件形式传递JSON。

如文档所述

cf update service

或者,转到您的Cloud Foundry空间中的服务实例,选择实例,选择更新,上传JSON文件或在线提供。

业务逻辑应用|节点.js

我们已经看到,对于授权用户,UI返回一个用户列表和一个添加用户的选项。大多数情况下,您可能会使用某种数据库来实现这一点,但为了使我们的示例保持简单,我们将使用一个文件。

要开始,请创建一个名为用户.json在业务逻辑应用程序中,

为了让我们的应用程序理解RESTAPI POST调用主体中传递的JSON,我们需要一个主体解析器。下面是中addNewUser(token)函数的代码索引.html其中名称转换为JSON字符串。

正文解析器已包含在express中,但我们可以安装它以将包更新为最新版本,并将其作为依赖项列在应用程序描述符文件中包.json.

如文件所述

正文解析器|npm

更新应用的业务逻辑,包括应用程序获取以及应用程序帖子与UI相对应的函数。根据安全描述符(xs)中的定义,对这两种方法都执行范围检查-安全.json).

非授权用户获得403应用程序获取返回用户.json文件。应用程序帖子向文件中添加一行。

容器安全API方法和属性(checkScope)如文档所示

的身份验证节点.js应用程序

应用程序部署

要部署应用程序,请运行cf push命令。除删除hdicontainer-1服务实例外,清单没有做任何更改,北京大数据研究院,因为在本例中我们没有使用SAP HANA云数据库

与之前一样,直接访问业务应用程序(myapp)返回HTTP 401未授权,访问approver/myapp URL将请求转发给身份提供商进行身份验证

与之前一样,当我们访问approver URL时,请求转发给身份提供商

登录后,主页(索引.html)的应用程序路由器显示,我们可以查看用户列表(文件)用户.json)或添加用户。

但未经授权,禁止访问。换言之,我们的帐户已被认证,全民淘客,但尚未授权(尚未)。

这是应用程序获取方法,如果在JWT中找不到所需的作用域,则返回禁止。

上述作用域、角色、角色模板和角色集合

,淘客群,我们使用安全描述符(xs)配置XSUAA服务-安全.json),它定义了两个作用域(Display和Update)和两个角色模板以及角色集合(Viewer和Manager)。