15 セキュリティに関する考慮事項
ゲートウェイ・アーキテクチャには、別個のセキュリティ機能および制限を持つ複数のコンピュータ設定が関連します。
次のトピックでは、セキュリティ・システムの計画および実装について説明します。
15.1 セキュリティの概要
複数の異なるシステムを接続する場合、一般的にはセキュリティ要件が最も厳格なシステムによりシステム全体が統制および管理されます。
ゲートウェイのセキュリティには、次の2つのグループが関連します。
-
特定のゲートウェイ・インスタンスおよびDRDAデータベース・サーバーへのアクセスを許可されたユーザーおよびアプリケーション
-
ユーザーおよびアプリケーションにより問合せおよび更新可能なサーバー・データベース・オブジェクト
ゲートウェイ・アーキテクチャにおけるアクセスは、複数の点で制御できます。データベース・オブジェクトへのアクセスは、GRANT
と、ユーザーIDに基づく固有の関連認可メカニズムの使用により各DRDAデータベース・サーバーによって制御されます。
ゲートウェイがSQLリクエストに関連する場合、セキュリティ・メカニズムは、ゲートウェイによって処理される各DRDAシステム・コンポーネントに対して有効です。処理される最初のシステム・コンポーネントは、アプリケーション・ツールまたは3GLプログラムです。処理される最後のシステム・コンポーネントは、DRDAデータベースです。
15.2 アプリケーション・ログオンの認証
アプリケーションは、ゲートウェイを使用する前にOracle Databaseに接続する必要があります。使用するログオン認証のタイプにより、結果としてOracleユーザーIDが決まり、ゲートウェイの動作にも影響します。認証には次の2つの基本タイプがあります。
-
Oracle認証: Oracle認証では、各OracleユーザーIDが、Oracle Databaseにより認識されるパスワードを保持します。アプリケーションは、サーバーに接続すると、ユーザーIDとパスワードを入力します。Oracle Databaseは、そのユーザーIDが存在することと、パスワードがデータベースに保存されているものと一致することを確認します。
-
オペレーティング・システム認証: オペレーティング・システム認証では、サーバーの基礎となるオペレーティング・システムにより認証が行われます。オペレーティング・システム認証では、パスワードのかわりに
IDENTIFIED EXTERNALLY
属性を使用して作成されたOracleユーザーIDにアクセスします。このユーザーIDにログインする場合、アプリケーションはユーザーIDに対してスラッシュ文字(/)を提供し、パスワードは提供しません。オペレーティング・システム認証を実行するには、サーバーがリクエスト元オペレーティング・システムのユーザーIDを決定し、オプションでそれに固定の接頭辞を追加して、その結果をOracleユーザーIDとして使用します。サーバーは、そのユーザーIDが存在し、
IDENTIFIED EXTERNALLY
属性を備えていることを確認しますが、パスワード・チェックは行いません。この場合の基礎となる前提条件は、オペレーティング・システムへのログイン時にユーザーが認証されていることです。オペレーティング・システム認証は、すべてのプラットフォームで使用できるわけではなく、一部の
Oracle Net
(クライアント/サーバー)構成やマルチスレッド・サーバー構成では使用できません。この機能の可用性を判断するには、データベースのインストレーション・ガイドとOracle Net関連マニュアルを参照してください。
アプリケーション・ログオンの認証の詳細は、『Oracle Database開発ガイド』を参照してください。
15.3 データベース・リンクの定義と制御
ここでの情報は、ゲートウェイに固有です。データベース・リンクの詳細は、『Oracle Database管理者ガイド』を参照してください。
15.3.1 リンクのアクセス可能性
データベース・リンクは、特定のユーザーからアクセス可能である必要があります。パブリック・データベース・リンクは、すべてのユーザーIDで使用できます。プライベート・データベース・リンクは、作成したユーザーだけが使用できます。サーバーでは、使用タイプ(読取り専用と更新または書込みなど)またはリモート・オブジェクトへのアクセス可能性に関する区別は行われません。これらの区別を行うのは、アクセスされるDRDAデータベースです。
15.3.2 リンクとCONNECT句
CONNECT
句は、また別のデータベース・リンクのセキュリティ関連属性です。CONNECT
句を使用して、明示的なユーザーIDおよびパスワードを指定できます(これらはユーザーのOracle DatabaseユーザーIDおよびパスワードとは異なることがあります)。このCONNECT
ユーザーIDとパスワードの組合せは、データベース・リンク接続が最初にオープンされるときにゲートウェイに送信されます。ユーザーIDとパスワードは、ゲートウェイのオプションによっては、検証のためにゲートウェイからDRDAサーバーに送信されることもあります。
データベース・リンクがCONNECT
句なしで作成されると、接続のオープン時に、ユーザーのOracle DatabaseユーザーIDとパスワードがゲートウェイに送信されます。ユーザーがオペレーティング・システム認証を使用してOracle Databaseにログインする場合、ゲートウェイは、Oracle DatabaseからユーザーIDやパスワードを受け取りません。この場合、DRDAサーバーにおけるユーザーIDのマッピング機能が使用され、このような接続が可能になります(同じホスト上のすべてのユーザーが同じDRDAデータベース・ユーザーIDを使用できる場合)。
15.4 ゲートウェイ初期化ファイルのパスワード
ゲートウェイでは、ユーザーIDとパスワードを使用してDRDAサーバー上のリモート・データベースの情報にアクセスします。ユーザーIDおよびパスワードは、リソース・リカバリなどの機能を処理するために、ゲートウェイ初期化ファイルで定義される場合があります。セキュリティに特に注意を払う必要がある現在の環境では、簡単にアクセスできるプレーン・テキストでパスワードを初期化ファイルに格納しておくのは安全とはいえません。セキュリティを向上するために、異機種間サービスの汎用接続性の一部として暗号化機能が追加されました。この機能には、ゲートウェイからアクセスできます。この機能により、機密値を含む初期化パラメータは、暗号化された形式で格納できます。この機能の使用方法の詳細は、『Oracle Database Heterogeneous Connectivityユーザーズ・ガイド』の初期化パラメータの暗号化に関する項を参照してください。
関連項目:
詳細は、「初期化パラメータ」のパラメータHS_FDS_RECOVERY_ACCOUNT
およびHS_FDS_RECOVERY_PWD
を例として参照してください。