Oracle Label Securityでは、データ・ディクショナリ表およびビューが提供されます。Oracle Label Securityの制限事項にも注意する必要があります。
内容は次のとおりです。
Oracle Label Securityでは、データ・ディクショナリ表、データ・ディクショナリ・ビュー、およびユーザー作成の監査ビューが提供されます。
内容は次のとおりです。
Oracle Label Securityでは、Oracleのデータ・ディクショナリ表はラベル付けされません。アクセスは、標準的なOracle Databaseのシステム権限とオブジェクト権限により制御されます。
すべてのデータ・ディクショナリ表およびビューの詳細は、『Oracle Databaseリファレンス』を参照してください。
Oracle Label Securityでは、データ・ディクショナリ・ビューの独自セットがメンテナンスされます。これらのビューは、ポリシーの強制対象から除外されます。
DBAビューへのアクセス権は、デフォルトでSELECT_CATALOG_ROLEに付与されます。これは、Oracle Databaseのデータ・ディクショナリを検証できる標準的なOracle Databaseのロールです。
ALL_SA_AUDIT_OPTIONSデータ・ディクショナリ・ビューは、現行ユーザーに対して、SA_AUDIT_ADMIN.AUDITプロシージャ設定に基づいて、Oracle Label Security監査オプションを示します。
「SA_AUDIT_ADMIN.AUDIT」を参照してください。
このビューは、監査を構成する際に、監査レコードを、セッションごと(BY SESSION)またはアクセスごと(BY ACCESS)のどちらで生成するか、および成功した操作または失敗した操作のどちらに対して生成するかを表示します。有効な値は次のとおりです。
ハイフン(-)は、監査オプションが何も設定されていないことを示します。
文字Sは、監査オプションがBY SESSIONに設定されていることを示します。
文字Aは、監査オプションがBY ACCESSに設定されていることを示します。
各監査オプションには、可能な設定としてWHENEVER SUCCESSFULとWHENEVER NOT SUCCESSFULの2つがあり、スラッシュ(/)で区切られています。
たとえば、次の出力では、ユーザーjjonesは、ポリシー固有の権限に関連する成功したアクションに対してBY ACCESS監査タイプで監査されます。ユーザーrlaytonは、BY SESSION監査タイプで監査されます。監査レコードは、ポリシーの削除に失敗した試行、およびユーザー認証の設定時に成功した試行について書き込まれます。
SELECT * FROM DBA_SA_AUDIT_OPTIONS; POLICY_NAME USER_NAME APY REM SET_ PRV ----------- ------------ --- ---- ---- --- HR_OLS_POL JJONES -/- -/- -/- A/- HR_OLS_POL RLAYTON -/- -/S S/- -/-
| 列 | データ型 | Null | 説明 |
|---|---|---|---|
|
|
|
Oracle Label Securityポリシーの名前 |
|
|
|
ポリシーに関連付けられたユーザーの名前 |
|
|
|
監査オプション。表およびスキーマに対する指定したOracle Label Securityポリシーの適用を指します。 |
|
|
|
監査オプション。表およびスキーマからの指定したOracle Label Securityポリシーの削除を指します。 |
|
|
|
監査オプション。ユーザー認証およびユーザーとプログラムの権限の設定を指します。 |
|
|
|
監査オプション。すべてのポリシー固有の権限の使用を指します。 |
ALL_SA_COMPARTMENTSデータ・ディクショナリ・ビューは、現行ユーザーに対して、SA_COMPONENTS.CREATE_COMPARTMENTプロシージャ設定に基づいて、Oracle Label Securityポリシー区分に関する情報を示します。
「SA_COMPONENTS.CREATE_COMPARTMENT」を参照してください。
| 列 | データ型 | Null | 説明 |
|---|---|---|---|
|
|
|
Oracle Label Securityポリシーの名前 |
|
|
|
0から9999の範囲の区分番号 |
|
|
|
区分の短縮名 |
|
|
|
区分の詳細名 |
ALL_SA_DATA_LABELSデータ・ディクショナリ・ビューは、現行ユーザーに対して、SA_LABEL_ADMIN.CREATE_LABELプロシージャ設定に基づいて、Oracle Label Securityポリシーのラベルおよびタグを示します。
「SA_LABEL_ADMIN.CREATE_LABEL」を参照してください。
| 列 | データ型 | Null | 説明 |
|---|---|---|---|
|
|
|
Oracle Label Securityポリシーの名前 |
|
|
|
ラベル値として指定された、レベル、区分またはグループの短縮名 |
|
|
|
ラベルのソート順を他のポリシー・ラベルとの相対で表す整数(0から99999999) |
ALL_SA_GROUPSデータ・ディクショナリは、SA_COMPONENTS.CREATE_GROUPおよびSA_COMPONENTS.ALTER_GROUP_PARENTプロシージャに基づいて、現行ユーザーのOracle Label Securityポリシー・グループに関する情報を示します。
| 列 | データ型 | Null | 説明 |
|---|---|---|---|
|
|
|
Oracle Label Securityポリシーの名前 |
|
|
|
グループ番号(0から9999) |
|
|
|
グループの短縮名 |
|
|
|
グループの詳細名 |
|
|
|
関連付けられた親グループの数値ID |
|
|
|
グループの親として割り当てられたグループの名前 |
ALL_SA_LABELSデータ・ディクショナリ・ビューは、現行ユーザーに対して、SA_LABEL_ADMIN.CREATE_LABELおよびSA_LABEL_ADMIN.ALTER_LABELに基づいて、ラベルのタグおよびタイプに関する情報を示します。
「SA_LABEL_ADMIN.CREATE_LABEL」および「SA_LABEL_ADMIN.ALTER_LABEL」を参照してください。ALL_SA_LABELSへのアクセスはPUBLICです。ただし、参照できるのは、セッションにより読取りアクセスが認可されているラベルのみです。
| 列 | データ型 | Null | 説明 |
|---|---|---|---|
|
|
|
Oracle Label Securityポリシーの名前 |
|
|
|
このラベルに関連付けられたレベルの短縮名 |
|
|
|
ラベルに割り当てられた整数タグ |
|
|
|
ラベルのタイプ |
ALL_SA_LEVELSデータ・ディクショナリ・ビューは、現行ユーザーに対して、SA_COMPONENTS.CREATE_LEVELプロシージャに基づいて、レベルに関する情報を示します。
「SA_COMPONENTS.CREATE_LEVEL」を参照してください。
| 列 | データ型 | Null | 説明 |
|---|---|---|---|
|
|
|
Oracle Label Securityポリシーの名前 |
|
|
|
レベル番号(0から9999) |
|
|
|
レベルの短縮名 |
|
|
|
レベルの詳細名 |
ALL_SA_POLICIESデータ・ディクショナリ・ビューは、現行ユーザーに対して、SA_SYSDBA.CREATE_POLICYプロシージャに基づいて、Oracle Label Securityポリシーに関する情報を示します。
「SA_SYSDBA.CREATE_POLICY」を参照してください。
| 列 | データ型 | Null | 説明 |
|---|---|---|---|
|
|
|
Oracle Label Securityポリシーの名前 |
|
|
|
ポリシーで保護されている表に追加された列の名前 |
|
|
|
ポリシーが有効か無効か |
|
|
|
このポリシーに設定されたオプション 使用可能な強制オプションのリストは、「ポリシー強制オプションのカテゴリ」を参照してください。 |
ALL_SA_PROG_PRIVSデータ・ディクショナリ・ビューは、現行ユーザーに対して、SA_USER_ADMIN.SET_PROG_PRIVSに基づいて、プログラム・ユニットのポリシー固有の権限に関する情報を示します。
「SA_USER_ADMIN.SET_PROG_PRIVS」を参照してください。
| 列 | データ型 | Null | 説明 |
|---|---|---|---|
|
|
|
プログラム・ユニットを含むスキーマの名前 |
|
|
|
権限が付与されたプログラム・ユニット |
|
|
|
Oracle Label Securityポリシーの名前 |
|
|
|
ポリシー固有の権限。 可能な権限のリストは、「ポリシーのユーザーおよびトラステッド・プログラム・ユニットへの権限の付与について」を参照してください。 |
ALL_SA_SCHEMA_POLICIESデータ・ディクショナリ・ビューは、現行ユーザーに対して、SA_POLICY_ADMIN.APPLY_SCHEMA_POLICYに基づいて、スキーマ内のすべての表に適用されているポリシーに関する情報を示します。
「SA_POLICY_ADMIN.APPLY_SCHEMA_POLICY」を参照してください。また、これは、スキーマ強制オプションが有効か無効かどうかも示します。
| 列 | データ型 | Null | 説明 |
|---|---|---|---|
|
|
|
Oracle Label Securityポリシーの名前 |
|
|
|
このポリシーに関連付けられたスキーマの名前 |
|
|
|
( |
|
|
|
適用されているオプション。 デフォルトの強制オプションのリストは、「ポリシー強制オプションのカテゴリ」を参照してください。 |
ALL_SA_TABLE_POLICIESデータ・ディクショナリ・ビューは、現行ユーザーに対して、SA_POLICY_ADMIN.APPLY_TABLE_POLICY設定に基づいて、データベース表に追加されたポリシーに関する情報を示します。
「SA_POLICY_ADMIN.APPLY_TABLE_POLICY」を参照してください。
| 列 | データ型 | Null | 説明 |
|---|---|---|---|
|
|
|
Oracle Label Securityポリシーの名前 |
|
|
|
ポリシーが保護する表を含むスキーマ |
|
|
|
ポリシーで保護される表 |
|
|
|
( |
|
|
|
表に使用されるポリシー強制オプション デフォルトの強制オプションのリストは、「ポリシー強制オプションのカテゴリ」を参照してください。 |
|
|
|
デフォルトとして使用するラベル値を戻すファンクションの名前 |
|
|
|
|
ALL_SA_USERSデータ・ディクショナリ・ビューは、現行ユーザーに対して、SA_USER_ADMIN.SET_USER_LABELSおよびSA_USER_ADMIN.SET_USER_PRIVSに基づいて、Oracle Label Securityユーザー権限に関する情報を示します。
| 列 | 型 | Null | 説明 |
|---|---|---|---|
|
|
|
ユーザー名 |
|
|
|
Oracle Label Securityポリシーの名前 |
|
|
|
ユーザーに付与されたポリシー固有の権限。 可能な権限のリストは、「ポリシーのユーザーおよびトラステッド・プログラム・ユニットへの権限の付与について」を参照してください。 |
|
|
|
ユーザーが認可される最大読取りラベルを初期化するラベル文字列 |
|
|
|
ユーザーが認可される最大書込みラベルを初期化するラベル文字列 |
|
|
|
ユーザーが認可される最小書込みラベルを初期化するラベル文字列 |
|
|
|
読取りアクセス用の、レベル、区分、グループなど、ユーザーのセッション・ラベルを初期化するラベル文字列 |
|
|
|
書込みアクセス用の、レベル、区分、グループなど、ユーザーのセッション・ラベルを初期化するラベル文字列 |
|
|
|
レベル、コンポーネントおよびグループを含む、プログラムの行ラベルを初期化するラベル文字列 |
|
|
|
下位互換性のためにのみ保持されており、次のリリースでは削除される予定です。 |
ALL_SA_USER_LABELSデータ・ディクショナリ・ビューは、現行ユーザーに対して、SA_USER_ADMIN.SET_USER_LABELSプロシージャ設定に基づいて、ユーザーに関するラベル固有の情報を示します。
「SA_USER_ADMIN.SET_USER_LABELS」を参照してください。
| 列 | データ型 | Null | 説明 |
|---|---|---|---|
|
|
|
ユーザー名 |
|
|
|
Oracle Label Securityポリシーの名前 |
|
|
|
下位互換性のためにのみ保持されており、次のリリースでは削除される予定です。 |
|
|
|
ユーザーが認可される最大読取りラベルを初期化するラベル文字列 |
|
|
|
ユーザーが認可される最大書込みラベルを初期化するラベル文字列 |
|
|
|
ユーザーが認可される最小書込みラベルを初期化するラベル文字列 |
|
|
|
読取りアクセス用の、レベル、区分、グループなど、ユーザーのセッション・ラベルを初期化するラベル文字列 |
|
|
|
書込みアクセス用の、レベル、区分、グループなど、ユーザーのセッション・ラベルを初期化するラベル文字列 |
|
|
|
レベル、コンポーネントおよびグループを含む、プログラムの行ラベルを初期化するラベル文字列 |
ALL_SA_USER_LEVELSデータ・ディクショナリ・ビューは、現行ユーザーに対して、SA_USER_ADMIN.SET_LEVELSプロシージャに基づいて、ユーザーに割り当てられた最小レベルと最大レベルを示します。
また、ユーザーのセッション・ラベルおよび行ラベルのデフォルト値をリストします。
「SA_USER_ADMIN.SET_LEVELS」を参照してください。
| 列 | データ型 | Null | 説明 |
|---|---|---|---|
|
|
|
Oracle Label Securityポリシーの名前 |
|
|
|
ユーザー名 |
|
|
|
読取りアクセスと書込みアクセスの最上位レベルの短縮名 |
|
|
|
読取りアクセスと書込みアクセスの最下位レベルの短縮名 |
|
|
|
デフォルト・レベルの短縮名 |
|
|
|
行レベルの短縮名 |
ALL_SA_USER_PRIVSデータ・ディクショナリ・ビューは、現行ユーザーに対して、SA_USER_ADMIN.SET_USER_PRIVSプロシージャに基づいて、ユーザーに付与されているポリシー固有の権限を示します。
「SA_USER_ADMIN.SET_USER_PRIVS」を参照してください。
| 列 | データ型 | Null | 説明 |
|---|---|---|---|
|
|
|
ユーザー名 |
|
|
|
Oracle Label Securityポリシーの名前 |
|
|
|
ユーザーに付与されたポリシー固有の権限 使用可能な権限は、「ポリシーのユーザーおよびトラステッド・プログラム・ユニットへの権限の付与について」を参照してください |
DBA_SA_AUDIT_OPTIONSデータ・ディクショナリ・ビューは、データベース全体に対して、Oracle Label Securityの監査オプションを示します。
列はALL_SA_AUDIT_OPTIONSの列と同じです。
ALL_SA_COMPARTMENTSデータ・ディクショナリ・ビューは、データベース全体に対して、Oracle Label Securityポリシー区分に関する情報を示します。
列はALL_SA_COMPARTMENTSの列と同じです。
関連項目:
ALL_SA_DATA_LABELSデータ・ディクショナリ・ビューは、データベース全体に対して、指定したOracle Label Securityポリシーのラベルおよびラベル・タグを示します。
列はALL_SA_DATA_LABELSの列と同じです。
関連項目:
ALL_SA_GROUPSデータ・ディクショナリ・ビューは、データベース全体に対して、Oracle Label Securityポリシー・グループに関する情報を示します。
列はALL_SA_GROUPSの列と同じです。
関連項目:
DBA_SA_GROUP_HIERARCHYデータ・ディクショナリ・ビューは、ポリシー内のグループの階層(つまり、親子関係)を示します。
| 列 | 型 | Null | 説明 |
|---|---|---|---|
|
|
|
Oracle Label Securityポリシーの名前 |
|
|
|
グループ階層内の特定のグループのレベルを示します。親グループを持たないグループは、 たとえば、次の順序の次のグループについて考えてみます。
ここでは、 親子関係は次のとおりです。
|
|
|
|
階層レベルを示すことを目的としたグループの短縮名 |
DBA_SA_LABELSデータ・ディクショナリ・ビューは、データベース全体に対して、ポリシーのラベルのタグおよびタイプに関する情報を示します。
列はALL_SA_LABELSの列と同じです。
関連項目:
DBA_SA_LEVELSデータ・ディクショナリ・ビューは、データベース全体に対して、ポリシーに関連付けられたレベルに関する情報を示します。
列はALL_SA_LEVELSの列と同じです。
関連項目:
DBA_SA_POLICIESデータ・ディクショナリ・ビューは、データベース全体に対して、SA_SYSDBA.CREATE_POLICYプロシージャに基づいて、Oracle Label Securityポリシーに関する情報を示します。
また、このビューは、ポリシーが有効か無効かどうかと、そのサブスクリプション・ステータスも示します。
| 列 | データ型 | Null | 説明 |
|---|---|---|---|
|
|
|
Oracle Label Securityポリシーの名前 |
|
|
|
ポリシーで保護されている表に追加された列の名前 |
|
|
|
ポリシーが有効か無効か |
|
|
|
このポリシーに設定されたオプション。 使用可能な強制オプションのリストは、「ポリシー強制オプションのカテゴリ」を参照してください。 |
|
|
|
|
DBA_SA_PROG_PRIVSデータ・ディクショナリ・ビューは、データベース全体に対して、プログラム・ユニットのポリシー固有の権限に関する情報を示します。
列はALL_SA_PROG_PRIVSの列と同じです。
関連項目:
DBA_SA_SCHEMA_POLICIESデータ・ディクショナリ・ビューは、データベース全体に対して、スキーマ内のすべての表に適用されているポリシーに関する情報を示します。
列はALL_SA_SCHEMA_POLICIESの列と同じです。
DBA_SA_TABLE_POLICIESデータ・ディクショナリ・ビューは、データベース全体に対して、データベース表に追加されたポリシーに関する情報を示します。
列はALL_SA_TABLE_POLICIESの列と同じです。
DBA_SA_USERSデータ・ディクショナリ・ビューは、データベース全体に対して、Oracle Label Securityユーザーが持っている権限に関する情報を示します。
列はALL_SA_USERSの列と同じです。
関連項目:
DBA_SA_USER_COMPARTMENTSデータ・ディクショナリ・ビューは、データベース全体に対して、SA_USER_ADMIN.ADD_COMPARTMENTSプロシージャに基づいて、ユーザー認証を示します。
また、このビューは、区分が書込みおよび読取り権限について認可されるかどうかも示します
「SA_USER_ADMIN.ADD_COMPARTMENTS」を参照してください。
| 列 | データ型 | Null | 説明 |
|---|---|---|---|
|
|
|
Oracle Label Securityポリシーの名前 |
|
|
|
ユーザー名 |
|
|
|
追加された区分の短縮名 |
|
|
|
アクセス・モード。可能な値は次のとおりです。
|
|
|
|
区分がデフォルト区分内にあるかどうか |
|
|
|
区分が行ラベル内にあるかどうか |
DBA_SA_USER_GROUPSデータ・ディクショナリ・ビューは、データベース全体に対して、SA_USER_ADMIN.ADD_GROUPSプロシージャに基づいて、ユーザーに関連付けられているグループを示します。
「SA_USER_ADMIN.ADD_GROUPS」を参照してください。
| 列 | データ型 | Null | 説明 |
|---|---|---|---|
|
|
|
Oracle Label Securityポリシーの名前 |
|
|
|
ユーザー名 |
|
|
|
追加されたグループの短縮名 |
|
|
|
アクセス・モード。可能な値は次のとおりです。
|
|
|
|
グループがデフォルト・グループ内にあるかどうか |
|
|
|
グループがラベル内にあるかどうか |
DBA_SA_USER_LABELSデータ・ディクショナリ・ビューは、データベース全体に対して、ユーザーに関するラベル固有の情報を示します。
列はALL_SA_USER_LABELSの列と同じです。
関連項目:
DBA_SA_USER_PRIVSデータ・ディクショナリ・ビューは、現行ユーザーに対して、ユーザーに付与されているポリシー固有の権限を示します。
列はALL_SA_USER_PRIVSの列と同じです。
関連項目:
DBA_OLS_STATUSデータ・ディクショナリ・ビューは、データベース内のOracle Label Securityの構成ステータスを示します。
| 列 | データ型 | Null | 説明 |
|---|---|---|---|
|
|
|
ステータスの名前。値は次のとおりです。
|
|
|
|
対応する名前の列に記載されている機能のステータスを示します。たとえば、 |
|
|
|
ステータスの説明は次のとおりです。
|
USER_SA_SESSIONデータ・ディクショナリ・ビューは、現行データベース・セッションのセキュリティ属性値を示します。
このビューへのアクセスはPUBLICです。
| 列 | データ型 | Null | 説明 |
|---|---|---|---|
|
|
|
Oracle Label Securityポリシーの名前 |
|
|
|
現行セッション・ユーザーの名前 |
|
|
|
現行セッションの権限 |
|
|
|
ユーザーが認可される最大読取りラベルを初期化したラベル文字列 |
|
|
|
ユーザーが認可される最大書込みラベルを初期化したラベル文字列 |
|
|
|
セッションについて認可された最小Oracle Label Securityレベル |
|
|
|
現行データベース・セッションのラベル |
|
|
|
ユーザーが書込みを認可されている区分 |
|
|
|
ユーザーが書込みを認可されているグループ |
|
|
|
現行セッションのポリシーに関連付けられている行ラベル |
SA_AUDIT_ADMIN.CREATE_VIEWプロシージャを使用すると、特定のポリシーの監査証跡ビューを作成できます。
デフォルトでは、このビューの名前はDBA_policyname_AUDIT_TRAILです。
| 列 | データ型 | Null | 説明 |
|---|---|---|---|
|
|
|
アクションが監査対象となったユーザーの名前 |
|
|
|
クライアントのホスト・マシンの名前 |
|
|
|
ユーザーの端末の識別子 |
|
|
|
ローカル・データベースのセッション・タイム・ゾーンでの監査証跡エントリの作成日時( |
|
|
|
操作の影響を受けたオブジェクトの作成者 |
|
|
|
操作の影響を受けたオブジェクトの名前 |
|
|
|
数値のアクション・タイプ・コード。アクション・タイプに対応する名前は、 |
|
|
|
|
|
|
|
監査対象となった文の詳細を示す、監査証跡エントリについてのテキスト・コメント。 ユーザーが認証された方式も示す。認証方式は、次のいずれか。
|
|
|
|
各Oracleセッションの数値ID |
|
|
|
セッションの各監査証跡エントリの数値ID |
|
|
|
文の実行ごとの数値ID |
|
|
|
アクションによって生成されたOracleエラー・コード。有効な値の例は次のとおりです。
|
|
|
|
UTC(協定世界時)タイム・ゾーンでの監査証跡エントリで作成されたタイムスタンプ( |
|
|
|
Oracle Label Securityが保護する表に追加された列の名前 |
このリリースのOracle Label Securityには、いくつかの制限事項があります。
これらの制限事項は次のとおりです。
CREATE TABLE AS SELECTの制限
Oracle Label Securityポリシーで保護されているスキーマ内でCREATE TABLE AS SELECTの実行を試みると、文は失敗します。
ラベル・タグの制限
ラベル・タグは、データベース内のポリシー間で一意であることが必要です。データベース内で複数のポリシーを使用する場合、異なるポリシー内で同じ数値ラベル・タグは使用できません。
エクスポート制限
Oracle Database 12cリリース1 (12.1)より前では、Oracle Label Securityで不透明型を使用しているため、LBACSYSスキーマをエクスポートできませんでした。Oracle Label Securityをインストールした状態でデータベース全体をエクスポートできますが(パラメータFULL=Y)、LBACSYSスキーマはエクスポートされません。
Oracle Databaseリリース12cから、この制限はなくなりました。エクスポートをサポートできるデータベース・バージョンの詳細は、「データベースの全体エクスポート」を参照してください。
Oracle Label Securityでの削除制限
DROP USER CASCADEは、LBACSYSアカウントで実行しないでください。
AS SYSDBA構文を使用してデータベースにユーザーSYSで接続し、ファイル$ORACLE_HOME/rdbms/admin/catnools.sqlを実行して、Oracle Label Securityを削除します。
関連項目:
プラットフォーム固有のOracleインストレーション・ガイドを参照してください。
共有スキーマのサポートの制限
Oracle Internet Directoryに定義されているユーザー・アカウントに、個々のOracle Label Securityの認可を付与することはできません。ただし、ディレクトリ・ユーザーがマップされている共有スキーマに認可を付与することはできます。
Oracle Label SecurityのファンクションSET_ACCESS_PROFILEをプログラムで使用すると、ユーザーが認証を受けて共有スキーマにマップされた後に使用する、ラベル認可プロファイルを設定できます。Oracle Label Securityでは、Oracle Label Security内でラベル認可が付与されているユーザーと実際のデータベース・ユーザー間のマッピングは施行されません。
非表示列の制限
PL/SQLでは、表にある非表示列の参照は認識されません。コンパイラ・エラーが生成されます。