Release 19 セキュリティ・ガイド - OracleRelease 19 セキュリティ・ガイド 目次...

1538
Release 19 セキュリティ・ガイド 目次 表一覧 タイトルおよび著作権情報 はじめに 対象読者 ドキュメントのアクセシビリティについて 関連ドキュメント 表記規則 Oracle Databaseセキュリティ・ガイドのこのリリースの変更 Oracle Database Security 19cでの変更点 LOBロケータの署名ベース・セキュリティ デフォルトのユーザー・アカウントがスキーマ限定になりました 権限分析ドキュメントのOracle Databaseセキュリティ・ガイドへの移動 スキーマ限定アカウントに対して管理権限を付与または取り消す機能 SASLおよびSASL以外の両方のActive Directory接続の自動サポート 異なるユーザーに対するOracleネイティブ暗号化とSSL認証の同時サポート サーバー証明書の照合におけるホスト名ベースの部分DN一致のサポート トップレベルのSQL文のみを監査する機能 統合監査証跡の読取りパフォーマンスの改善 SYSLOGおよびWindowsイベントビューアの監査レコード・フィールドとして PDB_GUID Oracle Database Security 18cでの変更点 スキーマ限定アカウントを作成する機能 Active DirectoryサービスとOracle Databaseの統合 1

