ページの先頭行へ戻る
Symfoware Server  解説書

2.4.6 機密保護

Symfoware Serverの機密保護とは、特定の利用者に権限を与えることによって、データベースの機密を保護することです。

機密保護には“コマンドや各種ファイルに対する機密保護”と“データベースアクセスに対する機密保護”があります。

コマンドや各種ファイルに対する機密保護では、OSにログインする利用者の認証およびコマンド実行権のチェックはOSの機能を利用して行います。OSコマンドでRDBコマンドの実行権を設定し、データベースの機密を保護します。

データベースアクセスに対する機密保護について、以下に説明します。

データベースアクセスに対する機密保護

データベースに対して接続した利用者がどのような表にアクセスできるか、どのような操作を行うことができるかのデータベースアクセスに対する機密保護は、SQL文で設定します。

なお、データベースに対して接続できる利用者の定義方法には、Symfoware Serverで利用者を管理する方法とOSで利用者を管理する方法があります。

Symfoware Serverで利用者を管理する場合、データベース定義時に権限定義を行います。権限定義についての詳細は、“3.3.10 権限”を参照してください。OSで利用者を管理する場合、OSにログイン名を登録するだけで、データベースアクセスが可能となります。

以下に、Symfoware Serverで利用者を管理する場合の各資源に対する機密保護について説明します。

参照

SQL文についての詳細は、“SQLリファレンス”を参照してください。

RDBディクショナリに対する機密保護

RDBディクショナリ創成直後、RDBディクショナリの定義者にシステムファイルへのアクセス権限を与えます。

RDBディクショナリの定義者は、GRANT文およびREVOKE文を用いて、論理構造定義時にアクセス権限を設定することができます。

データベースに対する機密保護

スキーマや表などのデータベース資源を定義したとき、その資源の定義者にその資源に関するすべての権限を与えます。各資源の定義者は、アクセス権限を他の人に設定できます。

各資源の定義者は、GRANT文およびREVOKE文を用いて、論理構造定義時にアクセス権限を設定することができます。

対象となる利用者

Symfoware Serverで利用者を管理する運用を行っている場合は、CREATE USER文で登録した利用者に対してアクセス権限の設定を行います。これにより、1つの業務で必要な権限をグループ化して定義するロールのデフォルト値やSymfoware Serverの認証機構を利用した機密保護を行うことができます。

Symfoware Serverに利用者を登録しない運用を行っている場合は、OSの利用者に対して、アクセス権限を設定することができます。

ロールについて、以下に説明します。

ロール

ロールとは、1つの業務で必要な権限をグループ化したものです。ロールを定義し、その業務を行うすべての利用者にそのロールの権限を付与することにより、権限管理の効率化を図ることができます。

権限定義により、資源に対して、誰にどんな権限を与えるかを設定することができます。

権限チェックの対象

権限チェックの対象資源の種類には、データベーススペース、スキーマ、表およびルーチンがあります。また、Symfoware Server運用の利用形態には、いくつかの方法があります。その方法別に権限のチェック対象者が異なります。

利用形態と権限のチェック対象者について、以下に示します。

表2.5 権限のチェック対象

利用形態

権限のチェック対象

RDBコマンド

コマンド実行者

アプリケーション

CONNECT文でデータベースに接続したユーザ
SET SESSION AUTHORIZATION文で再定義されたユーザ

プロシジャルーチン内SQL文

プロシジャルーチンの定義者

プロシジャルーチンについての詳細は、“3.3.8 プロシジャルーチン”を参照してください。

各操作で必要な権限

権限の種類

データベースアクセスに対する機密保護機能として設定可能な権限について、以下に示します。

表2.6 権限の種類

権限

意味

SELECT権

データを参照する権限

INSERT権

データを格納する権限

UPDATE権

データを更新する権限

DELETE権

データを削除する権限

EXECUTE権

ルーチンを実行する権限

TRIGGER権

表にトリガを定義する権限

CREATE権

スキーマに、表、ビュー表、ルーチン、順序を定義する権限

ALLOCATE権

DSI定義でデータベーススペースに表のエリアを割付ける権限

DROP権

スキーマ、表、ビュー表、ルーチン、トリガ、順序を削除する権限

ALTER権

表定義を更新する権限

INDEX権

表にインデックスを定義する権限

対象資源と設定できる権限

資源に対し設定可能な権限について、以下に示します。

表2.7 資源に設定できる権限

資源

権限

データベーススペース

ALLOCATE権

スキーマ

CREATE権、DROP権

SELECT権、INSERT権、UPDATE権、DELETE権、TRIGGER権、DROP権、ALTER権、INDEX権

ビュー表

SELECT権、INSERT権、UPDATE権、DELETE権、DROP権

ルーチン

EXECUTE権、DROP権

順序

SELECT権、DROP権

トリガ

DROP権

備考.資源の定義者は、その資源に対するすべての権限を持ちます。