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

轻量服务器_麻城网站建设_价格

小七 141 0

简介

SAP HANA中的角色是使用SAP HANA Studio定义的。在一个环境(开发)中定义的角色不能迁移到另一个环境。它们必须在其他环境(测试、生产等)中手动重新创建。如果所需的角色数量最少,则手动创建和维护角色是可行的。如果需要很多角色,那么在环境中跨多个服务器手动创建和维护它们是一个冗长且容易出错的过程。创建和维护HANA角色的最佳方法是使用设计时(基于脚本的)角色,而不管角色的数量如何。在本文中,我将逐步介绍使用脚本创建HANA角色的过程,这是我最近与客户接洽时使用的脚本。设计时角色脚本存储在扩展名为.hdbrole的文件中

注意:这篇文章是针对XS Classic的,也可以使用"基于Web的开发工作台"。

1。创建项目

登录您的SAP HANA系统/工作室。

打开SAP HANA开发透视图。此透视图将在左侧显示"项目资源管理器"、"存储库"和"系统"选项卡。

转到"文件""新建项目…"

在"选择向导"窗口中选择"常规项目",然后单击"下一步"。

输入项目名称(rolesdemo),然后单击"下一步"。

在"项目参考"窗口中,保留默认选择,然后单击"完成"。

将创建项目显示在项目浏览器选项卡中,如下所示。

2。在项目中创建文件夹

在项目下创建文件夹,如下所示。文件夹为角色提供了一个包结构。

Rolesdemo com mycompany安全常见角色。

3。定义角色

下一步是定义所需的角色。下表给出了我将创建的核心角色。以此为指导,其他角色也可以发展。领域特定语言(DSL)语法

使用DSL关键字定义设计时角色。下表总结了这些关键词。有关详细信息,请参阅角色域特定语言语法-SAP HANA Developer Guide For SAP HANA Studio.

5。创建设计时角色

下一步是使用领域特定语言开发设计时角色。如果还没有SAP HANA开发透视图,请切换到该透视图。我在HANA数据库中创建了一个名为ROLEDEMO的演示模式,免费自助建站软件,该模式将在设计时角色脚本中使用。您可以使用希望角色在其上操作的现有模式。

6。_SYS\u REPO on ROLEDEMO schema

授予权限–选择、插入、更新、删除、更改、删除、执行、触发、调试、索引和创建任何权限,给具有授予选项的SYS\u REPO用户。(\u SYS\u REPO用户必须对任何新架构至少具有具有具有授予选项的选择权限)。

7。角色SR\u ROLEDEMO\u FULL

具有此角色的用户可以创建任何数据库对象,并对ROLEDEMO架构中的数据具有读、写、更新访问权限。

SR prefix表示这是架构中的角色。全后缀表示该角色可以完全访问模式ROLEDEMO.

目录模式"ROLEDEMO":创建任意;目录模式"ROLEDEMO":选择、插入、更新、删除、更改、删除、执行、索引、触发、调试;

通过导航到文件新的其他数据库开发角色打开角色编辑器。在新角色窗口中,容器将是package/rolesdemo/com/mycompany/security/common/roles。输入角色名称为SR\u ROLEDEMO\u FULL,然后单击Finish

打开角色编辑器,代码为

Rolerolesdemo.com.mycompany公司.安全.公共.角色:SR_ROLEDEMO_FULL{

}

现在输入下面给出的两行代码(也在"代码"段落下面给出)并保存。

角色rolesdemo.com.mycompany公司.安全.公共.角色*SR\u ROLEDEMO\u满{

目录模式"ROLEDEMO":选择、插入、更新、删除、更改、删除、执行、索引、触发器、调试;}

进入项目浏览器。右键单击角色SR\u ROLEDEMO_满.hdbrole和验证。

验证应通过如下所示。

下一步是激活设计时角色SR\u ROLEDEMO\u FULL。为此,需要将一开始创建的项目"rolesdemo"添加到存储库中。在"项目资源管理器"选项卡中,右键单击"rolesdemo"包,选择"团队-共享项目"。在"共享项目"窗口中选择存储库工作区,新零售企业应用中心,选择存储库工作区。确保选中"将项目文件夹添加为子包"复选框,如下所示。

在"存储库"选项卡中,rolesdemo包应显示为如下图所示。

8。角色激活

右击角色SR\u ROLEDEMO_满.hdbrole. 从弹出菜单中选择"激活"将显示"激活存储库内容"窗口。几秒钟后,如果出现任何错误,它将被显示。否则,"激活存储库内容"窗口将关闭。成功激活的对象将被放置一个P。

激活后,导航到系统选项卡安全角色。激活的角色SR\u ROLEDEMO\u FULL必须列在那里。

9。测试设计时角色

在ROLEDEMO schema中使用下面的脚本创建测试表

创建列表"ROLEDEMO"。"DEMO1"("ID"INTEGER CS\INT,"名字"VARCHAR(50),"MI"VARCHAR(1),"姓氏"VARCHAR(50),"性别"VARCHAR(1),"DOB"DAYDATE CS\u DAYDATE)UNLOAD PRIORITY 5 AUTO MERGE

create user DT\u TEST\u user Password12345;

注意:需要create user right或HANA管理员帮助才能创建用户

以DT\u TEST\u user身份登录并用DT\u TEST\u user连接打开SQL编辑器。