Transcript of Release 19 セキュリティ・ガイド - OracleRelease 19 セキュリティ・ガイド 目次...

  • Release 19

    セキュリティ・ガイド

    目次表一覧タイトルおよび著作権情報はじめに

    対象読者ドキュメントのアクセシビリティについて関連ドキュメント表記規則

    Oracle Databaseセキュリティ・ガイドのこのリリースの変更Oracle Database Security 19cでの変更点

    LOBロケータの署名ベース・セキュリティデフォルトのユーザー・アカウントがスキーマ限定になりました権限分析ドキュメントのOracle Databaseセキュリティ・ガイドへの移動スキーマ限定アカウントに対して管理権限を付与または取り消す機能SASLおよびSASL以外の両方のActive Directory接続の自動サポート異なるユーザーに対するOracleネイティブ暗号化とSSL認証の同時サポートサーバー証明書の照合におけるホスト名ベースの部分DN一致のサポートトップレベルのSQL文のみを監査する機能統合監査証跡の読取りパフォーマンスの改善SYSLOGおよびWindowsイベントビューアの監査レコード・フィールドとしてのPDB_GUID

    Oracle Database Security 18cでの変更点スキーマ限定アカウントを作成する機能Active DirectoryサービスとOracle Databaseの統合

    1

    file:///C/Oracle_Work/SysPDF/FY21Q2_Sysdoc/1218end/index.htmlhttps://www.oracle.com/

  • データ・ディクショナリで機密性の高い資格証明データを暗号化する機能PDBロックダウン・プロファイルの機能強化新しい認証および認定のパラメータSYSLOGまたはWindowsイベントビューアに統合監査証跡レコードを書き込む機能Oracle Data Pumpを使用して統合監査証跡をエクスポートおよびインポートする機能

    1 Oracle Databaseセキュリティの概要Oracle Databaseセキュリティについてその他のOracle Databaseセキュリティ・リソース

    第I部 ユーザー認証および認可の管理2 Oracle Databaseユーザーのセキュリティの管理

    ユーザー・セキュリティについてユーザー・アカウントの作成

    共通ユーザーおよびローカル・ユーザーについて共通ユーザーについてPDBへの接続によるCDB共通ユーザーへの影響ローカル・ユーザーについて

    ユーザー・アカウントの作成者とは最小限のデータベース権限を持つ新しいユーザー・アカウントの作成新しいアカウントのユーザー名の作成に関する制限事項

    ユーザー名の一意性マルチテナント環境のユーザー名ユーザー名の大/小文字の区別

    ユーザーへのパスワードの割当てユーザーのデフォルト表領域

    ユーザーに対するデフォルト表領域の割当てについてデフォルト表領域を割り当てるためのDEFAULT TABLESPACE句

    ユーザーへの表領域の割当て制限ユーザーへの表領域の割当て制限の割当てについて表領域の割当て制限を割り当てるためのCREATE USER文表領域でのユーザー・オブジェクトに対する割当て限度の制限

    2

  • ユーザーへのUNLIMITED TABLESPACEシステム権限の付与ユーザーの一時表領域

    ユーザーに対する一時表領域の割当てについて一時表領域を割り当てるためのTEMPORARY TABLESPACE句

    ユーザーのプロファイル共通ユーザーまたはローカル・ユーザーの作成

    共通ユーザー・アカウントの作成について共通ユーザー・アカウントを作成するためのCREATE USER文ローカル・ユーザー・アカウントの作成についてローカル・ユーザー・アカウントを作成するためのCREATE USER文

    ユーザーのデフォルト・ロールの作成ユーザー・アカウントの変更

    ユーザー・アカウントの変更について共通またはローカル・ユーザー・アカウントを変更するためのALTERUSER文SYS以外のユーザー・パスワードの変更

    SYS以外のユーザーのパスワードの変更についてPASSWORDコマンドまたはALTER USER文を使用したパスワードの変更

    SYSユーザー・パスワードの変更SYSユーザーのパスワードの変更についてSYSユーザーのパスワードを変更するためのORAPWDユーティリティ

    ユーザー・リソース制限の構成ユーザー・リソース制限についてシステム・リソースのタイプと制限

    ユーザー・セッション・レベルの制限データベース・コール・レベルの制限CPU時間の制限論理読取りの制限その他のリソースの制限

    プロファイルのリソース制限の値プロファイルによるリソースの管理

    3

  • プロファイルについてora_stig_profileユーザー・プロファイルプロファイルの作成CDBプロファイルまたはアプリケーション・プロファイルの作成ユーザーへのプロファイルの割当てプロファイルの削除

    ユーザー・アカウントの削除ユーザー・アカウントの削除についてユーザー・セッションの終了ユーザーがデータベースから切断した後のユーザーの削除についてスキーマにオブジェクトが含まれるユーザーの削除

    Oracle Databaseから提供される事前定義済のスキーマ・ユーザー・アカウント事前定義済のスキーマ・ユーザー・アカウントについて事前定義済の管理アカウント事前定義された非管理ユーザー・アカウント事前定義されたサンプル・スキーマ・ユーザー・アカウント

    データベース・ユーザーおよびプロファイルのデータ・ディクショナリ・ビューユーザーとプロファイルに関する情報を表示するデータ・ディクショナリ・ビューすべてのユーザーと関連情報を検索する問合せすべての表領域の割当て制限を表示する問合せすべてのプロファイルと割り当てられている制限を表示する問合せ各ユーザー・セッションのメモリー使用量を表示する問合せ

    3 認証の構成認証についてパスワード保護の構成

    Oracle Databaseの組込みパスワード保護の概要パスワードの最低要件IDENTIFIED BY句を使用したパスワードの作成パスワード管理ポリシーの使用

    パスワード管理について

    4

  • デフォルト・パスワードが設定されているユーザー・アカウントの検索デフォルト・プロファイルのパスワード設定ALTER PROFILE文を使用したプロファイル制限の設定デフォルトのパスワード・セキュリティ設定の有効化および無効化非アクティブなデータベース・ユーザー・アカウントの自動ロックログイン失敗後のユーザー・アカウントの自動ロック例: CREATE PROFILE文を使用したアカウントのロックユーザー・アカウントの明示的ロックユーザーによる以前のパスワードの再利用の制御パスワード・エイジングおよび期限切れの制御についてCREATE PROFILE文またはALTER PROFILE文を使用したパスワード存続期間の設定ユーザー・アカウントのステータスの確認パスワード変更のライフ・サイクルPASSWORD_LIFE_TIMEプロファイル・パラメータの低い値

    パスワードの複雑度の管理パスワードの複雑度検証についてOracle Databaseによるパスワードの複雑度のチェック方法パスワード複雑度ファンクションを使用できるユーザーverify_function_11G関数のパスワード要件ora12c_verify_functionのパスワード要件ora12c_strong_verify_function関数のパスワード要件ora12c_stig_verify_functionのパスワード要件パスワード複雑度検証のカスタマイズについてパスワード複雑度検証の有効化

    パスワードでの大/小文字の区別の管理SEC_CASE_SENSITIVE_LOGONパラメータおよびパスワードの大/小文字の区別ALTER SYSTEM文を使用したパスワードの大/小文字の区別の有効化安全性の高いロール・パスワードの大/小文字の区別の管理ユーザーのパスワード・バージョンの管理

    5

  • 10Gパスワード・バージョンを使用するユーザーのパスワードの確認と再設定大/小文字の区別がパスワード・ファイルに与える影響大/小文字の区別がデータベース・リンク接続で使用されるパスワードに与える影響

    パスワードのセキュリティへの脅威からの12Cパスワード・バージョンによる保護

    12Cバージョンのパスワード・ハッシュについてOracle Database 12Cパスワード・バージョン構成のガイドライン12Cパスワード・バージョンを排他的に使用するためのOracleDatabaseの構成サーバーとクライアントのログオン・バージョンのデータベース・リンクへの影響12Cパスワード・バージョンを排他的に使用するためのOracleDatabaseクライアントの構成

    パスワード資格証明用の安全性の高い外部パスワード・ストアの管理安全性の高い外部パスワード・ストアについて外部パスワード・ストアの機能外部パスワード・ストアの使用を目的とするクライアントの構成について外部パスワード・ストアの使用を目的とするクライアントの構成例: ウォレット・パラメータが設定されたサンプルSQLNET.ORAファイル外部パスワード・ストア資格証明の管理

    外部パスワード・ストアの内容のリスト表示外部パスワード・ストアへの資格証明の追加外部パスワード・ストアの資格証明の変更外部パスワード・ストアからの資格証明の削除

    管理ユーザーのパスワードの管理管理ユーザーのパスワード管理について管理ユーザーのLOCKおよびEXPIREDステータスの設定管理ユーザーのパスワード・プロファイル設定管理ユーザーの最後の正常なログイン時間

    6

  • 管理ユーザーのパスワード・ファイルの管理管理ユーザーのパスワード・ファイルの移行管理ユーザーのパスワード・ファイルに対するマルチテナント・オプションの影響管理ユーザーのパスワードの複雑性の検証機能

    データベース管理者の認証データベース管理者の認証について管理者の厳密認証と集中管理

    データベース管理者の厳密認証について管理ユーザーのディレクトリ認証の構成管理ユーザーのKerberos認証の構成管理ユーザーのSecure Sockets Layer認証の構成

    オペレーティング・システムを使用したデータベース管理者の認証パスワードを使用したデータベース管理者の認証データベース管理者認証のパスワード・ファイルを使用するリスク

    ユーザーのデータベース認証データベース認証についてデータベース認証の利点データベースで認証されるユーザーの作成

    スキーマ限定アカウントスキーマ限定アカウントについてスキーマ限定アカウントの作成スキーマ限定アカウントの変更

    ユーザーのオペレーティング・システム認証ユーザーのネットワーク認証

    Secure Sockets Layerを使用した認証サード・パーティ・サービスを使用した認証

    サード・パーティ・サービスを使用した認証についてKerberosを使用した認証RADIUSを使用した認証ディレクトリベース・サービスを使用した認証

    7

  • 公開キー・インフラストラクチャを使用した認証PDBのオペレーティング・システム・ユーザーの構成

    PDBのオペレーティング・システム・ユーザーの構成についてPDBのオペレーティング・システム・ユーザーの構成

    ユーザーのグローバル認証とグローバル認可グローバルなユーザー認証と認可の構成についてディレクトリ・サービスで認可されるユーザーの構成

    プライベート・スキーマを持つグローバル・ユーザーの作成スキーマを共有する複数のエンタープライズ・ユーザーの作成

    グローバル認証とグローバル認可の利点ユーザーとパスワード認証のための外部サービスの構成

    外部認証について外部認証の利点外部認証の有効化外部認証されるユーザーの作成オペレーティング・システムを使用したユーザー・ログインの認証ネットワーク認証を使用したユーザー・ログインの認証

    複数層の認証と認可クライアント、アプリケーション・サーバーおよびデータベース・サーバーの管理とセキュリティ複数層環境でのユーザー識別情報の保持

    プロキシ認証に対する中間層サーバーの使用プロキシ認証についてプロキシ認証の利点プロキシ・ユーザー・アカウントの作成者とはプロキシ・ユーザー・アカウントの作成のガイドラインプロキシ・ユーザー・アカウントの作成と、作成したプロキシ・ユーザー・アカウントを介したユーザー接続の認可プロキシ・ユーザー・アカウントと、そのアカウントを介して接続するユーザーの認可安全性の高い外部パスワード・ストアとプロキシ認証の使用プロキシ認証を使用した実際のユーザーの識別情報の引渡し

    8

  • 中間層の権限の制限ユーザーのプロキシとして機能し、ユーザーを認証する中間層を認可する方法他の方式で認証されたユーザーのプロキシとして機能するために、中間層を認可する方法中間層を介したデータベースへのユーザーの再認証パスワード・ベースのプロキシ認証の使用エンタープライズ・ユーザーでのプロキシ認証の使用

    データベースに認識されないアプリケーション・ユーザーの識別でのクライアント識別子の使用

    クライアント識別子について中間層システムでのクライアント識別子の使用方法CLIENT_IDENTIFIER属性を使用したユーザー識別情報の保持グローバル・アプリケーション・コンテキストから独立したCLIENT_IDENTIFIERの使用グローバル・アプリケーション・コンテキストから独立したCLIENT_IDENTIFIERの設定DBMS_SESSION PL/SQLパッケージを使用したクライアント識別子の設定とクリアシステム全体でのCLIENTID_OVERWRITEイベントの有効化現在のセッションに対するCLIENTID_OVERWRITEイベントの有効化CLIENTID_OVERWRITEイベントの無効化

    ユーザー認証のデータ・ディクショナリ・ビュー4 権限とロール認可の構成

    権限とロールについて権限付与の対象者Oracleマルチテナント・オプションが権限に影響を与えるしくみ管理権限の管理

    管理権限についてユーザーへの管理権限の付与標準データベース操作のためのSYSDBAおよびSYSOPER権限バックアップおよびリカバリ操作のSYSBACKUP管理権限Oracle Data Guard操作のSYSDG管理権限

    9

  • 透過的データ暗号化のSYSKM管理権限Oracle Real Application ClustersのSYSRAC管理権限

    システム権限の管理システム権限についてシステム権限を制限することが重要な理由

    システム権限の制限の重要性についてSYSスキーマのオブジェクトへのユーザー・アクセス

    システム権限の付与と取消しシステム権限を付与したり、取り消すことができるユーザーANY権限とPUBLICロールについて

    共通およびローカルに付与される権限の管理共通およびローカルに付与される権限について共通に付与されるシステム権限の使用方法共通に付与されるオブジェクト権限の使用方法PDBへのアクセス権限の付与または取消し例: マルチテナント環境での権限の付与共通ユーザーによるCONTAINER_DATAオブジェクトの情報の表示

    ルートに接続中のルート、CDBおよびPDBに関するデータの表示特定のPDBのデータを問い合せる共通ユーザーの有効化

    共通ロールおよびローカル・ロールの管理共通ロールおよびローカル・ロールの管理について共通ロールの使用方法マルチテナント環境でPUBLICロールが機能するしくみ共通ロールの作成、変更または削除に必要な権限共通ロールの作成の規則共通ロールの作成ローカル・ロールの作成の規則ローカル・ロールの作成共通ユーザーとローカル・ユーザーに対するロールの付与と取消し

    ユーザー・ロールの管理ユーザー・ロールについて

    10

  • ユーザー・ロールの概要ロールの機能ロールの特性とそのメリットロールの通常の使用アプリケーション・ロールの一般的な使用方法ユーザー・ロールの一般的な使用方法ロールがユーザーの権限範囲に与える影響PL/SQLブロックでのロールの機能

    定義者権限を持つ名前付きブロックで使用されるロール実行者権限を持つ名前付きブロックおよび無名PL/SQLブロックで使用されるロール

    ロールによるDDL使用の支援または制限オペレーティング・システムによるロールの支援方法分散環境でのロールの機能

    Oracle Databaseのインストールで事前に定義されているロールロールの作成

    ロールの作成についてパスワードを使用して認証されるロールの作成パスワード認証のないロールの作成外部またはグローバルのロールの作成ロールの変更

    ロール認可のタイプの指定データベースを使用したロールの認可アプリケーションを使用したロールの認可外部ソースを使用したロールの認可オペレーティング・システムを使用したロールの認可ネットワーク・クライアントを使用したロールの認可エンタープライズ・ディレクトリ・サービスによるグローバル・ロールの認可

    ロールの付与と取消しロールの付与と取消しについてロールを付与したり、取り消すことができるユーザー

    11

  • プログラム・ユニットに対するロールの付与と取消しロールの削除SQL*Plusユーザーによるデータベース・ロール使用の制限

    セキュリティに関する潜在的な問題となる非定型ツールの使用PRODUCT_USER_PROFILEシステム表がロールを制限できるしくみストアド・プロシージャがビジネス・ロジックをカプセル化できるしくみ

    ロール権限およびセキュア・アプリケーション・ロールPDBロックダウン・プロファイルを使用したPDBでの操作の制限

    PDBロックダウン・プロファイルについてPDBロックダウン・プロファイルの継承デフォルトのPDBロックダウン・プロファイルPDBロックダウン・プロファイルの作成PDBロックダウン・プロファイルの有効化または無効化PDBロックダウン・プロファイルの削除

    オブジェクト権限の管理オブジェクト権限についてオブジェクト権限を付与できるユーザーオブジェクト権限の付与と取消し

    オブジェクト権限の付与と取消しについてALL句がすべての使用可能なオブジェクト権限を付与または取り消すしくみ

    READオブジェクト権限とSELECTオブジェクト権限READおよびSELECTオブジェクト権限の管理についてデータベース内の任意の表を問い合せるためのREADオブジェクト権限の使用のユーザーへの許可READおよびREAD ANY TABLE権限に対する制限

    シノニムでのオブジェクト権限の使用アプリケーション共通オブジェクトの共有

    メタデータリンク・アプリケーション共通オブジェクトデータリンク・アプリケーション共通オブジェクト拡張データリンク・アプリケーション共通オブジェクト

    12

  • 表に対する権限表に対する権限がデータ操作言語操作に与える影響表に対する権限がデータ定義言語操作に与える影響

    ビューに対する権限ビューの作成に必要な権限ビューの使用による表セキュリティの強化

    プロシージャ権限プロシージャ権限に対するEXECUTE権限の使用プロシージャの実行とセキュリティ・ドメインプロシージャの作成または置換に必要なシステム権限プロシージャのコンパイルに必要なシステム権限プロシージャに対する権限がパッケージおよびパッケージ・オブジェクトに与える影響

    プロシージャに対する権限がパッケージおよびパッケージ・オブジェクトに与える影響について例: 1つのパッケージ内で使用されるプロシージャ権限例: プロシージャ権限およびパッケージ・オブジェクト

    タイプ権限名前付きの型に対するシステム権限名前付きの型のオブジェクト権限名前付きの型のメソッド実行モデル型の作成と型を使用した表の作成に必要な権限例: 型の作成と型を使用した表の作成に必要な権限型アクセスとオブジェクト・アクセスの権限型の依存性

    ユーザーへの権限とロールの付与ユーザーおよびロールへのシステム権限とロールの付与

    ユーザーおよびロールへのシステム権限とロールの付与のための権限例: ユーザーへのシステム権限とロールの付与例: ディレクトリ・オブジェクトに対するEXECUTE権限の付与権限受領ユーザーによる権限付与を可能にするADMINオプションの使用

    13

  • GRANT文を使用した新規ユーザーの作成ユーザーおよびロールへのオブジェクト権限の付与

    ユーザーおよびロールへのオブジェクト権限の付与についてWITH GRANT OPTION句が機能するしくみオブジェクト所有者にかわるオブジェクト権限の付与列に対する権限の付与行レベルのアクセス制御

    ユーザーからの権限とロールの取消しシステム権限とロールの取消しオブジェクト権限の取消し

    オブジェクト権限の取消しについて複数のオブジェクト権限の取消しオブジェクト所有者にかわるオブジェクト権限の取消し列を選択するオブジェクト権限の取消しREFERENCESオブジェクト権限の取消し

    権限の取消しによる連鎖的な影響システム権限の取消しによる連鎖的な影響オブジェクト権限の取消しによる連鎖的な影響

    PUBLICロールに対する権限の付与と取消しオペレーティング・システムまたはネットワークを使用したロールの付与

    オペレーティング・システムまたはネットワークを使用したロールの付与についてオペレーティング・システムのロール識別機能オペレーティング・システムのロール管理機能OS_ROLESがTRUEに設定されている場合のロールの付与と取消しOS_ROLESがTRUEに設定されている場合のロールの有効化と無効化オペレーティング・システムによるロール管理使用時のネットワーク接続

    SET ROLEおよびデフォルト・ロールの設定による権限の付与と取消しの機能権限の付与と取消しが有効になるときSET ROLE文が付与と取消しに与える影響ユーザーのデフォルト・ロールの指定

    14

  • ユーザーが使用可能にできるロールの最大数ユーザー権限およびロールのデータ・ディクショナリ・ビュー

    権限およびロール付与の情報を確認するデータ・ディクショナリ・ビューすべてのシステム権限の付与を表示する問合せすべてのロール付与を表示する問合せユーザーに付与されているオブジェクト権限を表示する問合せセッションの現在の権限ドメインを表示する問合せデータベースのロールを表示する問合せロールの権限ドメイン情報を表示する問合せ

    5 権限分析を実行した権限の使用の確認権限分析とは

    権限分析について権限分析の利点およびユースケース

    最低限の権限のベスト・プラクティスセキュアなアプリケーションの開発

    権限分析を実行できるユーザー権限分析のタイプマルチテナント環境による権限分析への影響について権限分析でのプリコンパイル済データベース・オブジェクトの処理

    権限分析ポリシーの作成および管理権限分析ポリシーの作成および管理について権限分析の管理の一般ステップ権限分析ポリシーの作成権限分析ポリシーの有効化権限分析ポリシーの作成および有効化の例

    例: データベース全体の権限の権限分析例: 2つのロールの権限の使用状況の権限分析例: SQL*Plus使用中の権限の権限分析例: SQL*Plusアクセス中のPSMITH権限の権限分析

    権限分析ポリシーの無効化権限分析レポートの生成

    15

  • 権限分析レポートの生成について複数の名前付き取得実行を管理するための一般的なプロセスDBMS_PRIVILEGE_CAPTUREによる権限分析レポートの生成Cloud Controlによる権限分析レポートの生成Cloud Controlによる権限分析レポートへのアクセス

    権限分析ポリシーの削除Cloud Controlによるロールの作成および権限の管理

    Cloud Controlでの権限分析レポートからのロールの作成Cloud Controlによるロールおよび権限の取消しおよび再付与Cloud Controlによる取消しまたは再付与スクリプトの生成

    取消しおよび再付与スクリプトの生成について取消しスクリプトの生成再付与スクリプトの生成

    チュートリアル: 取得実行の使用によるANY権限使用の分析ステップ1: ユーザー・アカウントの作成ステップ2: 権限分析ポリシーの作成および有効化ステップ3: READ ANY TABLEシステム権限の使用ステップ4: 権限分析ポリシーの無効化ステップ5: 権限分析レポートの生成および表示ステップ6: 2番目の取得実行の作成ステップ7: この例で使用したコンポーネントの削除

    チュートリアル: DBAロールを持つユーザーによる権限の使用の分析ステップ1: ユーザー・アカウントの作成ステップ2: 権限分析ポリシーの作成および有効化ステップ3: データベース・チューニング操作の実行ステップ4: 権限分析ポリシーの無効化ステップ5: 権限分析レポートの生成および表示ステップ6: この例で使用したコンポーネントの削除

    権限分析ポリシーおよびレポート・データ・ディクショナリ・ビュー6 Microsoft Active Directoryによる集中管理ユーザーの構成

    Microsoft Active Directoryによる集中管理ユーザーの概要

    16

  • Oracle DatabaseとMicrosoft Active Directoryの統合についてMicrosoft Active Directoryによる集中管理ユーザーのしくみ集中管理ユーザーとMicrosoft Active Directoryによるアーキテクチャサポートされている認証方式Microsoft Active Directoryによる集中管理ユーザーでサポートされているユーザー集中管理ユーザーに対するOracleマルチテナント・オプションの影響

    Oracle DatabaseとMicrosoft Active Directoryの統合の構成Oracle DatabaseとMicrosoft Active Directoryの接続の構成についてMicrosoft Active Directoryへの接続

    ステップ1: Microsoft Active DirectoryでのOracleサービス・ディレクトリ・ユーザー・アカウントの作成ステップ2: パスワード認証のためにパスワード・フィルタをインストールしてMicrosoft Active Directoryスキーマを拡張ステップ3: Oracle Databaseソフトウェアのインストール(必要な場合)ステップ4: dsi.oraまたはldap.oraファイルの作成

    dsi.oraファイルとldap.oraファイルの比較dsi.oraファイルの使用についてdsi.oraファイルの作成ldap.oraファイルの使用についてldap.oraファイルの作成

    ステップ5: セキュアな接続のためのActive Directory証明書のリクエストステップ6: セキュアな接続のためのウォレットの作成ステップ7: Microsoft Active Directory接続の構成

    Microsoft Active Directory接続の構成についてDatabaseシステム・パラメータを使用した手動アクセスの構成Database Configuration Assistant GUIを使用したアクセスの構成Database Configuration Assistantのサイレント・モードを使用したアクセスの構成

    ステップ8: Oracleウォレットの確認ステップ9: 統合のテスト

    集中管理ユーザーの認証の構成

    17

  • 集中管理ユーザーに対するパスワード認証の構成集中管理ユーザーに対するパスワード認証の構成について集中管理ユーザーのパスワード認証の構成パスワード認証を使用したOracle Databaseへのログイン

    集中管理ユーザーのKerberos認証の構成集中管理ユーザーのPKI証明書を使用した認証の構成

    集中管理ユーザーの認可の構成集中管理ユーザーの認可の構成について共有データベース・グローバル・ユーザーへのディレクトリ・グループのマッピンググローバル・ロールへのディレクトリ・グループのマッピングデータベース・グローバル・ユーザーへのディレクトリ・ユーザーの排他的マッピングユーザー・マッピング定義の変更または移行管理ユーザーの構成

    共有アクセス・アカウントを使用したデータベース管理ユーザーの構成排他的マッピングを使用したデータベース管理ユーザーの構成

    集中管理ユーザー・ログオン情報の確認Microsoft Active Directoryのアカウント・ポリシーとのOracle Databaseの統合

    7 定義者権限および実行者権限のセキュリティの管理定義者権限および実行者権限についてプロシージャに対する権限が定義者権限に与える影響プロシージャに対する権限が実行者権限に与える影響実行者権限プロシージャを作成する場合プロシージャ・コールおよびビュー・アクセスの実行者権限の制御

    スキーマの権限が実行者権限プロシージャの使用に与える影響INHERIT [ANY] PRIVILEGES権限による権限アクセスの制御方法他のユーザーへのINHERIT PRIVILEGES権限の付与例: 実行するユーザーへのINHERIT PRIVILEGESの付与例: INHERIT PRIVILEGESの取消し他のユーザーへのINHERIT ANY PRIVILEGES権限の付与

    18

  • 例: 信頼できるプロシージャ所有者へのINHERIT ANY PRIVILEGESの付与INHERIT PRIVILEGESおよびINHERIT ANY PRIVILEGESの管理

    ビューの定義者権限および実行者権限ビューの定義者権限および実行者権限の制御についてCREATE VIEW文のBEQUEATH句の使用実行するユーザーのユーザー名またはユーザーIDの確認BEQUEATH DEFINERおよびBEQUEATH_CURRENT_USERビューの確認

    定義者権限および実行者権限のコード・ベース・アクセス制御の使用アプリケーションのコード・ベース・アクセス制御の使用についてコード・ベースのアクセス制御ロールをプログラム・ユニットに付与できる者コード・ベース・アクセス制御による実行者権限のプログラム・ユニットの処理方法コード・ベース・アクセス制御による定義者権限のプログラム・ユニットの処理方法CBAC付与のためのユーザーへのデータベース・ロールの付与プログラム・ユニットに対するデータベース・ロールの付与と取消しチュートリアル: コード・ベース・アクセス制御による機密データへのアクセス制御

    このチュートリアルについてステップ1: ユーザーを作成してHRにCREATE ROLE権限を付与ステップ2: print_employees実行者権限プロシージャを作成ステップ3: hr_clerkロールを作成して権限を付与ステップ4: コード・ベース・アクセス制御HR.print_employeesプロシージャのテストステップ5: view_emp_roleロールを作成して権限を付与ステップ6: HR.print_employeesプロシージャの再テストステップ7: このチュートリアルのコンポーネントの削除

    データベース・リンクの定義者権限の制御データベース・リンクの定義者権限の制御について他のユーザーへのINHERIT REMOTE PRIVILEGES権限の付与例: 接続ユーザーのINHERIT REMOTE PRIVILEGESの付与

    19

  • 他のユーザーへの 権限の付与INHERIT [ANY] REMOTE PRIVILEGES権限の取消し例: INHERIT REMOTE PRIVILEGES権限の取消し例: PUBLICからのINHERIT REMOTE PRIVILEGES権限の取消しチュートリアル: 定義者権限プロシージャでのデータベース・リンクの使用

    このチュートリアルについてステップ1: ユーザー・アカウントの作成ステップ2: ユーザーIDを格納する表の作成(ユーザーdbuser2として)ステップ3: データベース・リンクおよび定義者権限プロシージャの作成(ユーザーdbuser1として)ステップ4: 定義者権限プロシージャのテストステップ5: このチュートリアルのコンポーネントの削除

    8 PL/SQLパッケージおよびタイプでのファイングレイン・アクセスの管理PL/SQLパッケージおよびタイプでのファイングレイン・アクセスの管理について外部ネットワーク・サービスに対するファイングレイン・アクセス・コントロールについてOracleウォレットへのアクセス制御について外部ネットワーク・サービスを使用するパッケージに依存しているアップグレードされたアプリケーション外部ネットワーク・サービスのアクセス制御の構成

    外部ネットワーク・サービスのアクセス制御の構成の構文例: 外部ネットワーク・サービスのアクセス制御の構成外部ネットワーク・サービスのアクセス制御権限の取消し例: 外部ネットワーク・サービス権限の取消し

    Oracleウォレットへのアクセス制御の構成Oracleウォレットへのアクセス制御の構成についてステップ1: Oracleウォレットの作成ステップ2: Oracleウォレットのアクセス制御権限の構成ステップ3: パスワードとクライアント証明書を使用するHTTPリクエストの作成

    パスワードとクライアント証明書を使用するHTTPリクエストの作成他のアプリケーションとセッションを共有している場合に、リクエス

    INHERIT ANY REMOTE PRIVILEGES

    20

  • ト・コンテキストを使用してウォレットを保留認証にクライアント証明書のみを使用認証にパスワードを使用

    Oracleウォレットのアクセス制御権限の取消し外部ネットワーク・サービスのアクセス制御の構成の例

    例: 1つのロールおよびネットワーク接続のアクセス制御の構成例: ユーザーおよびロールのアクセス制御の構成例: DBA_HOST_ACESビューを使用した付与権限の表示例: 非共有ウォレットのパスワードを使用するACLアクセスの構成例: 共有データベース・セッションに使用するウォレットのACLアクセスの構成

    ネットワーク・ホスト・コンピュータのグループの指定複数のアクセス制御リスト割当てでのホスト・コンピュータの優先順位ポート範囲指定によるアクセス制御リスト割当てでのホストの優先順位ネットワーク・ホストへのユーザー・アクセスに影響を与える権限割当てのチェック

    ネットワーク・ホストへのユーザー・アクセスに影響を与える権限割当てについてユーザーのネットワーク接続およびドメインに対する権限のチェック方法例: 管理者によるユーザー・ネットワーク・アクセス制御権限のチェックユーザーによる各自のネットワーク接続およびドメインに対する権限のチェック方法例: ユーザーによるネットワーク・アクセス制御権限のチェック

    Javaデバッグ・ワイヤ・プロトコル操作のネットワーク・アクセスの構成ユーザー・アクセス用に構成されたアクセス制御リストのデータ・ディクショナリ・ビュー

    9 Enterprise Managerによるマルチテナント環境のセキュリティの管理Enterprise Managerによるマルチテナント環境のセキュリティの管理についてEnterprise Managerによるマルチテナント環境へのログイン

    CDBまたはPDBへのログイン別のPDBへの、またはルートへの切替え

    Enterprise Managerの共通ユーザーおよびローカル・ユーザーの管理Enterprise Managerの共通ユーザー・アカウントの作成

    21

  • Enterprise Managerの共通ユーザー・アカウントの編集Enterprise Managerの共通ユーザー・アカウントの削除Enterprise Managerのローカル・ユーザー・アカウントの作成Enterprise Managerのローカル・ユーザー・アカウントの編集Enterprise Managerのローカル・ユーザー・アカウントの削除

    Enterprise Managerの共通およびローカル・ロールおよび権限の管理Enterprise Managerの共通ロールの作成Enterprise Managerの共通ロールの編集Enterprise Managerの共通ロールの削除Enterprise Managerの共通権限付与の取消しEnterprise Managerのローカル・ロールの作成Enterprise Managerのローカル・ロールの編集Enterprise Managerのローカル・ロールの削除Enterprise Managerのローカル権限付与の取消し

    第II部 アプリケーション開発のセキュリティ10 アプリケーション開発者のセキュリティの管理

    アプリケーション・セキュリティ・ポリシーについてアプリケーション・ベースのセキュリティの使用に関する考慮事項

    アプリケーション・ユーザーはデータベース・ユーザーでもあるかアプリケーション内またはデータベース内でのセキュリティ規定

    アプリケーション設計におけるパスワードの保護アプリケーションでのパスワードの保護に関する一般的なガイドライン

    プラットフォーム固有のセキュリティへの脅威パスワード入力を処理するアプリケーションの設計のガイドラインパスワードの形式と動作の構成のガイドラインSQLスクリプトにおけるパスワードの処理のガイドライン

    外部パスワード・ストアを使用したパスワードの保護ORAPWDユーティリティを使用したパスワードの保護例: パスワードを読み取るためのJavaコード

    外部プロシージャの保護外部プロシージャの保護について

    22

  • 資格証明の認証に対するextprocの構成に関する一般プロセスextprocプロセス認証および偽装設定の予期される動作外部プロシージャの認証の構成レガシー・アプリケーションの外部プロシージャ

    LOBロケータの署名を使用したLOBの保護LOBロケータの署名を使用したLOBの保護についてLOBロケータの署名キーの暗号化の管理

    アプリケーション権限の管理アプリケーション権限の管理にロールを使用する利点アプリケーションへのアクセスを制御するセキュア・アプリケーション・ロールの作成

    ステップ1: セキュア・アプリケーション・ロールの作成ステップ2: アプリケーションに対するアクセス・ポリシーを定義するPL/SQLパッケージの作成

    アプリケーションに対するアクセス・ポリシーを定義するPL/SQLパッケージの作成についてアプリケーションに対するアクセス・ポリシーを定義するPL/SQLパッケージまたはプロシージャの作成セキュア・アプリケーション・ロールのテスト

    権限とユーザーのデータベース・ロールとの関連付けユーザーの権限が現在のデータベース・ロールのみである理由ロールを自動的に使用可能または使用禁止にするSET ROLE文の使用

    スキーマを使用したデータベース・オブジェクトの保護一意スキーマでのデータベース・オブジェクトの保護共有スキーマでのデータベース・オブジェクトの保護

    アプリケーションでのオブジェクト権限アプリケーション開発者に必要なオブジェクト権限に関する知識オブジェクト権限によって許可されるSQL文

    データベース通信のセキュリティを強化するためのパラメータプロトコル・エラーによってデータベースで受信した不正パケット不正パケット受信後のサーバー実行の制御認証の最大試行回数の構成

    23

  • データベース・バージョン・バナーの表示構成不正なアクセスおよびユーザー・アクションの監査に関するバナーの構成

    第III部 データへのアクセス制御11 アプリケーション・コンテキストを使用したユーザー情報の取得

    アプリケーション・コンテキストについてアプリケーション・コンテキストとはアプリケーション・コンテキストの構成要素アプリケーション・コンテキストの値の格納場所アプリケーション・コンテキストを使用する利点エディションがアプリケーション・コンテキストの値に与える影響マルチテナント環境でのアプリケーション・コンテキスト

    アプリケーション・コンテキストの種類データベース・セッション・ベースのアプリケーション・コンテキストの使用

    データベース・セッション・ベースのアプリケーション・コンテキストについてデータベース・セッション・ベースのアプリケーション・コンテキストのコンポーネントデータベース・セッション・ベースのアプリケーション・コンテキストの作成

    データベース・セッション・ベースのアプリケーション・コンテキストの作成についてデータベース・セッション・ベースのアプリケーション・コンテキストの作成複数のアプリケーションのデータベース・セッション・ベースのアプリケーション・コンテキスト

    データベース・セッション・ベースのアプリケーション・コンテキストを設定するためのパッケージの作成

    データベース・セッション・ベースのアプリケーション・コンテキストを管理するパッケージについてSYS_CONTEXTファンクションを使用したセッション情報の取得SYS_CONTEXT設定の確認SYS_CONTEXTでの動的SQLパラレル問合せでのSYS_CONTEXT

    24

  • データベース・リンクでのSYS_CONTEXTセッション情報を設定するためのDBMS_SESSION.SET_CONTEXT例: アプリケーション・コンテキストの値を作成する単純なプロシージャ

    データベース・セッションのアプリケーション・コンテキスト・パッケージを実行するログオン・トリガー例: 単純なログイン・トリガーの作成例: 本番環境用のログイン・トリガーの作成例: 開発環境用のログイン・トリガーの作成例: データベース・セッション・ベースのアプリケーション・コンテキストの作成と使用

    ステップ1: ユーザー・アカウントの作成とユーザーSCOTTがアクティブであることの確認ステップ2: データベース・セッション・ベースのアプリケーション・コンテキストの作成ステップ3: セッション・データを取得してアプリケーション・コンテキストを設定するパッケージの作成ステップ4: パッケージに対するログイン・トリガーの作成ステップ5: アプリケーション・コンテキストのテストステップ6: このチュートリアルのコンポーネントの削除

    データベース・セッション・ベースのアプリケーション・コンテキストの外部での初期化

    データベース・セッション・ベースのアプリケーション・コンテキストの外部による初期化についてユーザーからのデフォルト値他の外部リソースからの値例: 外部化されたデータベース・セッション・ベースのアプリケーション・コンテキストの作成中間層サーバーからのアプリケーション・コンテキスト値の初期化

    データベース・セッション・ベースのアプリケーション・コンテキストのグローバルな初期化

    データベース・セッション・ベースのアプリケーション・コンテキストのグローバルな初期化についてLDAPでのデータベース・セッション・ベースのアプリケーション・

    25

  • コンテキストの使用グローバルに初期化されたデータベース・セッション・ベースのアプリケーション・コンテキストの動作データベース・セッション・ベースのアプリケーション・コンテキストのグローバルな初期化

    外部化されたデータベース・セッション・ベースのアプリケーション・コンテキスト

    グローバル・アプリケーション・コンテキストグローバル・アプリケーション・コンテキストについてグローバル・アプリケーション・コンテキストの使用方法グローバル・アプリケーション・コンテキストのコンポーネントOracle Real Application Clusters環境でのグローバル・アプリケーション・コンテキストグローバル・アプリケーション・コンテキストの作成

    グローバル・アプリケーション・コンテキストの所有権グローバル・アプリケーション・コンテキストの作成

    グローバル・アプリケーション・コンテキストを管理するためのPL/SQLパッケージ

    グローバル・アプリケーション・コンテキストを管理するパッケージについてエディションがグローバル・アプリケーション・コンテキストのPL/SQLパッケージの結果に与える影響DBMS_SESSION.SET_CONTEXTのusernameおよびclient_idパラメータ全データベース・ユーザーを対象としたグローバル・アプリケーション・コンテキスト値の共有例: 全データベース・ユーザーを対象としてグローバル・アプリケーション値を管理するためのパッケージアプリケーション間を移動するデータベース・ユーザーのグローバル・コンテキスト非データベース・ユーザーのグローバル・アプリケーション・コンテキスト例: 非データベース・ユーザーのグローバル・アプリケーション・コンテキスト値を管理するためのパッケージセッションをクローズする際のセッション・データのクリア

    26

  • クライアント・セッションIDを管理するための中間層アプリケーションへのコールの埋込み

    中間層アプリケーションを使用したクライアント・セッションIDの管理についてステップ1: 中間層アプリケーションを使用したクライアント・セッションIDの取得ステップ2: 中間層アプリケーションを使用したクライアント・セッションIDの設定

    中間層アプリケーションを使用したクライアント・セッションIDの設定について中間層アプリケーションを使用したクライアント・セッションIDの設定クライアント識別子の値のチェック

    ステップ3: 中間層アプリケーションを使用したセッション・データのクリア

    例: クライアント・セッションIDを使用するグローバル・アプリケーション・コンテキストの作成

    このチュートリアルについてステップ1: ユーザー・アカウントの作成ステップ2: グローバル・アプリケーション・コンテキストの作成ステップ3: グローバル・アプリケーション・コンテキストのパッケージの作成ステップ4: 新規作成したグローバル・アプリケーション・コンテキストのテストステップ5: セッションIDの変更とグローバル・アプリケーション・コンテキストの再テストステップ6: このチュートリアルのコンポーネントの削除

    グローバル・アプリケーション・コンテキスト・プロセス単純なグローバル・アプリケーション・コンテキスト・プロセス軽量ユーザー用のグローバル・アプリケーション・コンテキスト・プロセス

    クライアント・セッション・ベースのアプリケーション・コンテキストの使用クライアント・セッション・ベースのアプリケーション・コンテキストについてCLIENTCONTEXTネームスペースへの値の設定

    27

  • CLIENTCONTEXTネームスペースの取得例: クライアント・セッション・ベース・コンテキストのクライアント・セッションID値の取得CLIENTCONTEXTネームスペースの設定のクリアCLIENTCONTEXTネームスペースのすべての設定のクリア

    アプリケーション・コンテキストのデータ・ディクショナリ・ビュー12 Oracle Virtual Private Databaseを使用したデータ・アクセスの制御

    Oracle Virtual Private DatabaseについてOracle Virtual Private Database

    Oracle Virtual Private Databaseポリシーを使用するメリットアプリケーションではなくデータベース・オブジェクトに基づくセキュリティ・ポリシーOracle Databaseによるポリシー関数の評価方法の制御

    Oracle Virtual Private Databaseポリシーの作成者とはOracle Virtual Private Databaseポリシー関数を実行するための権限Oracle Virtual Private Databaseでのアプリケーション・コンテキストの使用マルチテナント環境でのOracle Virtual Private Database

    Oracle Virtual Private Databaseポリシーのコンポーネント動的なWHERE句を生成する関数保護するオブジェクトに関数を付加するポリシー

    Oracle Virtual Private Databaseのポリシーの構成Oracle Virtual Private Databaseポリシーについてデータベース表、ビューまたはシノニムへのポリシーの付加例: 表への単純なOracle Virtual Private Databaseポリシーの付加特定のSQL文に対するポリシーの規定例: DBMS_RLS.ADD_POLICYを使用したSQL文の指定ポリシーを使用した列データ表示の制御

    列レベルOracle Virtual Private Databaseのポリシー例: 列レベルのOracle Virtual Private Databaseポリシーの作成問合せに関連する列の行のみの表示機密性の高い列をNULL値で表示するための列のマスク例: Oracle Virtual Private Databaseポリシーへの列のマスクの追加

    28

  • Oracle Virtual Private Databaseのポリシー・グループOracle Virtual Private Databaseポリシー・グループについてOracle Virtual Private Databaseの新しいポリシー・グループの作成SYS_DEFAULTポリシー・グループを使用したデフォルト・ポリシー・グループ各表、ビューまたはシノニムに対する複数のポリシーデータベースへの接続に使用されるアプリケーションの検証

    Oracle Virtual Private Databaseポリシー・タイプを使用したパフォーマンスの最適化

    Oracle Virtual Private Databaseポリシー・タイプについてポリシー関数を自動再実行するための動的ポリシー・タイプ例: DBMS_RLS.ADD_POLICYを使用したDYNAMICポリシーの作成ポリシー関数の問合せごとの再実行を回避するための静的ポリシー例: DBMS_RLS.ADD_POLICYを使用した静的ポリシーの作成例: 複数オブジェクト間でポリシーを共有するための共有の静的ポリシー静的ポリシーおよび共有の静的ポリシーを使用する場合変更されるアプリケーション・コンテキスト属性の状況依存ポリシー例: DBMS_RLS.ADD_POLICYを使用した状況依存ポリシーの作成例: VPD状況依存ポリシーのキャッシュされた文のリフレッシュ例: 既存の状況依存ポリシーの変更例: 共有の状況依存ポリシーの使用による複数オブジェクト間でのポリシーの共有状況依存ポリシーおよび共有の状況依存ポリシーを使用する場合5種類のOracle Virtual Private Databaseポリシー・タイプの要約

    例: Oracle Virtual Private Databaseポリシーの作成例: 単純なOracle Virtual Private Databaseポリシーの作成

    このチュートリアルについてステップ1: OEユーザー・アカウントがアクティブであることの確認ステップ2: ポリシー関数の作成ステップ3: Oracle Virtual Private Databaseポリシーの作成ステップ4: ポリシーのテスト

    29

  • ステップ5: このチュートリアルのコンポーネントの削除チュートリアル: セッション・ベースのアプリケーション・コンテキスト・ポリシーの実装

    このチュートリアルについてステップ1: ユーザー・アカウントとサンプル表の作成ステップ2: データベース・セッション・ベースのアプリケーション・コンテキストの作成ステップ3: アプリケーション・コンテキストを設定するPL/SQLパッケージの作成ステップ4: アプリケーション・コンテキストのPL/SQLパッケージを実行するログイン・トリガーの作成ステップ5: ログオン・トリガーのテストステップ6: ユーザー・アクセスを自分の注文に制限するPL/SQLポリシー関数の作成ステップ7: 新しいセキュリティ・ポリシーの作成ステップ8: 新しいポリシーのテストステップ9: このチュートリアルのコンポーネントの削除

    例: Oracle Virtual Private Databaseポリシー・グループの実装このチュートリアルについてステップ1: この例で使用するユーザー・アカウントと他のコンポーネントの作成ステップ2: 2つのポリシー・グループの作成ステップ3: ポリシー・グループを制御するPL/SQLファンクションの作成ステップ4: 駆動アプリケーション・コンテキストの作成ステップ5: PL/SQLファンクションのポリシー・グループへの追加ステップ6: ポリシー・グループのテストステップ7: このチュートリアルのコンポーネントの削除

    他のOracle機能でのOracle Virtual Private Databaseの使用Oracle Virtual Private DatabaseポリシーとエディションVPD保護表に対するユーザーの問合せでのSELECT FOR UPDATE文Oracle Virtual Private Databaseポリシーおよび外部結合またはANSI結合Oracle Virtual Private Databaseセキュリティ・ポリシーおよびアプリケーショ

    30

  • ンファイングレイン・アクセス・コントロールのポリシー関数に対する自動再解析Oracle Virtual Private Databaseポリシーとフラッシュバック問合せOracle Virtual Private DatabaseとOracle Label Security

    Oracle Virtual Private Databaseを使用したOracle Label Securityポリシーの規定Oracle Virtual Private DatabaseおよびOracle Label Securityの例外

    EXPDPユーティリティのaccess_methodパラメータを使用したデータのエクスポートユーザー・モデルとOracle Virtual Private Database

    Oracle Virtual Private Databaseのデータ・ディクショナリ・ビュー13 透過的機密データ保護の使用

    透過的機密データ保護について透過的機密データ保護を使用する一般的なステップ透過的機密データ保護ポリシーのユースケース透過的機密データ保護の使用に必要な権限マルチテナント環境が透過的機密データ保護に影響を与えるしくみ透過的機密データ保護ポリシーの作成

    ステップ1: 機密タイプの作成ステップ2: 保護する機密列の識別ステップ3: ADMからデータベースへの機密列リストのインポートステップ4: 透過的機密データ保護ポリシーの作成

    透過的機密データ保護ポリシーの作成について透過的機密データ保護ポリシーの作成Oracle Data Redactionまたは仮想プライベート・データベース機能オプションの設定透過的機密データ保護ポリシーの条件の設定DBMS_TSDP_PROTECT.ADD_POLICYプロシージャの指定

    ステップ5: ポリシーと機密タイプの関連付けステップ6: 透過的機密データ保護ポリシーの有効化

    保護されたソースの現在のデータベースの保護の有効化

    31

  • 特定の表の列の保護の有効化特定の列タイプの保護の有効化

    ステップ7: 他のデータベースへのポリシーのエクスポート(オプション)透過的機密データ保護ポリシーの変更透過的機密データ保護ポリシーの無効化透過的機密データ保護ポリシーの削除事前定義のREDACT_AUDITポリシーを使用したバインド値のマスク

    REDACT_AUDITポリシーについて機密列に関連付けられている変数

    機密列に関連付けられた変数について条件式のバインド変数および機密列同じSELECT項目に表示されるバインド変数および機密列INSERTまたはUPDATE操作の機密列に割り当てられる式のバインド変数

    ビューでの機密列のバインド変数の動作REDACT_AUDITポリシーの無効化REDACT_AUDITポリシーの有効化

    データ・リダクションでの透過的機密データ保護ポリシーOracle VPDポリシーでの透過的機密データ保護ポリシーの使用

    TSDPポリシーとOracle Virtual Private Databaseポリシーの併用についてTSDPポリシーに使用されるDBMS_RLS.ADD_POLICYパラメータチュートリアル: 仮想プライベート・データベース保護を使用するTSDPポリシーの作成

    ステップ1: hr_appuserユーザー・アカウントの作成ステップ2: 機密列の識別ステップ3: Oracle Virtual Private Database関数の作成ステップ4: 透過的機密データ保護ポリシーの作成および有効化ステップ5: 透過的機密データ保護ポリシーのテストステップ6: このチュートリアルのコンポーネントの削除

    統合監査での透過的機密データ保護ポリシーの使用統合監査ポリシーでのTSDPポリシーの使用についてTSDPポリシーに使用される統合監査ポリシーの設定

    32

  • ファイングレイン監査での透過的機密データ保護ポリシーの使用ファイングレイン監査でのTSDPポリシーの使用についてTSDPポリシーに使用されるファイングレイン監査パラメータ

    TDE列暗号化での透過的機密データ保護ポリシーの使用TDE列暗号化でのTSDPポリシーの使用についてTSDPポリシーに使用されるTDE列暗号化ENCRYPT句の設定

    透過的機密データ保護のデータ・ディクショナリ・ビュー14 データ・ディクショナリでの機密性の高い資格証明データの暗号化

    データ・ディクショナリでの機密正の高い資格証明データの暗号化について機密性の高いデータの暗号化に対するマルチテナント・オプションの影響システム表の機密性の高い資格証明データの暗号化SYS.LINK$システム表での機密正の高い資格証明データのキー更新システム表での機密性の高い資格証明データの削除失われたキーストアとデータベース・リンクの機能の復元暗号化データ・ディクショナリ資格証明のデータ・ディクショナリ・ビュー

    15 手動によるデータ暗号化暗号化で解決しないセキュリティの問題

    原則1: 暗号化はアクセス制御の問題を解決しない原則2: 暗号化は不正な管理者からデータを保護しない原則3: すべてのデータを暗号化してもデータは保護されない

    データ暗号化の課題暗号化され索引付けされたデータ生成された暗号化キー転送された暗号化キー暗号化キーの格納

    暗号化キーの格納についてデータベースへの暗号化キーの格納オペレーティング・システムへの暗号化キーの格納ユーザー自身による暗号化キーの管理透過的データベース暗号化および表領域暗号化を使用した手動暗号化

    暗号化キーの変更の重要性

    33

  • バイナリ・ラージ・オブジェクトの暗号化DBMS_CRYPTOパッケージを使用したデータ暗号化ストレージOFBモードで暗号化された暗号文のOracle Databaseリリース11gでの使用データの暗号化APIの使用例

    データ暗号化プロシージャの例AES 256ビット・データ暗号化および復号化プロシージャの例BLOBデータの暗号化および復号化プロシージャの例

    暗号化データのデータ・ディクショナリ・ビュー第IV部 ネットワーク上のデータの保護

    16 Oracle Databaseのネイティブ・ネットワーク暗号化とデータ整合性の構成Oracle Databaseのネイティブ・ネットワーク暗号化とデータ整合性について

    Oracle Databaseのネイティブ・ネットワーク暗号化と整合性の仕組みAdvanced Encryption Standard

    ARIA

    GOST

    SEED

    Triple-DESのサポートOracle Databaseのネイティブ・ネットワーク暗号化のデータ整合性データの整合性アルゴリズムのサポートDiffie-Hellmanベースのキー交換データの暗号化および整合性の構成

    暗号化および整合性のアクティブ化について暗号化および整合性のネゴシエーションについて

    暗号化および整合性のネゴシエーションの値についてREJECTED構成パラメータACCEPTED構成パラメータREQUESTED構成パラメータREQUIRED構成パラメータ

    Oracle Net Managerを使用した暗号化および整合性パラメータの構成クライアントとサーバーでの暗号化の構成クライアントとサーバーでの整合性の構成

    34

  • 異なるユーザーに対するOracleネイティブ暗号化とSSL認証の両方の同時有効化

    異なるユーザーに対するOracleネイティブ暗号化とSSL認証の両方の同時有効化について異なるユーザーに対するOracleネイティブ暗号化とSSL認証の両方の同時構成

    17 シンJDBCクライアント・ネットワークの構成Java実装についてJava Database ConnectivityのサポートシンJDBCの機能実装の概要Java暗号化コードの不明瞭化シンJDBCネットワーク実装の構成パラメータ

    シンJDBCネットワーク実装の構成パラメータについてクライアント暗号化レベルのパラメータクライアント暗号化選択リストのパラメータクライアント整合性レベルのパラメータクライアント整合性選択リストのパラメータクライアント認証サービスのパラメータAnoServices定数

    第V部 厳密認証の管理18 厳密認証の概要

    厳密認証とは集中化された認証とシングル・サインオン集中化されたネットワーク認証の動作サポートされている厳密認証方式

    KerberosについてRemote Authentication Dial-In User Service (RADIUS)についてSecure Sockets Layerについて

    Oracle Databaseのネイティブ・ネットワークの暗号化/厳密認証アーキテクチャ厳密認証のシステム要件Oracle Databaseのネイティブ・ネットワーク暗号化および厳密認証の制限事項

    35

  • 19 厳密認証の管理ツール構成ツールと管理ツールについてネイティブ・ネットワーク暗号化ツールと厳密認証構成ツール

    Oracle Net ManagerについてKerberosアダプタ・コマンドライン・ユーティリティ

    公開キー・インフラストラクチャ資格証明管理ツールOracle Wallet Managerについてorapkiユーティリティについて

    厳密認証管理者の義務20 Kerberos認証の構成

    Kerberos認証の有効化ステップ1: Kerberosのインストールステップ2: Oracleデータベース・サーバーに対するサービス・プリンシパルの構成ステップ3: Kerberosからのサービス・キー表の抽出ステップ4: Oracleデータベース・サーバーとOracleクライアントのインストールステップ5: Oracle Net ServicesとOracle Databaseの構成ステップ6: Kerberos認証の構成

    ステップ6A: クライアントとデータベース・サーバーでのKerberosの構成ステップ6B: 初期化パラメータの設定ステップ6C: sqlnet.oraパラメータの設定(オプション)

    ステップ7: Kerberosユーザーの作成ステップ8: 外部認証されたOracleユーザーの作成ステップ9: Kerberos/Oracleユーザーの初期チケットの取得

    Kerberos認証アダプタのユーティリティ初期チケットを取得するためのokinitユーティリティ・オプション資格証明を表示するためのoklistユーティリティ・オプションキャッシュ・ファイルから資格証明を削除するためのokdstryユーティリティのオプションキー表の作成を自動化するためのokcreateユーティリティのオプション

    36

  • Kerberosによって認証されたOracle Databaseサーバーへの接続Windows 2008ドメイン・コントローラKDCとの相互運用性の構成

    Windows 2008ドメイン・コントローラKDCとの相互運用性の構成についてステップ1: Windows 2008ドメイン・コントローラのためのOracle Kerberosクライアントの構成

    ステップ1A: クライアントKerberos構成ファイルの作成ステップ1B: sqlnet.oraファイルでのOracle構成パラメータの指定ステップ1C: リスニング・ポート番号の指定

    ステップ2: OracleクライアントのためのWindows 2008ドメイン・コントローラKDCの構成

    ステップ2A: ユーザー・アカウントの作成ステップ2B: Oracleデータベースのプリンシパル・ユーザー・アカウントおよびキー表の作成

    ステップ3: Windows 2008ドメイン・コントローラKDCのためのOracleデータベースの構成

    ステップ3A: sqlnet.oraファイルでの構成パラメータの設定ステップ3B: 外部認証されたOracleユーザーの作成

    ステップ4: Kerberos/Oracleユーザーの初期チケットの取得Kerberos認証フォールバック動作の構成Oracle Kerberos認証の構成のトラブルシューティング

    21 Secure Sockets Layer認証の構成Secure Sockets LayerおよびTransport Layer Security

    Secure Sockets LayerとTransport Layer Securityの違いマルチテナント環境でのTransport Layer Securityの使用

    Oracle DatabaseでのSecure Sockets Layerを使用した認証Oracle環境におけるSecure Sockets Layerの機能: SSLハンドシェイクOracle環境における公開キー・インフラストラクチャ

    公開キーの暗号化についてOracle環境における公開キー・インフラストラクチャ・コンポーネント

    認証局証明書証明書失効リスト

    37

  • ウォレットハードウェア・セキュリティ・モジュール

    Secure Sockets Layerと他の認証方式の併用アーキテクチャ: Oracle DatabaseとSecure Sockets LayerSecure Sockets Layerと他の認証方式の併用

    Secure Sockets LayerとファイアウォールSecure Sockets Layer使用時の問題Secure Sockets Layerの有効化

    ステップ1: サーバーでのSecure Sockets Layerの構成ステップ1A: サーバーでのウォレット作成の確認ステップ1B: サーバーでのデータベース・ウォレット・ロケーションの指定ステップ1C: サーバーでのSecure Sockets Layer暗号スイートの設定(オプション)

    Secure Sockets Layer暗号スイートについてSSL暗号スイートの認証、暗号化、整合性およびTLSバージョンデータベース・サーバーのSecure Sockets暗号スイートの指定

    ステップ1D: サーバーでの必要なSecure Sockets Layerバージョンの設定(オプション)ステップ1E: サーバーでのSSLクライアント認証の設定(オプション)ステップ1F: サーバーでの認証サービスとしてのSSLの設定(オプション)ステップ1G: サーバーおよびクライアントでのSSLv3の無効化(オプション)ステップ1H: SSL付きTCP/IPを使用するリスニング・エンドポイントのサーバーでの作成

    ステップ2: クライアントでのSecure Sockets Layerの構成ステップ2A: クライアント・ウォレット作成の確認ステップ2B: サーバーDN一致の構成とクライアントでのSSL付きTCP/IPの使用

    サーバーDN一致の構成とクライアントでのSSL付きTCP/IPの使用についてサーバーDN一致の構成とクライアントでのSSL付きTCP/IPの使用

    38

  • ステップ2C: 必要なクライアントSSL構成の指定(ウォレット・ロケーション)ステップ2D: クライアントのSecure Sockets Layer暗号スイートの設定(オプション)

    クライアントのSecure Sockets Layer暗号スイートの設定についてクライアントのSecure Sockets Layer暗号スイートの設定

    ステップ2E: 必要なSSLバージョンのクライアントでの設定(オプション)ステップ2F: クライアントにおける認証サービスとしてのSSLの設定(オプション)

    SQLNET.AUTHENTICATION_SERVICESパラメータについてSQLNET.AUTHENTICATION_SERVICESパラメータの設定

    ステップ2G: クライアントでの認証に使用する証明書の指定(オプション)

    SQLNET.SSL_EXTENDED_KEY_USAGEパラメータについてSQLNET.SSL_EXTENDED_KEY_USAGEパラメータの設定

    ステップ3: データベース・インスタンスへのログインSecure Sockets Layer構成のトラブルシューティング証明書失効リストによる証明書の検証

    証明書失効リストによる証明書検証について使用するCRLの選択方法CRLチェックの動作の仕組み証明書失効リストによる証明書検証の構成

    証明書失効リストによる証明書検証の構成についてクライアントまたはサーバー用の証明書失効ステータス・チェックの有効化証明書失効ステータス・チェックの無効化

    証明書失効リストの管理証明書失効リストの管理についてCRLを管理するコマンドのorapkiヘルプの表示証明書検証用ハッシュ値によるCRLの名前変更Oracle Internet DirectoryへのCRLのアップロードOracle Internet Directoryに格納されているCRLの一覧表示

    39

  • Oracle Internet DirectoryでのCRLの表示Oracle Internet DirectoryからのCRLの削除

    CRL証明書検証のトラブルシューティング証明書検証に関連するOracle Netトレース・ファイルのエラー・メッセージ

    ハードウェア・セキュリティ・モジュールを使用するためのシステムの構成SSLでハードウェア・セキュリティ・モジュールを使用するための一般的なガイドラインnCipherハードウェア・セキュリティ・モジュールを使用するためのシステムの構成

    nCipherハードウェア・セキュリティ・モジュールを使用するためのシステムの構成についてnCipherハードウェア・セキュリティ・モジュールに必要なOracleコンポーネントnCipherハードウェア・セキュリティ・モジュールをインストールするためのディレクトリ・パス要件

    SafeNETハードウェア・セキュリティ・モジュールを使用するためのシステムの構成

    SafeNETハードウェア・セキュリティ・モジュールを使用するためのシステムの構成についてSafeNET Luna SAハードウェア・セキュリティ・モジュールに必要なOracleコンポーネントSafeNETハードウェア・セキュリティ・モジュールをインストールするためのディレクトリ・パス要件

    ハードウェア・セキュリティ・モジュールの使用時のトラブルシューティング

    Oracle Netトレース・ファイルのエラーハードウェア・セキュリティ・モジュールの使用に関連するエラー・メッセージ

    22 RADIUS認証の構成RADIUS認証の構成についてRADIUSコンポーネントRADIUS認証モード

    同期認証モード同期認証モードの順序

    40

  • 例: SecurIDトークン・カードによる同期認証チャレンジ・レスポンス(非同期)認証モード

    チャレンジ・レスポンス(非同期)認証モードの順序例: スマートカードによる非同期認証例: ActivCardトークンによる非同期認証

    RADIUS認証、認可およびアカウンティングの有効化ステップ1: RADIUS認証の構成

    ステップ1A: OracleクライアントでのRADIUSの構成ステップ1B: Oracleデータベース・サーバーでのRADIUSの構成

    ステップ1B(1): Oracleデータベース・サーバーでのRADIUS秘密キー・ファイルの作成ステップ1B(2): サーバー(sqlnet.oraファイル)でのRADIUSパラメータの構成ステップ1B(3): Oracleデータベース・サーバー初期化パラメータの設定

    ステップ1C: その他のRADIUS機能の構成ステップ1C(1): デフォルト設定の変更ステップ1C(2): チャレンジ・レスポンス・モードの構成ステップ1C(3): 代替RADIUSサーバーのパラメータの設定

    ステップ2: ユーザーの作成とアクセス権の付与ステップ3: 外部RADIUS認可の構成(オプション)

    ステップ3A:Oracle Server (RADIUSクライアント)の構成ステップ3B: Oracleクライアント(ユーザーがログインする場所)の構成ステップ3C: RADIUSサーバーの構成

    ステップ4: RADIUSアカウンティングの構成ステップ4A: Oracleデータベース・サーバーでのRADIUSアカウンティングの設定Step 4B: RADIUSアカウンティング・サーバーの構成

    ステップ5: RADIUSクライアント名のRADIUSサーバー・データベースへの追加ステップ6: RADIUSとともに使用する認証サーバーの構成ステップ7: 認証サーバーとともに使用するRADIUSサーバーの構成ステップ8: マッピング・ロールの構成

    41

  • RADIUSを使用したデータベースへのログインRSA ACE/Server構成チェックリスト

    23 厳密認証の使用のカスタマイズ厳密認証を使用したデータベースへの接続厳密認証およびネイティブ・ネットワーク暗号化の無効化複数の認証方式の構成外部認証のためのOracle Databaseの構成

    sqlnet.oraでのSQLNET.AUTHENTICATION_SERVICESパラメータの設定OS_AUTHENT_PREFIXのNull値への設定

    第VI部 監査を使用したデータベース・アクティビティの管理24 監査の概要

    監査とは監査を使用する理由監査のベスト・プラクティス統合監査とは統合監査証跡の利点データベースが統合監査に移行したかどうかの確認混合モードの監査

    混合モードの監査について統合監査の有効化有効にした監査のタイプがデータベースの作成でどのように決定されるか混合モードの監査の機能

    監査の実行者マルチテナント環境での統合監査分散データベースでの監査

    25 監査ポリシーの構成監査タイプの選択

    SQL文、権限および他の一般アクティビティの監査一般的に使用されるセキュリティ関連アクティビティの監査特定のファイングレイン・アクティビティの監査

    統合監査ポリシーおよびAUDIT文を使用したアクティビティの監査

    42

  • 統合監査ポリシーおよびAUDITを使用したアクティビティの監査について統合監査ポリシーの作成のベスト・プラクティス統合監査ポリシーの作成の構文ロールの監査

    ロールの監査についてロールの統合監査ポリシーの構成例: マルチテナント環境でのDBAロールの監査

    システム権限の監査システム権限監査について監査できるシステム権限監査できないシステム権限システム権限の使用を取得するための統合監査ポリシーの構成例: ANY権限を持つユーザーの監査例: 条件を使用するシステム権限の監査監査証跡でのシステム権限の統合監査ポリシーの表示方法

    管理ユーザーの監査監査可能な管理ユーザー・アカウント管理者アクティビティを取得するための統合監査ポリシーの構成例: SYSユーザーの監査

    オブジェクト・アクションの監査オブジェクト・アクションの監査について監査できるオブジェクト・アクションオブジェクト・アクションの統合監査ポリシーの構成例: SYSオブジェクトでのアクションの監査例: 1つのオブジェクトでの複数のアクションの監査例: オブジェクトでのアクションと権限の両方の監査例: 表でのすべてのアクションの監査例: データベースでのすべてのアクションの監査

    監査証跡でのオブジェクト・アクションの統合監査ポリシーの表示方法ファンクション、プロシージャ、パッケージおよびトリガーの監査

    43

  • Oracle Virtual Private Databaseの述語の監査

    Oracle Virtual Private Databaseポリシー関数の監査ポリシー統合監査とエディション付きオブジェクト

    READ ANY TABLEおよびSELECT ANY TABLE権限の監査READ ANY TABLEおよびSELECT ANY TABLE権限の監査についてREADオブジェクト権限操作を取得する統合監査ポリシーの作成統合監査証跡でのREAD ANY TABLEおよびSELECT ANY TABLEの取得方法

    複数層環境におけるSQL文および権限の監査統合監査ポリシーの条件の作成

    統合監査ポリシーについて条件を使用した統合監査ポリシーの構成例: SQL*Plusへのアクセスの監査例: 特定のホストにはないアクションの監査例: システム全体のアクションおよびスキーマ固有のアクションの両方の監査例: 文の発生ごとの条件の監査例: 現在の管理ユーザー・セッションの統合監査セッションID例: 現在の非管理ユーザー・セッションの統合監査セッションID監査証跡での条件からの監査レコードの表示方法

    アプリケーション・コンテキスト値の監査アプリケーション・コンテキスト値の監査についてアプリケーション・コンテキストの監査設定の構成アプリケーション・コンテキストの監査設定の無効化例: デフォルト・データベースでのアプリケーション・コンテキスト値の監査例: Oracle Label Securityのアプリケーション・コンテキスト値の監査監査証跡での監査対象のアプリケーション・コンテキストの表示方法

    Oracle Database Real Application Securityイベントの監査Oracle Database Real Application Securityイベントの監査についてOracle Database Real Application Securityの監査可能なイベントOracle Database Real Application Securityのユーザー、権限およびロール

    44

  • の監査イベントOracle Database Real Application Securityのセキュリティ・クラスおよびACLの監査イベントOracle Database Real Application Securityのセッションの監査イベントOracle Database Real Application SecurityのALLイベントOracle Database Real Application Securityの統合監査ポリシーの構成例: Real Application Securityのユーザー・アカウントの変更の監査例: Real Application Securityの統合監査ポリシーでの条件の使用監査証跡でのOracle Database Real Application Securityイベントの表示方法

    Oracle Recovery Managerイベントの監査Oracle Recovery Managerイベントの監査についてOracle Recovery Managerの統合監査証跡イベント監査証跡でのOracle Recovery Managerの監査イベントの表示方法

    Oracle Database Vaultイベントの監査Oracle Database Vaultイベントの監査についてOracle Database Vaultの監査者Oracle Database Vaultの統合監査証跡イベントについてOracle Database Vaultのレルムの監査イベントOracle Database Vaultのルール・セットおよびルールの監査イベントOracle Database Vaultのコマンド・ルールの監査イベントOracle Database Vaultのファクタの監査イベントOracle Database Vaultのセキュア・アプリケーション・ロールの監査イベントOracle Database Vault Oracle Label Securityの監査イベントOracle Database Vault Oracle Data Pumpの監査イベントOracle Database Vaultの有効および無効な監査イベントOracle Database Vaultの統合監査ポリシーの構成例: Oracle Database Vaultのレルムの監査例: Oracle Database Vaultのルール・セットの監査例: 2つのOracle Database Vaultイベントの監査例: Oracle Database Vaultのファクタの監査

    45

  • 監査証跡でのOracle Database Vaultの監査イベントの表示方法Oracle Label Securityイベントの監査

    Oracle Label Securityイベントの監査についてOracle Label Securityの統合監査証跡イベントOracle Label Securityの監査可能なユーザー・セッション・ラベルOracle Label Securityの統合監査ポリシーの構成例: Oracle Label Securityのセッション・ラベル属性の監査例: Oracle Label Securityポリシーからのユーザーの除外例: Oracle Label Securityのポリシー・アクションの監査例: 監査済のOLSセッション・ラベルの問合せ監査証跡でのOracle Label Securityの監査イベントの表示方法

    Oracle Data Miningイベントの監査Oracle Data Miningイベントの監査についてOracle Data Miningの統合監査証跡イベントOracle Data Miningの統合監査ポリシーの構成例: ユーザーによる複数のOracle Data Mining操作の監査例: ユーザーによる失敗したすべてのOracle Data Mining操作の監査監査証跡でのOracle Data Miningイベントの表示方法

    Oracle Data Pumpイベントの監査Oracle Data Pumpイベントの監査についてOracle Data Pumpの統合監査証跡イベントOracle Data Pumpの統合監査ポリシーの構成例: Oracle Data Pumpのインポート操作の監査例: Oracle Data Pumpのすべての操作の監査監査証跡でのOracle Data Pumpの監査イベントの表示方法

    Oracle SQL*Loaderダイレクト・ロード・パス・イベントの監査Oracle SQL*Loaderダイレクト・パス・ロード・イベントの監査についてOracle SQL*Loaderダイレクト・ロード・パスの統合監査証跡イベントOracle SQL*Loaderダイレクト・パス・イベントの統合監査証跡ポリシーの構成例: Oracle SQL*Loaderダイレクト・パス・ロード操作の監査

    46

  • 監査証跡でのSQL*Loaderダイレクト・パス・ロードの監査イベントの表示方法

    トップレベルの文のみの監査トップレベルのSQL文のみの監査についてトップレベルの文のみを取得する統合監査ポリシーの構成例: トップレベルの文の監査統合監査証跡でのトップレベルのSQL文の取得方法

    マルチテナント環境での統合監査ポリシーまたはAUDIT設定ローカル、CDB共通およびアプリケーション共通監査ポリシーについてマルチテナント環境での従来の監査ローカル統合監査ポリシーまたは共通統合監査ポリシーの構成例: ローカル統合監査ポリシー例: CDB共通統合監査ポリシー例: アプリケーション共通統合監査ポリシー監査証跡でのローカルまたは共通監査