用户管理和角色管理


技术数据库用户仅用于管理目的,例如在数据库中创建新对象、向其他用户、包、应用程序等分配权限。

SAP HANA 用户管理活动

根据业务需求和 HANA 系统的配置,可以使用 HANA studio 等用户管理工具执行不同的用户活动。

最常见的活动包括 -

  • 创建用户
  • 向用户授予角色
  • 定义和创建角色
  • 删除用户
  • 重置用户密码
  • 登录尝试失败次数过多后重新激活用户
  • 需要时停用用户

如何在HANA Studio中创建用户?

只有具有系统权限 ROLE ADMIN 的数据库用户才可以在 HANA studio 中创建用户和角色。要在 HANA studio 中创建用户和角色,请转到 HANA 管理员控制台。您将在系统视图中看到安全选项卡 -

创建用户

当您展开安全选项卡时,它会提供用户和角色选项。要创建新用户,请右键单击“用户”并转到“新用户”。将打开新窗口,您可以在其中定义用户和用户参数。

输入用户名(授权)并在身份验证字段中输入密码。应用密码,同时保存新用户的密码。您还可以选择创建受限用户。

指定的角色名称不得与现有用户或角色的名称相同。密码规则包括最小密码长度以及密码必须包含哪些字符类型(小写字符、大写字符、数字字符、特殊字符)的定义。

新用户

可以配置不同的授权方法,如 SAML、X509 证书、SAP 登录票证等。数据库中的用户可以通过不同的机制进行身份验证 -

使用密码的内部身份验证机制。

外部机制,例如 Kerberos、SAML、SAP 登录票证、SAP 断言票证或 X.509。

一次可以通过多种机制对用户进行身份验证。但是,任何时候只有一个 Kerberos 密码和一个主体名称有效。必须指定一种身份验证机制以允许用户连接并使用数据库实例。

它还提供了一个定义用户有效性的选项,您可以通过选择日期来提及有效性间隔。有效性规范是一个可选的用户参数。

默认情况下,随 SAP HANA 数据库一起提供的一些用户是:SYS、SYSTEM、_SYS_REPO、_SYS_STATISTICS。

完成此操作后,下一步是定义用户配置文件的权限。可以将不同类型的权限添加到用户配置文件中。

向用户授予角色

这用于将内置 SAP.HANA 角色添加到用户配置文件或添加在“角色”选项卡下创建的自定义角色。自定义角色允许您根据访问要求定义角色,并且您可以将这些角色直接添加到用户配置文件中。这样就无需每次为不同的访问类型记住对象并将对象添加到用户配置文件中。

向用户授予角色

PUBLIC - 这是通用角色,默认分配给所有数据库用户。此角色包含对系统视图的只读访问权限和某些过程的执行权限。这些角色不能被撤销。

民众

造型

它包含在 SAP HANA 工作室中使用信息建模器所需的所有权限。

系统权限

可以将不同类型的系统权限添加到用户配置文件中。要将系统权限添加到用户配置文件,请单击 + 号。

系统权限用于备份/恢复、用户管理、实例启动和停止等。

内容管理员

它包含与 MODELING 角色类似的权限,但此外该角色还可以将这些权限授予其他用户。它还包含使用导入对象的存储库权限。

内容管理员

数据管理

这是一种权限,是将对象中的数据添加到用户配置文件所需的。

数据管理

下面给出的是常见支持的系统权限 -

连接调试器

它授权调试由不同用户调用的过程调用。此外,还需要相应过程的DEBUG权限。

审计管理员

控制以下审核相关命令的执行 - CREATE AUDIT POLICY、DROP AUDIT POLICY 和 ALTER AUDIT POLICY 以及审核配置的更改。还允许访问 AUDIT_LOG 系统视图。

审计操作员

它授权执行以下命令 - ALTER SYSTEM CLEAR AUDIT LOG。还允许访问 AUDIT_LOG 系统视图。

备份管理员

它授权 BACKUP 和 RECOVERY 命令来定义和启动备份和恢复过程。

备份操作员

它授权 BACKUP 命令启动备份过程。

目录阅读

它授权用户对所有系统视图具有未经过滤的只读访问权限。通常,这些视图的内容是根据访问用户的权限进行过滤的。

创建架构

它授权使用 CREATE SCHEMA 命令创建数据库模式。默认情况下,每个用户拥有一个模式,拥有此权限的用户可以创建其他模式。

创建结构化特权

它授权创建结构化权限(分析权限)。只有分析权限的所有者才能进一步向其他用户或角色授予或撤销该权限。

凭证管理

它授权凭证命令 - CREATE/ALTER/DROP CREDENTIAL。

数据管理

它授权读取系统视图中的所有数据。它还允许在 SAP HANA 数据库中执行任何数据定义语言 (DDL) 命令

