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

企业网站_vb连接数据库_怎么申请

小七 141 0

最近,社区中提出了一个问题,即如何在不使用$的情况下在XS高级应用程序中使用secure store功能。安全。商店通过XSJS兼容层提供的API。在HANA 2.0 SPS02之前,还没有任何官方信息可用,尽管该功能已经是系统的一部分,但至少据我所知,还没有正式发布。通过SAP HANA Developer Guide for XS Advanced中的HANA 2.0 SPS03,应用程序安全章节得到了增强,大数据是数据,新增了SAP HANA Secure Store中的维护值子章节,增加了安全存储可由新程序使用的信息:

系统用户\安全存储\插入插入新条目SYS.USER\u SECURESTORE\u RETRIEVE系统用户获取安全的商店入口SYS.USER\u SECURESTORE\u删除删除一个安全的存储条目

因为此时的文档没有给我足够的信息(比如参数和它们的含义),而且示例是"just"for Java(也没有进一步描述任何细节),所以我在XS Advanced NodeJS中尝试了一点"new"过程SAP HANA Express Edition安装上的模块(基于HANA 2.0 SPS03)。

从文档中我们知道,我们必须调用过程来插入/检索/删除安全存储值。所以最好了解程序的接口。至少在目前的hana2.0sps03文档中,淘客模板,信息是缺失的,因为我认为这并不重要(你认识到了其中的讽刺)。从哪里可以找到这些信息。很好,存在一个至少显示技术细节的系统视图程序。切换到数据库资源管理器,连接到SystemDB,进行如下查询:

在结果定义栏中可以找到接口定义

系统用户\安全存储\插入

SYS.USER\u SECURESTORE\u RETRIEVE系统用户

SYS.USER\u SECURESTORE\u删除

我们现在知道了更多关于程序的细节,购物返利平台,我们将在XS Advanced的NodeJS模块中使用它们多目标应用。请考虑下面的代码只包含快速和肮脏的例子,所以代码结构/封装/错误处理/…不是重点。在实际应用中,您必须考虑到这一点,但您当然知道。

使用"securestore"计划创建HANA服务实例

为了能够使用安全存储,必须使用服务计划"securestore"创建"HANA"(或"managed HANA")服务实例。

使用新的XS Advanced Cockpit,这可以非常简单地完成方法是转到"hana"服务->实例->新实例。我创建了一个名为"securestore\u test-hana"的。此服务实例稍后将绑定到我们的NodeJS应用程序。

如果您想通过XS命令行工具创建服务,可以执行以下操作(确保位于正确的组织和空间):

创建NodeJS模块

下一步是使用来自的项目在SAP HANA的SAP Web IDE中创建多目标应用程序模板功能。在创建的MTA中添加了一个新的节点模块(我称之为node\u securestore\u test)。此节点模块将添加一个简单的express应用程序,其中包含与secure store交互的路由。

准备开发描述符文件(mta.yaml公司)

指向之前创建的hana securestore服务的资源"securestore\u test-db"需要作为资源添加到开发描述符文件中。此资源是NodeJS模块所需的。

对于测试,还创建了一个xsuaa服务实例"securestore\u test-uaa",作为资源添加,并作为NodeJS模块所需的资源添加。

准备服务器.js文件

在服务器.js文件(由NodeJS模块创建)创建一个express应用程序,hana securestore实例作为中间件添加到express应用程序,并启动HTTP服务器。将路由器文件夹中定义的secure store测试的路由发送到express应用程序,也添加了(细节在下一章中描述)。

准备插入/检索/删除安全存储条目的快速路由

在这一步中,描述了与安全存储交互的快速路由和端点逻辑。

首先创建一个文件夹"router"。在这个文件夹中有一个文件"索引.js"使用以下描述可用路由的内容创建。在"内部"服务器.js"文件(见上文)该文件由"路由设置"步骤使用。

路由器实现提供以下路由:

/createSecureStoreEntry创建安全存储条目/retrievesecurerestore尝试检索创建的安全存储条目/deleteSecureStoreEntry删除创建的安全存储条目

从上面的路由器编码中可以看出,路由实现是在新文件夹"routes"(在"router"文件夹中创建的)。

创建安全存储条目

在文件"cr"中安全商店入口.js与模块"@sap/hdbext"的过程"SYS"加载并执行"USER\u SECURESTORE\u INSERT"。当使用存储名称"TEST\u store"时,使用的键是"TEST\u VALUE",企业信息化管理软件,值本身是转换为二进制的伪字符串。

检索安全存储条目

检索"TEST\u store"中创建的值,键是"TEST\u VALUE"过程"SYS"。使用"USER\u SECURESTORE\u RETRIEVE"。以二进制形式存储的值被转换回字符串值用于输出。

删除安全存储项

删除存储中的安全存储项"TEST\u store",键为"TEST\u value",过程为"SYS"。"USER\u SECURESTORE\u DELETE"的调用方式与其他过程相同。

编译并运行NodeJS应用程序

编码后部分完成后,可以构建MTA并执行NodeJS应用程序/模块。

在这种情况下,NodeJS应用程序正在端口51026上运行。

执行/createSecureStoreEntry会导致以下结果:

再次执行相同的路由会导致错误,由于密钥重复:

让我们通过route/retrievesecurerestoreentry:

检索secure store条目,最后使用route/deleteSecureStoreEntry:

删除它,我希望这一进一步的见解会有所帮助,大数据学什么,直到文档得到改进。

代码示例可以在Github找到。