DB2数据库安全性全面介绍

简介

我们面对的这个问题是:数据库安全性话题还没有象测定最短宕机时间世界记录和报告那么引人瞩目。您是在什么时候最后一次读到有关安全令牌和加密的睿智文章的呢?但正如去年大肆宣传的从一些电子商务企业中盗窃信用卡号码的事件所表明的,安全性缺口的确引人瞩目 — 而且能削弱顾客的信心。即便安全性不是最令人激动的主题,对于任何使用数据库管理系统的企业来说,它也是重要顾虑。同时,随着越来越多的企业参与电子空间,把私有数据从公共数据中分离变得尤为重要。

如想获得更多关于 DB2 UDB 安全特性的信息,请参阅 DB2 Administration Guide。

任何给定的公司的数据库系统可能要收集、存储和分析成千上万行信息,这些信息本质上有公共的,也有私有的。由于有这项责任在身,数据库必须使数据库管理员能适当的授权和限制访问。此外,数据库还必须提供防止未授权用户存取机密数据的方法。

但是有时候,数据库安全信息难以获得或理解。尽管您常听说 DB2 通用数据库(DB2 Universal Database,UDB)是多么可扩展、多么健壮,但您多久才会听到一次有关 DB2 的安全特性的细节呢?

因为保护数据库安全是 DBA 最重要的职责之一,所以您不应当试图通过反复试验来学习数据库安全性。保护您的数据库安全涉及:

防止任何人在企业无需知道的情况下对机密数据进行未授权的存取

防止未授权用户恶意删除进行破坏或擅自改变数据

采用审核技术监视用户存取数据

本文中,我将带您浏览 Windows、Unix 和 OS/2 版本的 DB2 UDB v.7.1 中的安全特性,并描述一些可以帮助您最大化安全性的内部控制。

验证

数据库安全性中最基本的概念之一就是验证,这是一个相当简单的过程,系统通过这个过程来证实用户身份。用户可以通过提供身份证明或验证令牌来响应验证请求。

很可能您已经熟悉这个概念了。如果您曾经被要求出示带照片的 ID(例如,在银行新开帐户时),那么已经有人向您提出过验证请求了。您出示了驾驶执照(或其它带照片的 ID)从而证明自己的身份。在这种情况下,您的驾驶执照就充当了验证令牌。

图 1. DB2 授权角色

不管您在电影里看到些什么,大部分软件程序不能把未来系统(比如面部识别)用于验证。相反,大多数验证请求要求您提供用户标识和密码。您的用户标识表示您声称自己是被授权可访问该环境的人,密码则将提供您个人的验证证据。当然,这种验证假定您的密码受到很好的保护,而且您是唯一一个知道这个密码的人。

用户验证由 DB2 之外的安全性工具完成,这个工具通常是操作系统的一部分或独立产品。事实上,安全性不仅是数据库问题;操作系统厂商也要花费很多的时间、金钱和心思确保他们的产品是安全的。但是,包括 Microsoft Windows 95 和 98 在内的一些操作系统并没有本地安全机制。如果您使用的是没有安全机制的操作系统,那您可以把环境配置成依靠在更安全的系统上运行的 DB2 服务器来提供这种安全性。例如,您可以使用可靠的客户端选项,我将在文章的后面部分更多的讨论这些选项。(如想获得更多信息,请参阅 DB2 Administration Guide。)

