行および列のアクセス制御

行および列のアクセス制御は、SQL を使用して行、列、またはその両方のレベルで表へのアクセスを制御する Db2 セキュリティー・ソリューションです。

これまでは、行レベルおよび列レベルでのアクセス制御はビューを介してインプリメントされました。 アクセス制御の手段としてビューを使用する方法は、アクセス規則、アクセス制限、およびアクセス条件がほとんど変更されず、単純である場合に限り効果的です。 プライバシーとセキュリティーのポリシーの複雑さと細分性が原因でビュー定義が非常に複雑になる場合には、この方法は効果的ではなくなります。 また、多数のビューを手動で更新および保守する必要がある場合には、この方法にはコストがかかります。 また、ビューの更新が難しいことが判明しています。 プライバシー・ポリシーとセキュリティー・ポリシーの展開に伴い、特にデータベース・アプリケーションがビューを直接その名前で参照している場合などには、ビューに対する必須更新が、セキュリティー・ロジックに悪影響を及ぼすことがあります。 Db2 行と列のアクセス制御は、これらの問題のすべてを解決するのに役立ちます。

Db2 セキュリティー管理者、行および列のアクセス制御によって管理されている SQL を介して実装することで、フィルタリングとデータ・マスキングを持つ表へのアクセスを管理することができます。 マルチレベル・セキュリティーとは異なり、行および列のアクセス制御はデータベース・システムに統合され、データベースにアクセスするために SQL を使用するアプリケーションおよびツールはすべて、自動的に同じ制御に従います。 これにより、アプリケーション・レベルで機密データをフィルタリングすることが実質的に不要になり、アプリケーションおよびツールが SQL を使用してデータにアクセスするときに、データは確実に保護されます。

行および列のアクセス制御は、規則および条件を指定するセキュリティー・ポリシーに基づいています。このセキュリティー・ポリシーの下で、ユーザー、グループ、またはロールは、基本表の行または列あるいはこの両方にアクセスできます。 ビューは、基盤となる基本表でアクティブにされた行および列のアクセス制御を自動的に受け取るため、ビュー・レベルのアクセス制御は不要です。 行および列のアクセス制御の規則は、読み取り専用ビューの判別方法には影響しません。 (表の代替ビューとは対照的に) すべてのユーザーが同じ基本表にアクセスしますが、アクセス制限は、表に関連付けられているポリシーにより指定される個々のユーザー・アクセス権限とマスクに基づいています。

SECADM 権限を持つ許可 ID またはロールは、行および列のアクセス制御を管理できます。 SECADM 権限は、表の行および列のアクセス制御の活動化または非活動化、CREATE_SECURE_OBJECT システム特権の付与または取り消し、および行の許可と列マスクの作成、変更、またはドロップを行うことができます。 SYSADM 権限は、インストール時に DSNTIPP1 パネルの SEPARATE SECURITY DSNTIPP1 システム・パラメーターに「NO」が設定されていた場合、同じタスクを実行できます。

表の行および列のアクセス制御は、表の行の許可または列マスクが作成される前後に活動化できます。 行の許可または列マスクが既に存在している場合に行および列のアクセス制御を活動化すると、許可またはマスクが有効になるだけです。 行の許可または列マスクがまだ存在しない場合、表の行アクセス制御をアクティブ化することは、Db2 がデフォルトの行許可を生成して SQL による表へのアクセスを防止し、列アクセス制御をアクティブ化することにより、列マスクが作成されるのを待つことを意味します。

テーブルが行または列のアクセス制御用に有効化されている場合、テーブルの所有者およびSECADM、SYSADM、またはDBADM権限を含むすべてのユーザーは、同じセキュリティルールと制限に従うことになります。 これによって、機密データへのアクセスは真に必要な場合にのみ行われ、システム管理者およびデータベース管理者が不必要に機密データにアクセスすることを回避できます。 セキュリティー・ポリシーまたは規則は SQL を使用して表現および実施されるため、行および列のアクセス制御は本質的に柔軟になっています。

行アクセス制御とマルチレベル・セキュリティーは相互に排他的です。 行アクセス制御が活動化された表は、セキュリティー・ラベル列を含めるように変更することはできません。セキュリティー・ラベル列がある表では、行アクセス制御を活動化することはできません。 一方、列アクセス制御はマルチレベル・セキュリティーによる影響を受けません。 列レベル・アクセス制御が活動化された表は、セキュリティー・ラベル列を含むように変更でき、逆もまた同様です。