运行数据库权利报告

数据库权利报告提供数据库用户的最新快照及其必需的访问特权。 了解如何准备和运行这些报告,以验证并确保用户仅具有执行其职责所需的特权。

在开始之前

此任务要求从 Guardium 系统下载脚本,并在数据库服务器上运行这些脚本。 您需要标识用于访问 Guardium 系统以下载脚本的机器的 IP 地址。 该地址可以是在将脚本传输到数据库服务器之前下载这些脚本的单个工作站,也可以是数据库服务器本身。 如果已下载并运行漏洞评估的相关脚本,那么可以从步骤 5开始。

关于此任务

除了认证用户和限制对数据的基于角色的访问特权 (即使对于最有特权的数据库用户) 之外,还会定期执行权利复审: 验证并确保用户仅具有执行其职责所需的特权。 此过程称为数据库用户权限认证报告。

您可以使用 Guardium 预定义数据库权利 (特权) 报告来查看谁具有系统特权以及谁向其他用户和角色授予了这些特权。 对于跟踪对数据库访问权的更改的审计员而言,数据库权利报告很重要,为了确保不存在来自挥之不去的帐户或未授予的特权的安全漏洞。

数据库权利报告使用 Guardium ® 的 "定制域" 功能在所选数据库上的外部数据与预定义权利报告的内部数据之间创建链接。 许多数据源都有预定义的权限报告,包括: Oracle; MYSQL; Db2®; Sybase; Sybase IQ; Informix®; MS SQL 2000/2005/2008; Netezza®; Teradata; PostgreSQL; Db2 on z/OS。 对于 MS SQL Server 和 Oracle 数据库,您还可以使用 " 权限优化 " 来访问这些信息。 有关 DB 应享权利报告中域的完整说明,请参阅数据库应享权利。 (有关自定义域生成器、自定义查询生成器或自定义表生成器的更多信息,请参阅外部数据相关性

数据库权利报告需要访问数据库和特定数据库特权,类似于漏洞评估 (VA)。 这两者都由数据库本身所运行的脚本启用。 (这些脚本用于 VA 和权利报告。) 以这些特定于数据库的 SQL 脚本为指导,定义连接到数据库的数据库用户角色。 创建这些组或角色后,可将它们分配给任何需要运行评估的数据库用户。 可用的脚本如下所示:
  • gdmmonitor-db2.sql(对于 Db2)
  • create_CKADBVA_schema_tables_zOS.sql(对于 Db2 on zOS)
  • gdmmonitor-db2-zOS.sql(对于 Db2 on zOS)
  • gdmmonitor-mss.sql(对于 MS-SQL 2005 和更高版本)
  • gdmmonitor-mss.sql(对于 MS-SQL 2005 和更高版本)
  • gdmmonitor-mss-SA.sql(对于 MS-SQL)
  • gdmmonitor-mys.sql(对于 MySQL)
  • gdmmonitor-netezza.sql(对于 Netezza)
  • gdmmonitor-ora.sql(对于 Oracle)
  • gdmmonitor-ora-container.sql(对于 Oracle Container DB)
  • gdmmonitor-postgres.sql(对于 PostgreSQL)
  • gdmmonitor-syb.sql(对于 Sybase)
  • gdmmonitor-teradata.sql(对于 Teradata)
  • gdmmonitor-sybaseIQ.sql(对于 SybaseIQ)
  • Jconnect_SybaseIQ_requirement.txt(对于 SybaseIQ)
  • gdmmonitor-db2-IBMi.sql(对于 Db2 on iSeries)
  • gdmmonitor-Aster.sql(对于 Aster)
  • gdmmonitor-mongodb24.sql(对于 Mongodb 2.4)
  • gdmmonitor-mongodb26andAbove.sql(对于 Mongodb 2.6 和更高版本)
  • gdmmonitor-hive-Cloudera.sql(对于 Hive on Cloudera Hadoop 发行版)
  • gdmmonitor-Cloudera-Manager.sql(对于 Cloudera Manager)
  • gdmmonitor-DSE-Cassandra.sql(对于 DataStax Cassandra)
  • gdmmonitor-SAP-Hana.sql(对于 SAP Hana)
  • gdmmonitor-Apache-Cassandra.sql (对于 Apache Cassandra)
  • gdmmonitor-azure.sql (对于 SQL DB Azure)
  • gdmmonitor-Couchbase.sql (对于 Couchbase)
  • gdmmonitor-ifx.sql (对于 Informix)
  • gdmmonitor-mariaDB.sql (对于 MariaDB)
  • gdmmonitor-mongodb26-To-34.sql (对于 MongoDB V 2.6 到 3.4)
  • gdmmonitor-mongodb36andAbove.sql (对于 MongoDB V 3.6 及更高版本)
  • gdmmonitor-mss2000-only.sql (对于 MS SQL Server 2000)
  • gdmmonitor-Neo4j.sql (对于 Neo4j)
  • gdmmonitor-ora-autonomous.sql (对于 Oracle 自主)
  • gdmmonitor-ora-RDS.sql (对于 Oracle RDS)
  • gdmmonitor-PerconaMySQL.sql (对于 Percona MySQL)
  • gdmmonitor-postgres.sql(对于 PostgreSQL)
  • gdmmonitor-Redshift.sql (对于 Redshift)
  • gdmmonitor-Snowflake.sql (For ) Snowflake
  • gdmmonitor-syb.sql(对于 Sybase)
  • gdmmonitor-sybaseIQ.sql(对于 SybaseIQ)
  • gdmmonitor-teradata.sql(对于 Teradata)
要点: 在运行任何脚本之前,请确保阅读脚本头中的指示信息,并查看脚本执行的数据库操作。

过程

  1. 在 Guardium 系统上,使用 fileserver CLI 命令来启用文件服务器。
    例如,要在 1 小时内启用文件服务器并将脚本下载到 IP 地址为 10.0.0.1的系统,请使用以下命令:
    fileserver 10.0.0.1 3600
    成功启动后,输出类似于:
    
    Starting the file server...
    The file server is ready at https://guardium.host.com:8445
    The timeout has been set to 3600 seconds and it may timeout during the uploading.
    
    The upload will only be accessible from the IP you are logged in from: 10.0.0.1
    
    Press ENTER to stop the file server.
  2. 在下载脚本的机器上,使用 Web 浏览器访问文件服务器。
    例如,要访问运行于 https://guardium.host.com:8445 的 Guardium 系统上的脚本,请输入 URL :
    https://guardium.host.com:8445/log/debug-logs/gdmmonitor_scripts/
  3. 使用 Web 浏览器的右键单击 > 将链接另存为... 下载所需的脚本 操作或类似的函数。
    查看 README.txt 文件,以确定要用于特定数据库类型的正确脚本。
  4. 遵循文件头中的指示信息。
  5. 将数据源或数据库添加到设备。
  6. 为权限指定数据源(浏览至 Comply > Custom Reporting > Custom Table Builder。 选择权利的定制表列表。 单击 上载数据。 在 导入数据 菜单屏幕上向权利报告分配数据源。 完成后,单击 立即运行一次
  7. 要查看权利报告,请在“快速搜索”中输入报告名称。