具有此权限的用户无法选择或更改他们没有访问权限的数据存储表,但他们可以删除表或修改表定义。

数据库管理员

它授权多数据库中与数据库相关的所有命令,例如CREATE、DROP、ALTER、RENAME、BACKUP、RECOVERY。

出口

它通过 EXPORT TABLE 命令授权数据库中的导出活动。

请注意,除了此权限之外,用户还需要对要导出的源表具有 SELECT 权限。

进口

它使用 IMPORT 命令授权数据库中的导入活动。

请注意,除了此权限之外,用户还需要对要导入的目标表具有 INSERT 权限。

文件管理

它授权更改系统设置。

许可证管理员

它授权 SET SYSTEM LICENSE 命令安装新许可证。

日志管理

它授权 ALTER SYSTEM LOGGING [ON|OFF] 命令启用或禁用日志刷新机制。

监控管理员

它授权事件的 ALTER SYSTEM 命令。

优化器管理员

它授权与 SQL PLAN CACHE 相关的 ALTER SYSTEM 命令和 ALTER SYSTEM UPDATE STATISTICS 命令,这会影响查询优化器的Behave。

资源管理

此权限授权有关系统资源的命令。例如,ALTER SYSTEM RECLAIM DATAVOLUME 和 ALTER SYSTEM RESET MONITORING VIEW。它还授权管理控制台中可用的许多命令。

角色管理员

此权限授权使用 CREATE ROLE 和 DROP ROLE 命令创建和删除角色。它还使用 GRANT 和 REVOKE 命令授权授予和撤销角色。

激活的角色,即其创建者是预定义用户_SYS_REPO的角色,不能被授予给其他角色或用户,也不能直接删除。即使具有 ROLE ADMIN 权限的用户也无法执行此操作。请检查有关激活对象的文档。

保存点管理

它使用 ALTER SYSTEM SAVEPOINT 命令授权执行保存点进程。

SAP HANA 数据库的组件可以创建新的系统权限。这些权限使用组件名称作为系统权限的第一个标识符,使用组件权限名称作为第二个标识符。

对象/SQL 权限

对象权限也称为 SQL 权限。这些权限用于允许对表、视图或模式的选择、插入、更新和删除等对象进行访问。

对象 SQL 权限

下面给出了可能的对象权限类型 -

  • 仅在运行时存在的数据库对象的对象权限

  • 在存储库中创建的激活对象的对象权限,例如计算视图

  • 包含在存储库中创建的激活对象的模式的对象权限,

  • 对象/SQL 权限是数据库对象上所有 DDL 和 DML 权限的集合。

下面给出的是常见支持的对象权限 -

HANA数据库中有多种数据库对象,因此并非所有权限都适用于所有类型的数据库对象。

多个数据对象

对象权限及其对数据库对象的适用性 -

对象权限及其适用性

分析权限

有时,要求同一视图中的数据不能被对该数据没有任何相关要求的其他用户访问。

分析权限用于限制对象级别对 HANA 信息视图的访问。我们可以在分析权限中应用行和列级别的安全性。

分析权限用于 -

  • 为特定值范围分配行级和列级安全性。
  • 为建模视图分配行级和列级安全性。
分析权限

套餐优惠

在 SAP HANA 存储库中,您可以为特定用户或角色设置包授权。包权限用于允许访问数据模型 - 分析或计算视图或存储库对象。分配给存储库包的所有权限也分配给所有子包。您还可以提及分配的用户权限是否可以传递给其他用户。

将包权限添加到用户配置文件的步骤 -

  • 单击 HANA studio 中“用户创建”下的“包权限”选项卡 → 选择“+”以添加一个或多个包。使用 Ctrl 键选择多个包。

  • 在“选择存储库包”对话框中,使用全部或部分包名称来找到您想要授权访问的存储库包。

  • 选择您想要授权访问的一个或多个存储库包,所选包将显示在“包权限”选项卡中。

套餐优惠

下面给出的是授予权限,用于存储库包来授权用户修改对象 -

  • REPO.READ - 对所选包和设计时对象(本机和导入)的读取访问

  • REPO.EDIT_NATIVE_OBJECTS - 修改包中对象的授权。

  • 可授予其他人- 如果您为此选择“是”,则允许将分配的用户授权传递给其他用户。

申请权限

用户配置文件中的应用程序权限用于定义访问 HANA XS 应用程序的授权。这可以分配给单个用户或用户组。应用程序权限还可用于为同一应用程序提供不同级别的访问权限,例如为数据库管理员提供高级功能,为普通用户提供只读访问权限。

申请权限

要在用户配置文件中定义应用程序特定权限或添加用户组,应使用以下权限 -

  • 应用程序权限文件 (.xsprivileges)
  • 应用程序访问文件 (.xsaccess)
  • 角色定义文件 (<RoleName>.hdbrole)