• Oracle数据库的安全策略


     Oracle是关系型数据库管理系统,它功能强大、性能卓越,在当今大型数据库管理
    系统中占有重要地位。在我们开发的一MIS系统中,选用了Oracle7.3数据库。在正常情况下,
    Oracle数据库会保证数据的安全、稳定,为用户提供正确的数据,但由于计算机系统的故障(
    硬件故障、软件故障、网络故障和系统故障)影响数据库系统的操作,影响数据库中数据的正
    确性,甚至破坏数据库,使数据库中全部或部分数据丢失,整个系统都将处于瘫痪状态。因此
    ,如何保证Oracle数据库的安全就成为整个MIS系统安全的重要组成部分。
      Oracle数据库的安全策略包括数据库的备份和恢复、用户角色管理。
      一、数据库备份所使用的结构
      Oracle数据库使用几种结构来保护数据:数据库后备、日志、回滚段和控制文件。
      1.数据库后备是由构成Oracle数据库的物理文件的操作系统后备所组成。当介质故
    障时进行数据库恢复,利用后备文件恢复毁坏的数据文件或控制文件。
      2.每一个Oracle数据库实例都提供日志,记录数据库中所作的全部修改。每一个运
    行的Oracle数据库实例相应地有一个在线日志,它与Oracle后台进程LGWR一起工作,立即记录
    该实例所作的全部修改。归档(离线)日志是可选择的,一个Oracle数据库实例一旦在线日志
    填满后,可形成在线日志归档文件。归档的在线日志文件被唯一标识并合并成归档日志。
      3.回滚段用于存储正在进行的事务(为未提交的事务)所修改值的老值,该信息在
    数据库恢复过程中用于撤消任何非提交的修改。
      4.控制文件,一般用于存储数据库的物理结构的状态。控制文件中某些状态信息在
      二、在线日志
      一个Oracle数据库的每一实例有一个相关联的在线日志。一个在线日志由多个在线
    日志文件组成。在线日志文件(online redo log file)填入日志项(redo entry),日志项
    记录的数据用于重构对数据库所作的全部修改。
      三、归档日志
      Oracle要将填满的在线日志文件组归档时,则要建立归档日志(archived redo
      1.数据库后备以及在线和归档日志文件,在操作系统和磁盘故障中可保证全部提交
      2.在数据库打开和正常系统使用下,如果归档日志是永久保存,在线后备可以进行
      数据库可运行在两种不同方式下:NOARCHIVELOG方式或ARCHIVELOG 方式。数据库
    在NOARCHIVELOG方式下使用时,不能进行在线日志的归档。如果数据库在ARCHIVELOG方式下运
      四、Oracle的备份特性
      Oracle备份包括逻辑备份和物理备份。
      1.逻辑备份
      数据库的逻辑备份包含读一个数据库记录集和将记录集写入文件。
      (1)输出(Export)输出可以是整个数据库、指定用户或指定表。
      (2)输入(Import)输入将输出建立的二进制转储文件读入并执行其命令。
      2.物理备份
      物理备份包含拷贝构成数据库的文件而不管其逻辑内容。
      Oracle支持两种不同类型的物理文件备份:脱机备份(offline backup)和联机备
      (1) 脱机备份
      脱机备份用在当数据库已正常关闭,数据库处于"offline"时,要备份下列文件:
      所有数据文件
      所有控制文件
      所有联机日志
      init.ora(可选的)
      (2) 联机备份
      联机备份可用来备份任何运作在ARCHIVELOG方式下的数据库。在这种方式下,联机
    日志被归档,在数据库内部建立一个所有作业的完整记录。
      联机备份过程具备强有力的功能。第一,提供了完全的时间点(point-in-time)
    恢复。第二,在文件系统备份时允许数据库保持打开状态。
      备份方式特性比较
      方式 类型 恢复特性
      Export 逻辑 可以将任何数据库对象恢复到输出时的状态
      Offline Backups 物理 可把数据库恢复到关闭的状态:若数据库运行在ARCHIVELOG方式
      Online Backups 物理 可把数据库恢复到任何时间点
      五、Oracle数据库的角色管理
      Oracle数据库系统在利用角色管理数据库安全性方面采取的基本措施有:
      通过验证用户名称和口令,防止非Oracle用户注册到Oracle数据库,对数据库进行非法存取
      授予用户一定的权限,限制用户操纵数据库的权力。
      授予用户对数据库实体的存取执行权限,阻止用户访问非授权数据。
      提供数据库实体存取审计机制,使数据库管理员可以监视数据库中数据的存取情况和系统
      采用视图机制,限制存取基表的行和列集合。
     
      MIS系统实例中Oracle数据库的安全策略
      由于Oracle数据库备份有三种方式,每种方式具有不同的恢复特性,因此应集成数
    据库与文件系统备份,集成逻辑备份和物理备份。
      一、备份策略
      1.在操作系统级,使用大容量磁盘阵列,通过磁盘映像技术使每一个数据库文件自动分
    布于每个物理磁盘。这样,当某个磁盘出现物理损坏时,操作系统会自动引发映像磁盘来取代
      由于我们使用的是双服务器,因此在另一服务器上保留一个备份数据库。备份数据库与正
    在使用的数据库具有相同的参数状态,这样在数据库故障中,只需作必须的最少恢复,最大限
      在多个不同的物理磁盘上保持多个控制文件的备份。控制文件在数据库恢复期间用于引导
    Oracle,因此保持多个控制文件的备份,可以确保在出现磁盘故障后,能有可用的控制文件用
      使数据库运行在ARCHIVELOG(归档)方式下,归档日志存放于另一映像的逻辑磁盘上。
      每晚进行一次联机备份操作,备份所有数据文件、所有归档日志文件、一个控制文件。
      每周进行一次输出(Export)操作。
      二、恢复策略
      1.实例失败
      从实例失败中恢复是自动进行的。实例失败一般是由服务器失败引起的,当数据库
    实例失败后,重新启动服务器,启动数据库,Oracle检查数据文件和联机日志文件,并把所有
      2.磁盘失败
      如果丢失的是控制文件,只要关闭数据库,从保留有控制文件的地方拷贝一份即可
      如果丢失的是数据文件,可用前一天晚上的联机备份进行恢复,步骤如下:
      1)从备份中把丢失的文件存在原来位置。
      2)加载数据库
      3)恢复数据库
      4)打开数据库
      3.错误删除或修改对象
      在这种情况下,一般希望能追溯返回到错误发生前的那个时间点上。这叫做时间点
      1)从当前数据库输出(Export),输入(Import)到备用数据库,使备用数据库与
      2)向前滚动备用数据库到错误发生前的那个时间点。
      3)从备用数据库输出受错误影响的逻辑对象。
      4)使用上一步产生的输出文件输入那些受影响的对象到当前数据库。
      三、用户角色管理
      1.对所有客户端按工作性质分类,分别授予不同的用户角色。
      2.对不同的用户角色,根据其使用的数据源,分别授予不同的数据库对象存取权限
      基于以上的安全策略,可以防止非法用户访问数据库,限制合法用户操纵数据库的
    权限;可以使数据库在故障发生后,不会丢失任何数据,并能使数据库迅速恢复到故障发生前
    的那一时间点上,最大限度的保证数据的安全和整个系统的连续运行。

  • 相关阅读:
    海岛争霸
    hihocoder 1089 最短路径·二:Floyd算法
    hihocoder1081 :最短路径·一
    [蓝桥杯][历届试题]蚂蚁感冒
    牛客网Wannafly挑战赛27 A: 灰魔法师
    hdu1875:畅通工程再续
    hdu1863:畅通工程
    hdu1879:继续畅通工程
    hdu1233:还是畅通工程
    洛谷 P1546 最短网络 Agri-Net
  • 原文地址:https://www.cnblogs.com/xiaotaoliang/p/109509.html
Copyright © 2020-2023  润新知