SAP HANA 安全:完整教程

什么是 Sap Hana Security?

SAP HANA Security 保护重要数据免遭未经授权的访问,并确保标准和合规性符合公司采用的安全标准。

SAP HANA 提供了一种功能,即多租户数据库,可以在单个服务器上创建多个数据库 SAP HANA 系统。它被称为多租户数据库容器。因此 SAP HANA 为所有多租户数据库容器提供所有安全相关的功能。

SAP HANA 提供以下与安全相关的功能 -

  • 用户和角色管理
  • 授权
  • 认证
  • 持久层数据加密
  • 网络层数据加密

SAP HANA 用户和角色

SAP HANA 用户和角色管理配置取决于以下架构 -

  1. 3层 Archi结构。

    SAP HANA 可用作 3 层中的关系数据库 Archi结构。

    在这种架构中,安全功能(授权、身份验证、加密和审计)安装在应用服务器层。

    SAP 应用程序(ERP、BW 等)只能在技术用户或数据库管理员(Basis Person)的帮助下才能连接到数据库。最终用户无法直接访问数据库或数据库服务器。

SAP HANA 3 层 Archi质地

  1. 2层 Archi结构。

    SAP HANA 扩展应用服务 (SAP HANA XS) 基于 2 层 Archi结构,其中应用服务器、Web服务器和开发环境嵌入在单个系统中。

SAP HANA 2 层 Archi质地

SAP HANA 身份验证

数据库用户标识谁正在访问 SAP HANA 数据库。它通过名为“身份验证”的过程进行验证。 SAP HANA 支持多种身份验证方法。单点登录 (SSO) 用于集成多种身份验证方法。

SAP HANA 支持以下身份验证方法 -

  • Kerberos: 它可以在以下情况下使用 -
  • 直接从 JDBC 和 ODBC 客户端 (SAP HANA 工作室).
  • 当使用 HTTP 访问 SAP 花 XS。

  • 用户名密码 当用户输入数据库用户名和密码时, SAP HANA 数据库对用户进行身份验证。

  • 安全断言标记语言 (SAML)

    安全反洗钱 可用于验证 SAP HANA 用户,正在访问 SAP HANA 数据库直接通过 ODBC/JDBC。这是一个将外部用户身份映射到内部数据库用户的过程,因此用户可以使用外部用户 ID 登录 sap 数据库。

  • SAP 登录和断言票证

    用户可以通过登录或断言票证进行身份验证,该票证是配置并颁发给用户以创建票证的。

  • X.509 客户端证书

    在规划婴儿食品行业的工艺要求时,安全性和可靠性是工艺设计中最重要的方面。 SAP HANA XS 通过 HTTP 访问,可以使用由受信任的认证机构 (CA) 签名的客户端证书来验证用户身份。

SAP HANA 授权

SAP 当用户使用客户端接口(JDBC、ODBC 或 HTTP)访问 HANA 时,需要进行授权 SAP HANA 数据库。

根据提供给用户的授权,用户可以对数据库对象执行数据库操作。这种授权称为“特权”。

权限可以直接或间接(通过角色)授予用户。分配给用户的所有权限都合并为一个单元。

当用户尝试访问任何 SAP HANA数据库对象,HANA System通过用户角色对用户进行授权检查,并直接授予权限。

当发现请求的权限时,HANA 系统会跳过进一步的检查并授予对请求数据库对象的访问权限。

In SAP HANA 的以下权限包括:

权限类型 描述
系统特权 它控制正常的系统活动。系统权限主要用于 –

  • 在中创建和删除架构 SAP HANA 数据库
  • 管理用户和角色 SAP HANA 数据库
  • 监控和追踪 SAP HANA 数据库
  • 执行数据备份
  • 管理许可证
  • 管理版本
  • 管理审计
  • 导入和导出内容
  • 维护交货单位
对象权限 对象权限是 SQL 用于授权读取和修改数据库对象的权限。要访问数据库对象,用户需要对数据库对象或数据库对象所在的架构具有对象权限。对象权限可以授予目录对象(表、视图等)或非目录对象(开发对象)。
对象权限如下 -

  • 创造任何
  • 更新、插入、选择、删除、删除、修改、执行
  • 索引、触发器、调试、参考
