第 九 章 : 数 据 库 安 全 性 对 数 据 库 安 全 的 威 胁 数 据 库 安 全 性 概 述 数 据 库 安 全 性 控 制 Oracle 数 据 库 数 据 安 全 性 控 制 介 绍 心 存 不 满 的 专 业 人 员 天 窗 无 意 损 坏 数 据 库 物 理 损 坏 火 灾, 水 灾 等 工 业 间 谍 数 据 复 制 受 保 护 数 据 非 法 访 问 黑 客 通 信 损 坏 蓄 意 破 坏 者 数 据 库 安 全 概 述 数 据 库 系 统 的 安 全 保 护 措 施 是 否 有 效 是 数 据 库 系 统 主 要 的 性 能 指 标 之 一 数 据 库 的 安 全 性 指 保 护 数 据 库, 防 止 因 用 户 非 法 使 用 数 据 库 所 造 成 的 数 据 泄 漏 更 改 或 破 坏 数 据 的 保 密 指 用 户 合 法 地 访 问 到 机 密 数 据 后 能 否 对 这 些 数 据 保 密 通 过 制 订 法 律 道 德 准 则 和 政 策 法 规 来 保 证 非 法 使 用 数 据 库 的 情 况 用 户 编 写 一 段 合 法 的 程 序 绕 过 DBMS 及 其 授 权 机 制, 通 过 操 作 系 统 直 接 存 取 修 改 或 备 份 数 据 库 中 的 数 据 直 接 或 编 写 应 用 程 序 执 行 非 授 权 操 作 通 过 多 次 合 法 查 询 数 据 库 从 中 推 导 出 一 些 保 密 数 据 例 如 : 某 数 据 库 应 用 系 统 禁 止 查 询 单 个 人 的 工 资, 但 允 许 查 任 意 一 组 人 的 平 均 工 资 用 户 甲 想 了 解 张 三 的 工 资 首 先 查 询 包 括 张 三 在 内 的 一 组 人 的 平 均 工 资 然 后 查 用 自 己 替 换 张 三 后 这 组 人 的 平 均 工 资 推 导 出 张 三 的 工 资 破 坏 安 全 性 的 行 为 可 能 是 无 意 的, 故 意 的, 恶 意 的 数 据 库 系 统 的 安 全 机 制 计 算 机 系 统 中 的 安 全 模 型 用 户 身 份 验 证 操 作 系 统 授 权 机 制 约 束 机 制 审 计 存 储 过 程 数 据 库 服 务 器 (RDBMS) 触 发 器 视 图 高 方 法 : 用 户 标 识 和 鉴 定 安 全 性 控 制 层 次 应 用 DBMS OS DB 存 取 控 制 审 计 视 图 操 作 系 统 安 全 保 护 密 码 存 储 低
数 据 库 安 全 性 控 制 的 常 用 方 法 用 户 标 识 和 鉴 定 (Identification & Authentication ) 系 统 提 供 的 最 外 层 安 全 保 护 措 施 存 取 控 制 访 问 权 限 通 过 视 图 调 整 授 权 定 义 可 向 用 户 授 权 数 据 库 特 定 部 分 的 用 户 视 图 审 计 追 踪 信 息, 重 现 导 致 数 据 库 现 有 状 况 的 一 系 列 事 件 密 码 存 储 使 用 加 密 技 术 保 护 机 密 数 据 用 户 标 识 与 鉴 定 基 本 方 法 系 统 提 供 一 定 的 方 式 让 用 户 标 识 自 己 的 名 字 或 身 份 ; 系 统 内 部 记 录 着 所 有 合 法 用 户 的 标 识 ; 每 次 用 户 要 求 进 入 系 统 时, 由 系 统 核 对 用 户 提 供 的 身 份 标 识 ; 通 过 鉴 定 后 才 提 供 机 器 使 用 权 用 户 标 识 和 鉴 定 可 以 重 复 多 次 用 户 标 识 与 鉴 定 用 户 标 识 和 鉴 定 让 用 户 标 识 自 己 的 名 字 或 身 份 的 方 法 用 户 名 / 口 令 简 单 易 行, 容 易 被 人 窃 取 每 个 用 户 预 先 约 定 好 一 个 计 算 过 程 或 者 函 数 系 统 提 供 一 个 随 机 数 用 户 根 据 自 己 预 先 约 定 的 计 算 过 程 或 者 函 数 进 行 计 算 系 统 根 据 用 户 计 算 结 果 是 否 正 确 鉴 定 用 户 身 份 SQL Server 提 供 两 种 不 同 的 方 法 来 验 证 用 户 进 入 服 务 器 用 户 可 以 根 据 自 己 的 网 络 配 置 决 定 使 用 其 中 一 种 Windows 验 证 NT 以 上 O.S.: 允 许 SQL Server 使 用 O.S. 的 用 户 名 和 口 令 SQL Server 验 证 用 户 传 给 服 务 器 的 登 录 信 息 与 系 统 表 syslogins 中 的 信 息 进 行 比 较 如 果 两 个 口 令 匹 配,SQL Server 允 许 用 户 访 问 服 务 器 如 果 不 匹 配,SQL Server 不 允 许 访 问, 并 且 用 户 会 从 服 务 器 上 收 到 一 个 出 错 信 息 用 户 标 识 和 鉴 定 用 户 标 识 和 鉴 定 服 务 器 登 录 标 识 管 理 sa 和 Administrator 是 系 统 在 安 装 时 创 建 的 分 别 用 于 SQL Server 混 合 验 证 模 式 和 Windows 验 证 模 式 的 系 统 登 录 名 如 果 用 户 想 创 建 新 的 登 录 名 或 删 除 已 有 的 登 录 名, 可 使 用 下 列 两 种 方 法 使 用 SQL Server 企 业 管 理 器 管 理 登 录 名 使 用 SQL Server 系 统 存 储 过 程 管 理 登 录 名 数 据 库 用 户 管 理 在 SQL Server 中, 登 录 对 象 和 用 户 对 象 是 SQL Server 进 行 权 限 管 理 的 两 种 不 同 的 对 象 登 录 对 象 : 服 务 器 方 的 一 个 实 体, 使 用 一 个 登 录 名 可 以 与 服 务 器 上 的 所 有 数 据 库 进 行 交 互 用 户 对 象 : 一 个 或 多 个 登 录 对 象 在 数 据 库 中 的 映 射, 可 以 对 用 户 对 象 进 行 授 权, 以 便 为 登 录 对 象 提 供 对 数 据 库 的 访 问 权 限, 一 个 登 录 名 可 以 被 授 权 访 问 多 个 数 据 库, 一 个 登 录 名 在 每 个 数 据 库 中 只 能 映 射 一 次
用 户 标 识 和 鉴 定 存 取 控 制 数 据 库 用 户 管 理 SQL Server 可 使 用 下 列 两 种 方 法 来 管 理 数 据 库 用 户 使 用 SQL Server 企 业 管 理 器 管 理 数 据 库 用 户 ; 使 用 SQL Server 系 统 存 储 过 程 sp_grantdbaccess 管 理 数 据 库 用 户 在 SQL Server 中 主 要 有 两 种 类 型 的 角 色 服 务 器 角 色 数 据 库 角 色 用 户 权 限 : 用 户 对 数 据 库 中 的 不 同 数 据 对 象 允 许 执 行 的 操 作 权 限 不 同 类 型 的 数 据 对 象 有 不 同 的 操 作 权 力 数 据 本 身 : 表 属 性 列 外 模 式, 模 式, 内 模 式 关 系 系 统 中 的 存 取 权 限 : 不 同 的 DBMS 具 体 实 现 方 法 是 存 在 一 些 差 别 的 DBMS 的 存 取 控 制 存 取 控 制 机 制 包 括 : 定 义 用 户 权 限, 该 定 义 被 存 放 到 数 据 字 典 中 合 法 权 限 检 查, 根 据 数 据 字 典 检 查 用 户 权 限 用 户 DBA 定 SQL: 义 Grant 存 Revoke 储 权 限 DBMS 数 据 字 典 用 户 SQL: 查 询 数 据 库 检 查 存 储 权 限 安 全 检 查 SQL 语 法 分 析 语 义 检 查 DAC 检 查 MAC 检 查 继 续 任 意 控 制 (DAC) 强 制 控 制 (MAC) 存 取 控 制 授 权 (Authorization) 谁 定 义? DBA 和 表 的 建 立 者 ( 即 表 的 属 主 ) 如 何 定 义? SQL 语 句 : GRANT - 将 对 指 定 操 作 对 象 的 指 定 操 作 权 限 授 予 指 定 的 用 户 REVOKE - 从 指 定 用 户 那 里 收 回 对 指 定 对 象 的 指 定 权 限 存 取 控 制 授 权 存 取 控 制 授 权 GRANT 语 句 的 一 般 格 式 : grant < 权 限 >[,< 权 限 >] [on < 对 象 类 型 > < 对 象 名 >] to < 用 户 >[,< 用 户 > ] [with grant option]; 例 子 : 把 查 询 Students 表 的 权 限 授 给 用 户 wang grant select on table Students to wang; 例 子 : 把 对 Students 和 SC 表 的 所 有 访 问 权 限 授 给 全 部 用 户 grant all priviliges on table Students, SC to public; DBA 把 在 数 据 库 SC 中 建 立 表 的 权 限 授 予 用 户 zhao grant createtab on database SC to zhao; with grant option 子 句 例 子 : 把 对 表 SC 的 查 询 权 限 修 改 成 绩 权 限 授 给 wang 和 zhang, 并 允 许 wang 和 zhang 将 该 权 限 授 予 他 人 grant select, update(grade) on table SC to wang, zhang with grant option; DBA 对 象 的 建 立 者 和 经 过 with grant option 授 权 的 用 户 可 以 把 他 们 对 该 对 象 具 有 的 操 作 权 限 授 予 其 它 的 合 法 用 户 USER1 USER2 USER3 USER4
操 作 权 限 用 户 权 限 对 象 对 象 类 型 操 作 权 限 属 性 列 TABLE SELECT,INSERT,UPDATE DELETE,ALL PRIVIEGES 视 图 TABLE SELECT,INSERT,UPDATE DELETE,ALL PRIVIEGES 基 本 表 TABLE SELECT,INSERT,UPDATE DELETE,ALTER, INDEX, ALL PRIVIEGES 数 据 库 DATABASE CREATETAB 建 表 (CREATETAB) 的 权 限 : 属 于 DBA DBA 授 予 --> 普 通 用 户 基 本 表 或 视 图 的 属 主 拥 有 对 该 表 或 视 图 的 一 切 操 作 权 限 接 受 权 限 的 用 户 一 个 或 多 个 具 体 用 户 PUBLIC( 全 体 用 户 ) 存 取 控 制 授 权 回 收 授 出 的 权 限 可 以 由 DBA 或 其 他 的 授 权 者 收 回 revoke < 权 限 >[,< 权 限 >] [on < 对 象 类 型 > < 对 象 名 >] from < 用 户 >[,< 用 户 > ] 例 子 : 把 用 户 wang 和 zhang 修 改 成 绩 的 权 限 收 回 revoke update(grade) on table SC from wang, zhang; 例 子 : 收 回 所 有 用 户 对 SC 表 的 查 询 授 权 revoke SELECT on TABLE SC from PUBLIC; 授 权 回 收 操 作 是 级 联 的 数 据 库 角 色 (Role) 如 果 要 给 成 千 上 万 个 雇 员 分 配 许 可, 将 面 临 很 大 的 管 理 难 题, 每 次 有 雇 员 到 来 或 者 离 开 时, 就 得 有 人 分 配 或 去 除 可 能 与 数 百 张 表 或 视 图 有 关 的 权 限 这 项 任 务 不 但 耗 时, 而 且 容 易 出 错 一 个 相 对 简 单 有 效 的 解 决 方 案 就 是 定 义 数 据 库 角 色 数 据 库 角 色 是 被 命 名 的 一 组 与 数 据 库 操 作 相 关 的 权 限, 即 一 组 相 关 权 限 的 集 合 可 以 为 一 组 具 有 相 同 权 限 的 用 户 创 建 一 个 角 色 使 用 角 色 来 管 理 数 据 库 权 限 可 以 简 化 授 权 的 过 程 USER1 USER2 USER3 USER4 授 权 管 理 属 于 任 意 控 制 DBA 授 权 授 权 Role 用 户 用 户 用 户 用 户 强 制 控 制 任 意 访 问 控 制 是 关 系 数 据 库 的 传 统 方 法, 可 对 数 据 库 提 供 充 分 保 护, 但 它 不 支 持 随 数 据 库 各 部 分 的 机 密 性 而 变 化, 技 术 高 超 的 专 业 人 员 可 能 突 破 该 保 护 机 制 获 得 未 授 权 访 问 另 外, 由 于 用 户 对 数 据 的 存 取 权 限 是 自 主 的, 用 户 可 以 自 由 地 决 定 将 数 据 的 存 取 权 限 授 予 何 人 决 定 是 否 也 将 授 权 的 权 限 授 予 别 人 在 这 种 授 权 机 制 下, 仍 可 能 存 在 数 据 的 无 意 泄 露
强 制 控 制 强 制 控 制 强 制 访 问 控 制 克 服 了 任 意 访 问 控 制 的 缺 点 在 强 制 访 问 控 制 方 法 中, 不 能 由 一 个 用 户 不 加 控 制 地 将 访 问 权 限 授 予 或 传 递 给 另 一 用 户 强 制 访 问 控 制 方 法 是 指 系 统 为 了 保 证 更 高 程 度 的 安 全 性, 它 不 是 用 户 能 直 接 感 知 或 进 行 控 制 的 强 制 访 问 控 制 主 要 适 用 于 对 数 据 有 严 格 要 求 而 固 定 密 级 分 类 的 部 门, 如 军 事 部 门 或 政 府 部 门 强 制 访 问 控 制 模 型 基 于 与 每 个 数 据 项 和 每 个 用 户 关 联 的 安 全 性 标 识 (Security Label) 安 全 性 标 识 被 分 为 若 干 级 别 绝 密 (Top Secret) 机 密 (Secret) 秘 密 (Confidential) 一 般 (Public) 数 据 的 标 识 称 为 密 级 (Security Classification) 用 户 的 标 识 称 为 许 可 证 级 别 (Security Clearance) 强 制 控 制 视 图 机 制 当 某 一 用 户 以 某 一 密 级 进 入 系 统 时, 在 确 定 该 用 户 能 否 访 问 系 统 上 的 数 据 时 应 遵 守 如 下 规 则 (1) 当 且 仅 当 用 户 许 可 证 级 别 大 于 等 于 数 据 的 密 级 时, 该 用 户 才 能 对 该 数 据 进 行 读 操 作 (2) 当 且 仅 当 用 户 的 许 可 证 级 别 小 于 或 等 于 数 据 的 密 级 时, 该 用 户 才 能 对 该 数 据 进 行 写 操 作 视 图 机 制 把 要 保 密 的 数 据 对 无 权 存 取 这 些 数 据 的 用 户 隐 藏 起 来, 从 而 自 动 地 对 数 据 提 供 一 定 程 度 的 安 全 保 护 视 图 机 制 更 主 要 的 功 能 在 于 提 供 数 据 独 立 性, 其 安 全 保 护 功 能 太 不 精 细, 往 往 远 不 能 达 到 应 用 系 统 的 要 求 视 图 机 制 视 图 机 制 在 实 际 应 用 中 通 常 是 视 图 机 制 与 授 权 机 制 配 合 使 用, 首 先 用 视 图 机 制 屏 蔽 掉 一 部 分 保 密 数 据, 然 后 在 视 图 上 面 再 进 一 步 定 义 存 取 权 限 这 时 视 图 机 制 实 际 上 间 接 实 现 了 支 持 存 取 谓 词 的 用 户 权 限 定 义 例 如 :USER1 只 能 检 索 计 算 机 系 学 生 的 信 息 (1) 先 建 立 计 算 机 系 学 生 的 视 图 CS_Student CREATE VIEW CS_Student AS SELECT FROM Student WHERE Sdept= CS ; (2) 在 视 图 上 进 一 步 定 义 存 取 权 限 GRANT SELECT ON CS_Student TO USER1;
审 计 审 计 审 计 功 能 启 用 一 个 专 用 的 审 计 日 志 (Audit Log), 系 统 自 动 将 用 户 对 数 据 库 的 所 有 操 作 记 录 在 上 面 DBA 可 以 利 用 审 计 日 志 中 的 追 踪 信 息, 重 现 导 致 数 据 库 现 有 状 况 的 一 系 列 事 件, 以 找 出 非 法 存 取 数 据 的 人 C2 以 上 安 全 级 别 的 DBMS 必 须 具 有 审 计 功 能 审 计 日 志 一 般 包 括 下 列 内 容 : (1) 操 作 类 型 ( 如 修 改 查 询 等 ) (2) 操 作 终 端 标 识 与 操 作 人 员 标 识 (3) 操 作 日 期 和 时 间 (4) 操 作 的 数 据 对 象 ( 如 表 视 图 记 录 属 性 等 ) (5) 数 据 修 改 前 后 的 值 审 计 功 能 的 可 选 性 审 计 审 计 很 费 时 间 和 空 间, 所 以 DBMS 往 往 都 将 其 作 为 可 选 特 征 DBA 可 以 根 据 应 用 对 安 全 性 的 要 求, 灵 活 地 打 开 或 关 闭 审 计 功 能 审 计 技 术 是 预 防 手 段, 监 测 可 能 的 不 合 法 行 为 当 数 据 相 当 敏 感, 或 者 对 数 据 的 处 理 极 为 重 要 时, 就 必 须 使 用 审 计 技 术 审 计 一 般 可 以 分 为 用 户 级 审 计 是 任 何 用 户 可 设 置 的 审 计, 主 要 是 针 对 自 己 创 建 的 数 据 库 或 视 图 进 行 审 计, 记 录 所 有 用 户 对 这 些 表 或 视 图 的 一 切 成 功 和 ( 或 ) 不 成 功 的 访 问 要 求 以 及 各 种 类 型 的 SQL 操 作 系 统 级 审 计 只 能 由 DBA 设 置, 用 以 监 测 成 功 或 失 败 的 登 录 要 求 监 测 Grant 和 Revoke 操 作 以 及 其 他 数 据 库 级 权 限 下 的 操 作 数 据 库 加 密 技 术 加 密 的 基 本 思 想 防 止 数 据 库 中 数 据 在 存 储 和 传 输 中 失 密 的 有 效 手 段 针 对 的 情 况 入 侵 者 绕 过 系 统 访 问 数 据 库 的 信 息 内 容 入 侵 者 通 过 物 理 移 除 磁 盘 或 备 份 磁 盘 盗 走 数 据 库 入 侵 者 接 入 载 有 真 实 用 户 数 据 的 通 信 链 路 聪 明 的 入 侵 者 通 过 运 行 程 序 突 破 操 作 系 统 防 线 来 检 索 数 据 在 这 些 情 况 下, 数 据 库 系 统 的 各 种 授 权 规 则 或 许 不 能 提 供 充 分 的 保 护 标 准 安 全 技 术 无 法 防 范 绕 过 系 统 访 问 数 据 的 侵 扰, 这 就 需 要 采 取 其 他 保 护 措 施 来 加 强 安 全 系 统 根 据 一 定 的 算 法 将 原 始 数 据 ( 术 语 为 明 文, Plain text) 变 换 为 不 可 直 接 识 别 的 格 式 ( 术 语 为 密 文,Cipher text) 不 知 道 解 密 算 法 的 人 无 法 获 知 数 据 的 内 容
加 密 方 法 数 据 库 加 密 技 术 替 换 方 法 使 用 密 钥 (Encryption Key) 将 明 文 中 的 每 一 个 字 符 转 换 为 密 文 中 的 一 个 字 符 置 换 方 法 将 明 文 的 字 符 按 不 同 的 顺 序 重 新 排 列 这 两 种 方 法 结 合 能 提 供 相 当 高 的 安 全 程 度 例 : 美 国 1977 年 制 定 的 官 方 加 密 标 准 : 数 据 加 密 标 准 (Data Encryption Standard, 简 称 DES) 基 于 文 件 的 加 密 把 数 据 库 文 件 作 为 整 体, 用 加 密 算 法 对 整 个 数 据 库 文 件 加 密 来 保 证 信 息 的 真 实 性 和 完 整 性 数 据 的 共 享 是 通 过 用 户 用 解 密 密 钥 对 整 个 数 据 库 文 件 进 行 解 密 来 实 现 的 实 际 应 用 受 到 多 方 面 的 限 制 数 据 修 改 的 工 作 将 变 得 十 分 困 难, 需 要 进 行 解 密 修 改 复 制 和 加 密 四 个 操 作, 极 大 地 增 加 了 系 统 的 时 空 开 销 即 使 用 户 只 是 需 要 查 看 某 一 条 记 录, 也 必 须 将 整 个 数 据 库 文 件 解 密, 这 样 无 法 实 现 对 文 件 中 不 需 要 让 用 户 知 道 的 信 息 的 控 制 数 据 库 加 密 技 术 字 段 加 密 ( 字 段 是 最 小 的 加 密 单 位 ) 字 段 加 密 的 原 理 将 重 要 的 字 段 内 容 进 行 加 密, 当 使 用 查 询 语 句 获 取 结 果 集 后, 再 将 这 些 重 要 的 字 段 内 容 进 行 解 密 每 个 字 段 可 以 使 用 不 同 的 密 钥, 也 可 以 使 用 共 同 的 密 钥 字 段 加 密 的 特 点 较 高 的 安 全 性 影 响 数 据 库 的 访 问 速 度 : 对 一 个 记 录 进 行 存 取 时 需 要 多 次 的 加 / 解 密 处 理 对 数 据 库 管 理 系 统 (DBMS) 的 功 能 影 响 也 很 大 在 实 际 应 用 中, 一 般 不 会 对 所 有 记 录 都 进 行 加 密 处 理, 而 是 对 部 分 安 全 性 要 求 高 的 字 段 进 行 加 密 处 理 数 据 库 加 密 技 术 通 常 情 况 下, 以 下 几 种 字 段 不 宜 加 密 索 引 字 段 不 能 加 密 关 系 运 算 的 比 较 字 段 不 能 加 密 表 间 的 连 接 码 字 段 不 能 加 密 数 据 库 加 密 技 术 数 据 库 加 密 对 DBMS 的 影 响 记 录 加 密 将 表 中 的 行 的 所 有 字 段 或 部 分 字 段 组 成 一 个 整 体, 进 行 统 一 加 密, 当 应 用 程 序 访 问 数 据 库 中 的 表 记 录 时, 再 将 行 的 所 有 字 段 或 部 分 字 段 进 行 统 一 解 密 数 据 库 加 密 后 对 DBMS 原 有 功 能 的 主 要 影 响 无 法 实 现 对 数 据 制 约 因 素 的 定 义 ; 密 文 数 据 的 排 序 分 组 和 分 类 ; SQL 语 言 中 的 内 部 函 数 不 能 作 用 于 加 / 解 密 数 据 ; DBMS 的 一 些 应 用 开 发 工 具 的 使 用 受 到 限 制 在 对 数 据 库 进 行 加 密 时, 应 注 意 以 下 几 点 选 择 合 适 的 加 密 算 法 选 择 合 适 的 加 密 方 法 测 试 加 密 后 访 问 数 据 库 的 效 率
统 计 数 据 库 的 安 全 性 统 计 数 据 库 的 安 全 性 统 计 数 据 库 的 特 点 允 许 用 户 查 询 聚 集 类 型 的 信 息 ( 如 合 计 平 均 值 等 ) 不 允 许 查 询 单 个 记 录 信 息 示 例 : 允 许 查 询 程 序 员 的 平 均 工 资 是 多 少 不 允 许 查 询 程 序 员 张 勇 的 工 资 统 计 数 据 库 中 特 殊 的 安 全 性 问 题 隐 蔽 的 信 息 通 道 从 合 法 的 查 询 中 推 导 出 不 合 法 的 信 息 统 计 数 据 库 的 安 全 性 统 计 数 据 库 的 安 全 性 例 1: 下 面 两 个 查 询 都 是 合 法 的 本 公 司 共 有 多 少 女 高 级 程 序 员? 本 公 司 女 高 级 程 序 员 的 工 资 总 额 是 多 少? 如 果 第 一 个 查 询 的 结 果 是 1, 那 么 第 二 个 查 询 的 结 果 显 然 就 是 这 个 程 序 员 的 工 资 数 规 则 1: 任 何 查 询 至 少 要 涉 及 N(N 足 够 大 ) 个 以 上 的 记 录 例 2: 用 户 A 发 出 下 面 两 个 合 法 查 询 用 户 A 和 其 他 N 个 程 序 员 的 工 资 总 额 是 多 少? 用 户 B 和 其 他 N 个 程 序 员 的 工 资 总 额 是 多 少? 若 第 一 个 查 询 的 结 果 是 X, 第 二 个 查 询 的 结 果 是 Y, 由 于 用 户 A 知 道 自 己 的 工 资 是 Z, 那 么 他 可 以 计 算 出 用 户 B 的 工 资 =Y-(X-Z) 原 因 : 两 个 查 询 之 间 有 很 多 重 复 的 数 据 项 规 则 2: 任 意 两 个 查 询 的 相 交 数 据 项 不 能 超 过 M 个 统 计 数 据 库 的 安 全 性 数 据 库 安 全 机 制 的 设 计 目 标 可 以 证 明, 在 上 述 两 条 规 定 下, 如 果 想 获 知 用 户 B 的 工 资 额 A 至 少 需 要 进 行 1+(N-2)/M 次 查 询 试 图 破 坏 安 全 的 人 所 花 费 的 代 价 >> 得 到 的 利 益 规 则 3: 任 一 用 户 的 查 询 次 数 不 能 超 过 1+(N-2)/M 如 果 两 个 用 户 合 作 查 询 就 可 以 使 这 一 规 定 失 效
SQL Server 的 安 全 机 制 SQL Server 的 安 全 机 制 SQL Server 采 用 4 个 等 级 的 安 全 验 证 : 操 作 系 统 安 全 验 证 ; SQL Server 安 全 验 证 ; SQL Server 数 据 库 安 全 验 证 ; SQL Server 数 据 库 对 象 安 全 验 证 权 限 管 理 : 在 SQL Server 中 有 三 种 类 型 的 权 限 语 句 权 限 : 可 以 委 派 给 其 它 用 户 对 象 权 限 : 可 以 委 派 给 其 它 用 户 隐 含 权 限 : 只 允 许 属 于 特 定 角 色 的 人 使 用 在 SQL Server 中 主 要 有 两 种 类 型 的 角 色 服 务 器 角 色 与 数 据 库 角 色 SQL Server 的 安 全 机 制 SQL Server 的 安 全 机 制 语 句 权 限 是 SQL Server 中 功 能 最 强 大 的 一 些 权 限, 这 些 权 限 只 限 分 配 在 单 个 数 据 库, 跨 数 据 库 的 权 限 是 不 可 能 的 通 常 只 给 那 些 需 要 在 数 据 库 中 创 建 或 修 改 对 象 执 行 数 据 库 或 事 务 日 志 备 份 的 用 户 当 分 配 语 句 权 限 给 用 户 时, 就 给 了 他 们 创 建 对 象 的 能 力, 通 常 使 用 对 应 的 SQL Server 命 令 来 引 用 语 句 权 限 SQL Server 的 安 全 机 制 Oracle 数 据 库 的 安 全 性 措 施 对 象 权 限 对 象 权 限 分 配 给 数 据 库 层 次 上 的 对 象, 并 允 许 用 户 访 问 和 操 作 数 据 库 中 已 存 在 的 对 象 没 有 这 些 权 限, 用 户 将 不 能 访 问 数 据 库 里 的 任 何 对 象 这 些 权 限 实 际 上 给 了 用 户 运 行 特 定 SQL 语 句 的 能 力 ORACLE 的 安 全 措 施 : 用 户 标 识 和 鉴 定 授 权 和 检 查 机 制 审 计 技 术 用 户 通 过 触 发 器 灵 活 定 义 自 己 的 安 全 性 措 施
ORACLE 的 用 户 标 识 和 鉴 定 ORACLE 的 授 权 与 检 查 机 制 ORACLE 允 许 用 户 重 复 标 识 三 次 如 果 三 次 仍 未 通 过, 系 统 自 动 退 出 ORACLE 授 权 和 检 查 机 制 的 特 色 ORACLE 的 权 限 包 括 系 统 权 限 和 数 据 库 对 象 的 权 限 采 用 非 集 中 式 的 授 权 机 制 每 个 用 户 授 予 与 回 收 自 己 创 建 的 数 据 库 对 象 的 权 限 DBA 负 责 授 予 与 回 收 系 统 权 限, 也 可 以 授 予 与 回 收 所 有 数 据 库 对 象 的 权 限 允 许 重 复 授 权, 即 可 将 某 一 权 限 多 次 授 予 同 一 用 户, 系 统 不 会 出 错 允 许 无 效 回 收, 即 用 户 不 具 有 某 权 限, 但 回 收 此 权 限 的 操 作 仍 是 成 功 的 ORACLE 的 授 权 与 检 查 机 制 Oracle 系 统 权 限 ORACLE 的 权 限 系 统 权 限 (80 多 种 ) 创 建 会 话 创 建 表 创 建 视 图 创 建 用 户 DBA 在 创 建 一 个 用 户 时 需 要 将 其 中 的 一 些 权 限 授 予 该 用 户 角 色 ORACLE 支 持 角 色 的 概 念 ORACLE 允 许 DBA 定 义 角 色 ORACLE 提 供 的 预 定 义 角 色 CONNECT RESOURCE DBA 数 据 库 对 象 的 权 限 Oracle 系 统 权 限 Oracle 系 统 权 限 CONNECT 角 色 允 许 用 户 登 录 数 据 库 并 执 行 数 据 查 询 和 操 纵 ALTER TABLE CREATE VIEW / INDEX DROP TABLE / VIEW / INDEX GRANT, REVOKE INSERT, UPDATE, DELETE SELETE AUDIT / NOAUDIT RESOURCE 角 色 允 许 用 户 建 表, 即 执 行 CREATE TABLE 操 作 由 于 创 建 表 的 用 户 将 拥 有 该 表, 因 此 他 具 有 对 该 表 的 任 何 权 限
Oracle 系 统 权 限 Oracle 系 统 权 限 DBA 角 色 允 许 用 户 执 行 授 权 命 令, 建 表, 对 任 何 表 的 数 据 进 行 操 纵 DBA 角 色 涵 盖 了 前 两 种 角 色, 此 外 还 可 以 执 行 一 些 管 理 操 作 DBA 角 色 拥 有 最 高 级 别 的 权 限 例 :DBA 建 立 一 用 户 U12 后, 欲 将 ALTER TABLE CREATE VIEW CREATE INDEX DROP TABLE DROP VIEW DROP INDEX, GRANT,REVOKE INSERT SELETE UPDATE DELETE AUDIT NOAUDIT 等 系 统 权 限 授 予 U12, 则 可 以 只 简 单 地 将 CONNECT 角 色 授 予 U12 即 可 : GRANT CONNECT TO U12; 这 样 就 可 以 省 略 十 几 条 GRANT 语 句 Oracle 数 据 库 对 象 的 权 限 Oracle 数 据 库 对 象 的 权 限 ORACLE 可 以 授 权 的 数 据 库 对 象 基 本 表 视 图 序 列 利 用 它 可 生 成 唯 一 的 整 数 一 般 用 于 自 动 生 成 主 码 值 避 免 了 在 应 用 层 实 现 序 列 而 引 起 的 性 能 瓶 颈 同 义 词 : 一 种 映 射 关 系 create public synonym table_name for user.table_name 存 储 过 程 函 数 基 本 表 的 安 全 性 级 别 表 级 行 级 列 级 Oracle 数 据 库 对 象 的 权 限 表 级 安 全 性 表 的 创 建 者 或 DBA 可 以 把 对 表 的 权 限 授 予 其 他 用 户 表 级 权 限 ALTER: 修 改 表 定 义 DELETE: 删 除 表 记 录 INDEX: 在 表 上 建 索 引 INSERT: 向 表 中 插 入 数 据 记 录 SELECT: 查 找 表 中 记 录 UPDATE: 修 改 表 中 的 数 据 ALL: 上 述 所 有 权 限 表 级 授 权 使 用 GRANT/REVOKE 语 句 例 : GRANT SELECT ON SC TO U12; Oracle 数 据 库 对 象 的 权 限 行 级 安 全 性 ORACLE 行 级 安 全 性 由 视 图 间 接 实 现 例 : 用 户 U1 只 允 许 用 户 U12 查 看 自 己 创 建 的 Student 表 中 有 关 信 息 系 学 生 的 信 息, 则 首 先 创 建 视 图 信 息 系 学 生 视 图 S_IS: CREATE VIEW S_IS AS SELECT Sno,Sname,Ssex,Sage,Sdept FROM Student WHERE Sdept='IS'; 然 后 将 关 于 该 视 图 的 SELECT 权 限 授 予 U12 用 户 : GRANT SELECT ON S_IS TO U12;
Oracle 数 据 库 对 象 的 权 限 列 级 安 全 性 借 助 视 图 实 现 列 级 安 全 性 CREATE VIEW S_V AS SELECT Sno, Sname FROM Student; GRANT SELECT ON S_V TO U12; 直 接 在 基 本 表 上 定 义 列 级 安 全 性 例 :GRANT UPDATE (Sno, Cno) ON SC TO U12; Oracle 数 据 库 对 象 的 权 限 三 级 对 象 的 层 次 结 构 表 行 列 三 级 对 象 自 上 而 下 构 成 一 个 层 次 结 构 上 一 级 对 象 的 权 限 制 约 下 一 级 对 象 的 权 限 例 : 当 一 个 用 户 拥 有 了 对 某 个 表 的 UPDATE 权 限, 即 相 当 于 在 表 的 所 有 列 了 都 拥 有 了 UPDATE 权 限 Oracle 数 据 库 对 象 的 权 限 ORACLE 的 授 权 与 检 查 机 制 ORACLE 对 数 据 库 对 象 的 权 限 采 用 分 散 控 制 方 式 允 许 具 有 WITH GRANT OPTION 的 用 户 把 相 应 权 限 或 其 子 集 传 递 授 予 其 他 用 户 ORACLE 不 允 许 循 环 授 权, 即 授 权 者 不 能 把 权 限 再 授 予 其 授 权 者 或 祖 先 U1 U2 U3 U4 ORACLE 的 权 限 检 查 机 制 ORACLE 把 所 有 权 限 信 息 记 录 在 数 据 字 典 中 当 用 户 进 行 数 据 库 操 作 时,ORACLE 首 先 根 据 数 据 字 典 中 的 权 限 信 息, 检 查 操 作 的 合 法 性 在 ORACLE 中, 安 全 性 检 查 是 任 何 数 据 库 操 作 的 第 一 步