DB2数据库和功能可以由两个不同的安全控制模式进行管理:
验证是确认,在仅根据权限的用户日志来执行他被授权执行的活动的过程中。用户认证可以在操作系统级别或数据库级别本身进行。通过身份验证的工具生物识别技术,如视网膜和数字印刷都在使用,以防止黑客或恶意用户的数据库。
数据库安全可以从DB2数据库系统之外进行管理。这里有一些类型的安全认证过程:
对于DB2,安全服务是操作系统作为一个单独的产品的一部分。对于身份验证,它需要两个不同的凭据,这些都是用户ID或用户名和密码。
可以访问DB2数据库系统,这是由在DB2数据库管理器管理内的DB2数据库和它的功能性。授权是由DB2数据库管理器管理的过程。该管理器获得有关当前鉴定的用户,指示哪个数据库操作的用户可以执行或访问信息。
下面是可用于授权的权限的不同方法:
主要权限:直接授予的授权ID。
次级权限:授予给组和角色,如果用户是一个成员
公共权限:授予公开所有用户。
上下文相关的权限:授予到受信任上下文中的作用。
授权可以给基于以下类别的用户:
当局提供了实例级别的功能控制。管理局提供给组权限,控制维护和权威操作。例如,数据库和数据库对象。
有关部门提供的数据库中的控件。其他机构的数据库,包括LDAD和CONNECT。
DB2表和配置文件用于记录与授权名称关联的权限。当用户试图访问数据,记录的权限验证以下权限:
同时用SQL语句在工作中,DB2授权模型考虑了以下权限的组合:
让我们讨论一些实例有关受权。
它是在实例级的最高级别的管理权限。具有SYSADM权限的用户可以在实例中执行某些数据库和数据库管理器命令。具有SYSADM权限的用户可以执行以下操作:
它是在系统控制权限的最高水平。它提供了对数据库管理器实例及其数据库执行维护和实用操作。这些操作可以影响系统资源,但它们不允许直接访问数据库中的数据。
SYSCTRL权限的用户可以执行以下操作:
它是系统的控制权限的第二级。它提供了对数据库管理器实例及其数据库执行维护和实用操作。这些操作会影响系统资源,而不允许直接访问数据库中的数据。这个权限的目的是为用户维护一个包含敏感数据的数据库管理器实例中的数据库。
只有具有SYSMAINT或更高级别的系统受权的用户可以执行以下任务:
具有SYSMAINT用户可以执行以下任务:
有了这个权限,用户可以监控或采取数据库管理器实例或它的数据库的快照。 SYSMON权限使运行以下任务的用户:
每个数据库授权持有授权ID执行数据库的一些操作。这些数据库授权的权限不同。下面是一些数据库权限列表:
ACCESSCTRL: 允许授予和撤销所有对象特权和数据库权限。
BINDADD: 允许创建一个新包在数据库中。
CONNECT: 允许连接到数据库。
CREATETAB: 允许在数据库中创建新表。
CREATE_EXTERNAL_ROUTINE: 允许创建要使用的应用程序和数据库的用户的过程。
DATAACCESS: 允许用户访问存储在数据库表中的数据。
DBADM: 作为一个数据库管理员。它提供了除ACCESSCTRL,DATAACCESS和SECADM的所有其他数据库权限。
EXPLAIN: 可以解释的查询计划,而不需要他们持有的特权访问数据表。
IMPLICIT_SCHEMA: 允许用户通过使用CREATE语句创建一个对象隐式地创建一个模式。
LOAD: 允许将数据加载到表中。
QUIESCE_CONNECT: 允许访问该数据库,而它是静止(临时禁用)。
SECADM: 允许作为安全管理员的数据库。
SQLADM: 允许监视和调整SQL语句。
WLMADM: 允许充当工作负载管理员
授权标识特权包括对授权标识的行为。只有一个权限,称为SETSESSIONUSER特权。它可以授予用户或组,并允许会话用户身份切换到任何在其上的权限被授予的授权ID。此特权授予用户SECADM权限。
这种特权涉及对数据库的模式操作。该模式的所有者拥有所有操纵表,视图,索引,包,数据类型,函数,触发器,过程和别名的模式对象的权限。一个用户,一个组,一个角色或PUBLIC可以授予以下权限的用户:
这允许在模式中删除的对象。
这些权限涉及到对数据库表空间的操作。用户可被授予USE特权的表空间。该权限让他们在表空间中创建数据表。特权所有者可以授予USE特权具有与创建表空间时,表空间GRANT OPTION命令。SECADM或ACCESSCTRL机关有权对表空间使用特权的权限。
用户必须拥有对数据库的CONNECT权限可以使用表和视图权限。特权表和视图,如下所示:
它为表或视图,包括删除和授予提供的所有权限,撤销各个表权限给用户。
它允许用户修改的表。
它允许用户从表中或视图中删除行。
它允许用户将行插入表或视图。它也可以运行导入实用程序。
它允许用户创建和删除外键。
它允许用户从表中或视图中检索行。
它允许用户改变表或视图的条目。
用户必须具有连接权限数据库。包是包含数据库管理的信息来访问以最有效的方式为特定的应用程序数据的数据库对象。
它提供了重新绑定的权限,删除或执行包用户。此权限的用户被授予BIND 和 EXECUTE权限。
它允许用户绑定或重新绑定该程序包。
允许执行一个包。
此权限自动接收对索引CONTROL特权。
序列自动对序列的接收使用情况和ALTER权限。
它涉及的例程,如函数,过程,和一个数据库中的方法的操作。