分析权限 分析权限用于允许对以下数据进行读取访问 SAP HANA信息模型(属性视图、分析视图、计算视图)。

  • 此权限在查询处理期间进行评估。
  • 分析权限授予不同的用户访问不同部分的数据
  • 根据用户角色查看相同的信息。
  • 分析权限用于 SAP HANA 数据库提供行级数据

控制单个用户查看同一视图中的数据。

套餐特权 软件包权限用于授权对 SAP HANA 存储库。
应用程序权限 需要应用程序权限 SAP HANA 扩展应用服务 (SAP HANA XS 用于访问应用程序。

应用程序权限通过 _SYS_REPO 模式中的 GRANT_APPLICATION_PRIVILEGE 过程和 REVOKE_APPLICATION_PRIVILEGE 过程授予和撤销。

用户权限 这是一项 SQL 权限,可由用户授予自己的用户。ATTACH DEBUGGER 是可以授予用户的唯一权限。

SAP HANA 用户管理和角色管理

访问 SAP HANA 数据库需要用户。根据不同的安全策略,有两种类型的用户 SAP HANA 如下 –

  1. 技术用户 (DBA 用户) – 直接与 SAP 具有必要权限的 HANA 数据库。通常,这些用户不会从数据库中删除。

    创建这些用户是为了执行管理任务,例如创建对象并授予数据库对象或应用程序的权限。

    SAP HANA 数据库系统默认提供以下用户作为标准用户-

  • 系统
  • SYS
  • _SYS_REPO
  1. 数据库或真实用户: 每个想要处理 SAP HANA 数据库,需要数据库用户。数据库用户是实际在 HANA 数据库上工作的人。 SAP 花。

    数据库用户有两种类型:

用户类型 描述 角色分配
标准用户 该用户可在自己的架构中创建对象并读取系统视图中的数据。使用“CREATE USER”语句创建的标准用户。 PUBLIC 角色被分配用于读取系统视图。
受限用户 受限用户无法通过 SQL 控制台获得完整的 SQL 访问权限,而是使用“CREATE RESTRICTED USER”语句创建的。如果使用任何应用程序需要特权,则通过角色提供这些特权。

  • 受限用户无法创建数据库对象。
  • 受限用户无法查看数据库中的数据。
  • 受限用户仅通过 HTTP 连接到数据库。
  • 必须使用 SQL 语句启用客户端连接的 ODBC/JDBC 访问。
用户需要 RESTRICTED_USER_ODBC_ACCESS 或 RESTRICTED_USER_JDBC_ACCESS 角色才能完全访问 ODBC/JDBC 功能

SAP HANA 用户管理员有权访问以下活动 -

  1. 创建/删除用户。
  2. 定义并创建角色。
  3. 授予用户角色。
  4. 重置用户密码。
  5. 根据要求重新激活/停用用户。

1. 在中创建用户 SAP HANA- 只有具有 ROLE ADMIN 权限的数据库用户才能创建用户和角色 SAP 花。

步骤1) 在中创建新用户 SAP HANA Studio 转到安全选项卡,如下所示,并按照以下步骤操作;

  1. 前往安全节点。
  2. 选择用户(右键单击)->新用户。

在中创建用户 SAP HANA

步骤2) 出现用户创建屏幕。

  1. 输入用户名。
  2. 输入用户密码。
  3. 这些都是认证机制,默认使用用户名/密码进行认证。

在中创建用户 SAP HANA

点击部署在中创建用户 SAP HANA将创建按钮用户。

2. 定义并创建角色

角色是可授予其他用户或角色的权限的集合。角色包括数据库对象和应用程序的权限,具体取决于工作性质。

这是授予权限的标准机制。权限可以直接授予用户。有许多标准角色(例如 MODELLING、MONITORING 等)可用 SAP HANA 数据库。

我们可以使用标准角色作为创建自定义角色的模板。