您也可以使用第三方产品(如由 Open Group 定义的分布式计算环境安全服务(Distributed Computing Environment(DCE)Security Services)来给您的环境添加一层安全层。DB2 可以协调这些外部安全工作与其安全主动性来保护事务或分析环境。

一旦用户身份验证成功,DB2 记下用户的身份标识和其它相关的安全信息,如用户组列表。用户必须使用 SQL 授权名(authorization name)或授权标识(authid)以被 DB2 识别,授权名或授权标识可以与用户标识或映射值相同。这一连接信息将在用户连接期间保留。

时间: 2024-10-03 23:14:08

DB2数据库安全性全面介绍的相关文章

DB2 UDB 安全性插件概述

安全性插件是动态可装载库,当 DB2 UDB 进行身份验证或者从组成员中 查找某 个用户的时候,便调用这些库.在 8.2 版之前,这些操作是由 DB2 UDB 之外的设施管理的, 例如操作系统.域管理器或 Kerberos 安全性系统.图 1 提供的场景说明了在 8.2 版之前 DB2 UDB 安全性的工作原理.下一节将描述 8.2 版中发生的变化.图 1. 安全性场景498)this.w idth=498;' onmousewheel = 'javascript:return big(this

DB2 UDB安全性:使用 GSS-API安全机制(SPKM/LIPKEY)的安全插件

简介 DB2 UDB 提供一种框架,用于编写定制的安全插件,管理员可使用这些插件进行 DB2 UDB 身份验证. 该框架是在 DB2 UDB V8.2 中引入的,也支持基于通用安全服务应用程序编程接口(Generic Security Service Application Programming Interface,GSS-API)的插件身份验证. 许多 DB2 UDB 管理员利用 GSS-API 插件进行基于 Kerberos 的身份验证.由于 NFS V4(Network File Sys

使用DB2 Cloning Tool克隆主机DB2数据库

对DB2数据库进行数据复制的方法多种多样,本文主要介绍了一种使用快速磁盘复制技术(例如,FlashCopy等)对DB2数据进行克隆的方案.通过使用DB2 Cloning Tool,最大程度简化DB2数据库克隆过程中DBA所需进行的操作.使整个流程更加自动化. 数据库管理员(DBA),或者DB2开发测试人员都能够从中获益,了解如何通过DB2 cloning tool快速简便的构建DB2测试环境.为应用程序的开发和测试提供有力的保障. 序言 主机平台上的 DB2 数据库是性能优异,运行稳定,使用广泛

企业IT管理必备 数据库审计基础介绍

本文讲的是企业IT管理必备 数据库审计基础介绍,随着信息化的深入和普及,各行各业对信息系统的依赖性越来越强,信息系统中的数据也逐渐成为了企业的生命.数据的不准确.不真实.不一致.重复杂乱等就会影响企业的健康.于是数据审计登上了历史舞台,数据是由信息系统中的数据库进行生成.保存和管理. 一.几个概念 1.什么是审计:信息系统审计来源于传统的财务审计,因此审计是独立于被审计单位的机构和人员,对被审计单位的财政.财务收支及其有关的经济活动的真实.合法和效益进行检查.评价.公证的一种监督活动. 2.什么

比较SQL Server与Oracle、DB2数据库的一些知识_数据库其它

开放性 SQL Server 只能在Windows 上运行,没有丝毫的开放性,操作系统的系统的稳定对数据库是十分重要的.Windows9X系列产品是偏重于桌面应用,NT server只适合中小型企业.而且Windows平台的可靠性,安全性和伸缩性是非常有限的.它不象Unix那样久经考验,尤其是在处理大数据量的关键业务时. Oracle 能在所有主流平台上运行(包括 Windows).完全支持所有的工业标准.采用完全开放策略.可以使客户选择最适合的解决方案.对开发商全力支持. DB2 能在所有主流

利用jdbc连接db2数据库

问题描述 利用jdbc连接db2数据库 数据库连接配置如下: jdbc.driver=com.ibm.db2.jcc.DB2Driver jdbc.url=jdbc:db2://localhost:50000/finical jdbc.username=db2admin jdbc.password=325314 报错如下: com.ibm.db2.jcc.b.DisconnectException: The application server rejected establishment of

jsp用jdbc连接db2数据库的方法

js|数据|数据库 数据库版本:db2 UDB v7.2服务器操作系统:aix4.3.3 1.关闭服务器上的web服务:2.停止jdbc侦听进程db2jd,db2jd一般启动的是6789的端口服务,   先用ps -ef | grep db2jd 查看到它的进程号   然后用kill -9 <进程号>  命令停止;3.在数据库服务器中,进入/usr/lpp/db2_07_01/java12目录,执行./usejdbc2以启用jdbc2:4.将/usr/lpp/db2_07_01/java12下

.Net开发DB2数据库相关应用程序比较

比较|程序|数据|数据库 简介 在.NET应用软件开发人员看来,使用DB2与使用其它任何其它关系数据库没有区别.人们可以看到无数使用SQL Server以及甲骨文公司产品执行数据库任务的例子,但关于使用包括.NET在内的微软公司技术访问DB2数据库的文档就远没有那么多了. 目前,开发人员可以使用不同的访问技术通过编程的方式将.NET客户端连接到DB2上,这些代码从根本上来说是基本相同的,但仍然存在一些我们需要考虑的有趣的限制. DB2架构慨览 DB2数据库引擎的基本元素是数据库对象.系统目录.目

JSP如何连接DB2数据库

js|数据|数据库 JSP与DB2数据库连结的问题网上有很多资料,但笔者发现大部分资料均有误,无法真正处理与DB2连结的问题,笔者经过研究解决了这个问题,现将我的一点心得发表出来,与君共享. <%@ page session="false" %><%@ page import="java.sql.*"%><%@ page import="java.util.*"%> <html><head&g