角色可以包含以下权限 -

  • 管理和开发任务的系统权限(CATALOG READ、AUDIT ADMIN 等)
  • 数据库对象的对象权限(SELECT、INSERT、DELETE 等)
  • 分析权限 SAP HANA 信息视图
  • 存储库包的包权限(REPO.READ、REPO.EDIT_NATIVE_OBJECTS 等)
  • 应用程序权限 SAP HANA XS 应用程序。
  • 用户权限(用于程序调试)。

角色创建

步骤1) 在此步骤中,

  1. 进入安全节点 SAP HANA 系统。
  2. 选择角色节点(右键单击)并选择新建角色。

角色创建 SAP HANA

步骤2) 显示角色创建屏幕。

角色创建 SAP HANA

  1. 在新角色块下给出角色名称。
  2. 选择“授予角色”选项卡,然后单击“+”图标以添加标准角色或现有角色。
  3. 选择所需角色(例如建模、监控等)

步骤3) 在此步骤中,

  1. 选定的角色被添加到授予角色选项卡中。
  2. 可以通过选择系统权限、对象权限、分析权限、包权限等直接将权限分配给用户。
  3. 单击部署图标来创建角色。

角色创建 SAP HANA

如果您想将此角色分配给其他用户和角色,请勾选“可授予其他用户和角色”选项。

3. 授予用户角色

步骤1) 在此步骤中,我们将角色“MODELLING_VIEW”分配给另一个用户“ABHI_TEST”。

  1. 进入“安全”节点下的用户子节点并双击它。将显示用户窗口。
  2. 点击授予角色“+”图标。
  3. 将出现一个弹出窗口,搜索将分配给用户的角色名称。

授予用户角色 SAP HANA

步骤2) 此步骤中,将在角色下添加角色“MODELLING_VIEW”。

授予用户角色 SAP HANA

步骤3) 在此步骤中,

  1. 单击部署按钮。
  2. 显示消息“用户‘ABHI_TEST’已更改”。

授予用户角色

4. 重置用户密码

如果需要重置用户密码,则进入安全节点下的用户子节点,双击,弹出用户窗口。

步骤1) 在此步骤中,

  1. 输入新密码。
  2. 输入确认密码。

重置用户密码

步骤2) 在此步骤中,

  1. 单击部署按钮。
  2. 显示消息“用户‘ABHI_TEST’已更改”。

重置用户密码 SAP HANA

5. 重新激活/停用用户

进入“安全”节点下的用户子节点并双击它。将显示用户窗口。

有“停用用户”图标。点击它

重新激活/停用用户 SAP HANA

会出现一个确认信息“弹出”。点击“是”按钮。

重新激活/停用用户 SAP HANA

将显示一条消息“用户‘ABHI_TEST’已停用”。停用图标将更改为名称“激活用户”。现在我们可以从同一图标激活用户。

SAP HANA 许可证管理

需要许可证密钥才能使用 SAP HANA 数据库。可以使用 SAP HANA工作室, SAP HANA HDBSQL 命令行工具和 HANA SQL 查询编辑器。

SAP HANA 数据库支持两种类型的许可证密钥 -

  • 永久许可证密钥: 永久许可证密钥在到期日前有效。我们需要在到期前申请并应用许可证密钥。如果许可证密钥到期,则将自动安装临时许可证密钥,有效期为 28 天。
  • 临时许可证密钥: 这将自动安装新的 SAP HANA 数据库安装。有效期为 90 天,之后可以从申请永久密钥 SAP.

License管理授权

“许可证管理员” 许可证管理需要权限。

SAP HANA 审计

SAP HANA 审计功能允许您监视和记录在 SAP HANA 系统。在创建审计策略之前,应为系统激活此功能。

授权给 SAP HANA 审计

“审计管理员”所需的系统权限 SAP HANA 审计。

总结

在本教程中,我们学习了以下主题 -

  • SAP HANA 安全概述。
  • SAP HANA 身份验证的详细信息。
  • SAP HANA 授权详细信息。
  • SAP HANA 用户管理方法。
  • SAP HANA 角色管理方法
  • SAP HANA 许可证管理流程。
  • SAP HANA 角色审计流程。