Oracle Key Vaultの概念情報では、ユースケースに加え、アクセス制御の構成、デプロイメント・アーキテクチャ、管理の動作方法と、エンドポイント管理者のロールについて説明します。
トピック:
Oracle Key Vaultは、セキュリティ・オブジェクト(鍵、証明書、パスワード、不透明オブジェクトなど)のセキュアな中央リポジトリです。エンタープライズ鍵管理プラットフォームであるOracle Key Vaultは、これらのセキュリティ・オブジェクトとそのライフサイクルを管理する中央プラットフォームです。
Oracle Key Vaultは、エンロールされたすべてのエンドポイントを追跡します。エンドポイントは、暗号化または復号化など実際の暗号操作が実行される、データベース・サーバー、アプリケーション・サーバーおよびコンピュータ・システムです。Oracle Key Vaultは、エンドポイントのリクエストに応じて、セキュリティ・オブジェクトを格納、取得します。
Oracle Key Vaultと通信するには、エンドポイントを登録およびエンロールする必要があります。鍵を生成できるか、すでに鍵を所有している一部のエンドポイントは、Oracle Key Vaultを、セキュアな長期の外部ストレージとして使用します。
Oracle Key Vaultのアクセス制御機能には、ほとんどすべての組織のニーズを満たす柔軟性があります。
Oracle Key Vaultでは、鍵やその他のセキュリティ・オブジェクトをまとめて、仮想ウォレットを形成できます。仮想ウォレットの主要な目的は、オブジェクトを作成したエンドポイント以外のエンドポイントがセキュリティ・オブジェクトにアクセスできるようにすることです。いかなるユーザーでも新規の仮想ウォレットを作成でき、そのウォレットへのアクセス権を持っている鍵を追加できます。空のウォレットを作成したら、読取りおよび変更アクセス権を持っている鍵を、ウォレット管理アクセス権を持っているウォレットに追加できます。
注意: 一部のエンドポイントには、すでにOracle Walletファイルがある場合があります。セキュリティ・オブジェクトをウォレット・ファイルから抽出し、Oracle Key Vaultにアップロードすると、仮想ウォレットにそのオブジェクトを追加できます。 |
Oracle Key Vaultでは、1つのセキュリティ・オブジェクトが複数のウォレットに属する場合があります。セキュリティ・オブジェクトにはすべて所有者があります。そのセキュリティ・オブジェクトを作成したエンドポイントです。この所有者は、セキュリティ・オブジェクトへの読取りおよび変更アクセス権を持っています。セキュリティ・オブジェクトがいかなる仮想ウォレットにも含まれない場合でも同じです。
エンドポイントは、これらのセキュリティ・オブジェクトを信頼できるピアと共有する必要があることがあります。たとえば、Oracle Database Real Application Cluster (Oracle RAC)ノードは、クラスタ内の他のノードと鍵を共有する必要があることがあります。
エンドポイントのエンロール時に、デフォルト・ウォレットを指定できます。エンドポイントによって作成またはアップロードされた鍵は、デフォルト・ウォレットに自動的に追加されます。
複数のエンドポイントが共通のデフォルト・ウォレットを持つことができます。このデフォルト・ウォレットの内容は、すべてのエンドポイントにわたり共有されます。そのエンドポイントのエンドポイント・グループを指定する必要はありません。これにより、エンドポイントは、鍵を含む仮想ウォレットを指定せずに、鍵の作成やOracle Walletのアップロードを実行できます。
Oracle Key Vaultでは、ユーザーとエンドポイントが実行するすべてのアクションが監査されます。
Oracle Key Vaultのユースケースには、一元保存および集中管理が含まれます。
トピック:
Oracle Key Vaultは、Oracle Walletファイルとキーストアのコピーを長期保持とリカバリのために一元的に格納します。
Oracle Key Vaultでは、必要に応じて新しいウォレットやキーストア・ファイルにダウンロードできるように、Oracle WalletやJavaキーストアからのセキュリティ・オブジェクトは一元的に格納されます。
Oracle Key Vaultを使用しないと、Oracle WalletファイルとJavaキーストアは、鍵が誤って失われることのないよう、複数のサーバーやサーバー・クラスタ全体に分散されることがよくあり、その場合は手動でバックアップする必要があります。このような分散オブジェクトの管理には操作上およびセキュリティ上の問題があり、それらはOracle Key Vaultの中央記憶域プラットフォームを使用することで回避できます。
Oracle Key Vaultを使用すると、Oracle Walletファイルとキーストア・ファイルを、信頼できるサーバー・ピア・エンドポイントと共有できます。エンドポイント・ソフトウェアはOracle Walletファイルとキーストアのフォーマットを読み取ることができ、Oracle Walletファイルやキーストアの各要素を項目化し、要素ごとにバックアップできます。パスワード保護されているものと自動ログインのものの両タイプのウォレットをアップロードして、ウォレットの内容をいずれかのタイプの新規のウォレットにダウンロードできます。
エンドポイント・ユーティリティはOracle Walletファイルやキーストアの内容を解釈できるので、個々のオブジェクトを別々に管理できます(グループ化して他のエンドポイントと共有するなど)。
Oracle Walletファイル
Oracle Key Vaultは、暗号化のための対称鍵(TDEマスター・キー)、パスワード(セキュアな外部パスワード・ストア)およびX.509証明書(ネットワーク暗号化)といった、Oracle Walletファイルの内容を格納、管理します。
Javaキーストア
Oracle Key Vaultは、Javaキーストアの内容(対称鍵、非対称鍵(たとえば秘密鍵)およびX.509証明書)を格納して、管理します。
すべてのサポートされているOracle DatabaseのリリースからのOracle Walletファイルがサポートされます。Oracle Key Vaultは、JKSおよびJCEKSタイプのJavaキーストアをサポートします。
図2-1に、Oracle WalletファイルとJavaキーストアの一元保存のようすを示します。
関連項目:
|
TDEを使用するOracle Databaseでは、ローカル・ウォレット・ファイルの複数のエンドポイントへのコピーの代替策として、Oracle Key Vaultがネットワーク直接接続経由でTDEマスター・キーの集中管理を提供します。
このユースケースでは、TDEはマスター・キーを生成し、Oracle Key Vaultに格納します。
Oracle RACなどのデータベース・クラスタ上でTDEが実行されている場合、ローカル・ウォレット・コピーのメンテナンスより、TDEマスター・キーを共有する方が特に便利です。次の比較を参照してください。
ローカル・ウォレット・コピーの場合、各Oracle RACノードごとに、プライマリ・ノードのマスター・キー上でキー・ローテーション操作が実行されると、ローカル・ウォレット・コピーを更新してOracle RACクラスタ内の他のノードへ手動でコピーすることにより、新しいTDEマスター・キーを伝播する必要があります。
Oracle Key VaultのようにTDE鍵を共有する場合、新しいTDEマスター・キーは、キー・ローテーション操作の後すぐにクラスタ内の他のノードと共有されるため、ウォレットを手動でコピーする必要がありません。
集中管理は、マスター・キーがウォレットに格納されているときにOracle Data Pump Export、Import、またはOracle Databaseのトランスポータブル表領域を使用してデータベース間で暗号化データをコピーする場合にも便利です。
集中管理でない場合、ウォレットはソースからターゲット・データベースに手動でコピーする必要があります。
集中管理の場合、マスター・キーを含む仮想ウォレットに各エンドポイント・アクセス権を付与することによって、Oracle Key Vaultを介してそのマスター・キーを容易に共有できます。
TDEとOracle Key Vaultの間のネットワーク直接接続は、Oracle Database 11gリリース2とOracle Database 12cでサポートされます。
図2-2に、TDEマスター・キーのTDE直接接続の集中管理を示します。
Oracle Key Vaultは、Oracle WalletとJavaキーストア以外の資格証明ファイルを長期保持とリカバリのためにバックアップできます。
Oracle Key Vaultは資格証明ファイルの実際の内容を解釈しません。ファイル全体を不透明オブジェクトとして格納し、後で取得するためにエンドポイントにハンドルを付与します。
資格証明ファイルには、セキュリティ・オブジェクト(たとえば鍵、パスワード、SSH鍵、KerberosキータブおよびX.509証明書)を含めることができます。
Oracle Key Vaultに資格証明を直接アップロードし、そのファイルを集中リポジトリに統合して、信頼できるグループ内のエンドポイント間で共有することができます。また、ファイルはバックアップされ、Oracle Key Vault内の他のすべてのセキュリティ・オブジェクトとともに可用性が高くなります。Key Vault管理者は、アクセス制御ポリシーを設定して、これらの資格証明ファイルを他のエンドポイントと共有できます。
Oracle Key Vaultが存在しない従来の場合、資格証明ファイルは、組織内の多数のサーバーに分散する傾向がありました。
図2-3に、資格証明ファイルがどのようにOracle Key Vaultにアーカイブされるかを示します。
Oracle Key Vaultは、仮想ウォレットを使用してアクセス制御を確立し、セキュリティ・オブジェクトを共有します。
仮想ウォレットとは、そこに含まれるオブジェクトへのアクセスを共有するために使用できるセキュリティ・オブジェクトのグループです。
注意: Oracle Key Vaultに格納されているセキュリティ・オブジェクトをウォレットの外側に置くこともできますが、その場合、共有はできず、所有者しかアクセスできません。 |
アクセス権は、サブジェクト(エンドポイントと管理ユーザー)に付与されます。アクセスの付与をより簡単にするために、ユーザーやエンドポイントを1つ以上のグループに所属させ、グループの個々のメンバーではなくグループにアクセス権を付与することができます。グループに、他のグループを含めることはできません。
関連項目:
|
ユーザー、ユーザー・グループ、エンドポイントまたはエンドポイント・グループは、仮想ウォレットで特別なアクセス制御オプションを持つことができます。
それらのアクセス制御オプションは次のとおりです。
Read Only: 選択されたサブジェクトは、セキュリティ・オブジェクトの属性を読み取ることができます。
Read and Modify: 選択されたサブジェクトは、セキュリティ・オブジェクトの属性を読み取り、変更することができます。
Manage Wallet: 選択されたサブジェクトは次のことができます。
セキュリティ・オブジェクトのウォレットへの追加や削除。ユーザーは、仮想ウォレットに追加するあらゆるオブジェクトに対する読取りおよび変更アクセス権も持っている必要があります。
他のユーザーにウォレットへのアクセス権を付与します。
Oracle Key Vaultがオブジェクトへのアクセス権を付与する方式には、エンドポイントまたはユーザー権限を直接付与する方法と、エンドポイントまたはユーザー・グループを介して間接的に権限を付与する方法の2つがあります。
仮想ウォレットへのアクセス権は、サブジェクト(エンドポイントまたはユーザー)に対して直接付与されます。
仮想ウォレットへのアクセス権は、ユーザーまたはエンドポイントに対するグループ・メンバーシップによって間接的に提供されます。エンドポイント・グループが仮想ウォレットへのアクセス権を持っている場合、そのエンドポイント・グループのメンバーであるすべてのエンドポイントも、そのウォレットへのアクセス権を持ちます。これは、各グループ・メンバーに個別にアクセス権を付与する方法の単純な代替策です。
ウォレットへのManage Walletアクセス権を持つユーザーは、アクセス権やメンバーシップの関係を定義できます。「アクセス制御のオプション」を参照してください。
注意: Oracle Key Vault管理コンソールを使用すると、アクセス権とメンバーシップを双方向に設定できます。アクセス権は必ずサブジェクトによって仮想ウォレットに対して付与されますが、リンクを使用すると、ウォレットからそれにアクセスするサブジェクトへ、またはサブジェクトからそれがアクセスできるウォレットへ移動できます。 |
図2-4は「Endpoint Details」ページの一部ですが、他のサブジェクト(エンドポイント・グループ、ユーザーおよびユーザー・グループ)の詳細ページと類似しています。パネルは、2つの異なる方法を示します。
左のパネルは、この個別エンドポイントが属するグループを示しています。グループの場合は、そのグループのメンバーであるエンドポイントを示します。
右のパネルは、このエンドポイントまたはグループがアクセスできるすべてのウォレットを示しています。権限の付与が、このエンドポイントに直接的にされているのか、それとも所属するエンドポイント・グループの1つに対してなのかは考慮されません。
Oracle Key Vaultは、サーバーにデプロイされ、保護対象のデータを持つエンドポイントに接続します。
Oracle Key Vaultは、ソフトウェア・アプライアンスとしてパッケージ化されています。オペレーティング・システムとデータベースの強化ベスト・プラクティスに応じて、セキュリティ面の強化が行われています。不要なパッケージとソフトウェアは削除されており、使用されないサービスとポートは無効にされています。オペレーティング・システム、データベース、およびOracle Key Vaultアプリケーションそのものに対してあらかじめ構成されているため、個々のコンポーネントをインストールして構成する必要がありません。
エンドポイントは、OASIS Key Management Interoperability Protocol (KMIP)を使用して相互に認証されたトランスポート層セキュリティ(TLS)接続を介してOracle Key Vaultと通信します。
管理者は、ユーザーIDとパスワードを使用して、ブラウザ・ベースの管理コンソールにログインします。
Oracle Key Vaultの高可用性構成では、1台のプライマリ・アプライアンスと1台のスタンバイ・アプライアンスが定義されます。プライマリ・アプライアンスはアクティブ、スタンバイ・アプライアンスはパッシブ・モードで動作します。つまり、すべてのエンドポイントは、プライマリ・アプライアンスとのみ通信します。プライマリ・アプライアンスとスタンバイの間のデータ・レプリケーションに関連する通信は、相互認証TLSです。
プライマリ・アプライアンスが一定の時間、無反応になると、スタンバイ・アプライアンスが自動的にプライマリ・アプライアンスに昇格し、そのクラスタのアクティブ・ノードになります。
図2-5に、Oracle Key Vaultのデプロイメント・アーキテクチャを示します。
また、特定の管理ロールを持たないが、特定の領域(仮想ウォレットなど)を担当しているユーザーがいる場合もあります。そのようなユーザーは、(付与された権限に基づき)仮想ウォレットに対してアクションを実行できます。ただし、自分の仮想ウォレットに対する権限を別のユーザーに付与することはできません。
トピック:
Oracle Key Vaultの管理ロールは、様々な組織の構造をサポートできる柔軟性を持つように設計されています。
Oracle Key Vaultには3つの別々のロールがあり、各ユーザーの担当領域に必要な権限のみをユーザーごとに付与できます。個人が複数の領域を担当する組織もあるので、Oracle Key Vaultでは、そのロールが異なるユーザーに付与されることは必須ではありません。
Oracle Key Vaultでは、ユーザーと管理者が実行する様々な義務と機能を分離することで、アクセス権を制御し、権限のエスカレーションを防止して、必要なユーザーのみに機能の使用や特定のオブジェクトに対する操作が可能になるようにしています。
Oracle Key Vaultでは、オブジェクトの保護を強化するため、ファイングレイン形式で義務の分離を提供しています。
義務の分離は次のように動作します。
アクセス制御と操作権限をきめ細かく分離されているので、1つのオブジェクトまたは機能へのアクセス権を他から独立に付与できます。これにより、各ユーザー・ベースで担当に一致させることができます。
3つのロールは、特定の機能領域に固有の権限を提供します。これらは、「管理ロールの概要」で説明した、鍵管理者、システム管理者および監査マネージャの各ロールです。
Oracle Key Vaultと対話するすべてのユーザーが、一意のユーザー・アカウントとパスワードを持つようにしてください。
管理ロールは、鍵、システムおよび監査の各管理機能に分けられます。
対応するロール(鍵管理者、システム管理者および監査マネージャ)は、それらのロールを持っているユーザーのみが付与できます。必要な場合、1人のユーザーに複数のロールを付与することができます。
状況によっては、ある管理ロールを持っているユーザーが操作のある部分を実行し、別の管理ロールを持っているユーザーがそれに関連する操作の別の部分を実行する必要があります。たとえば、エンドポイントをエンロールできるのはシステム管理者のみで、エンドポイント・グループを作成できるのは鍵管理者のみです。
インストール後の構成プロセスで、各ロールは、最初は1人のユーザーに付与されます。特定のロールを持っているユーザーがいない状況が発生した場合、リカバリ・パスフレーズを使用して、インストール後の構成を繰り返し、「緊急時のシステム/リカバリ・プロセス」の説明に従って、各ロールを新規や既存のユーザー・アカウントに付与することができます。
管理コンソールを使用する場合、「Oracle Key Vaultの一般的な管理」で説明されている様々なタブ、メニューおよびアクションへのアクセス権は、アクセス権を持っているロールやオブジェクトによって異なります。
管理ロールには次のものがあります。
システム管理者
システム管理者は、次のようにOracle Key Vaultサーバーを管理します。
ユーザーの作成、変更、削除
エンドポイントのエンロールと削除
高可用性の設定
アラートとキー・ローテーションのリマインダの構成
バックアップのスケジューリング
Oracle Key Vaultの開始と停止
他のユーザーへのシステム管理者ロールの付与
鍵管理者
鍵管理者は、次のようにセキュリティ・オブジェクトと仮想ウォレットへのアクセス権を制御します。
ユーザーとエンドポイントの仮想ウォレットへのアクセス権の制御
ユーザー・グループの作成と管理
エンドポイント・グループの作成と変更
すべての仮想ウォレットおよびセキュリティ・オブジェクトに対する読取り、変更および管理アクセス権の保有
他のユーザーへの鍵管理者ロールの付与
監査マネージャ
監査マネージャは、ユーザーとエンドポイントのアクションを記録する監査データのコレクションを次のように管理します。
Oracle Key Vault監査レコードをエクスポートまたは削除する権限を持っている唯一のユーザーとしての監査証跡の管理
すべてのセキュリティ・オブジェクトに対する読取りアクセス権の保有
他のユーザーへの監査マネージャ・ロールの付与
管理コンソールのダッシュボードでは、現在のOracle Key Vaultステータスと、注意が必要な問題点を一覧できます。
Oracle Key Vaultでは、3つの管理ロールのいずれかにアクセスできるユーザーがいない場合(パスワードの忘失などのため)、特別のリカバリ・パスフレーズを使用して緊急事態から回復できます。
リカバリ・パスフレーズを知っていれば、管理ロールが新規または既存のユーザー・アカウントに割り当てられている場合に、インストール後プロセスを繰り返すことができます。
以前のバックアップからOracle Key Vaultをリストアする場合も、リカバリ・パスフレーズが必要です。
次の点に注意してください。
リカバリ・パスフレーズの設定または変更
リカバリ・パスフレーズを作成または変更するには、「タスク2: インストール後タスクの実行」を参照してください。
緊急「システム・リカバリ」でのリカバリ・パスフレーズの使用。
システム・リカバリの実行
いずれかの管理ロールにアクセスできるユーザーがいない場合、システム・リカバリ・プロセスを使用して、新規や既存のユーザー・アカウントに管理ロールを割り当てることができます。「システム・リカバリ」を参照してください。
バックアップでの正しいリカバリ・パスフレーズの維持
バックアップをリストアする必要がある場合、正しいパスフレーズを知っていることが重要です。「Oracle Key Vaultでのデータのバックアップとリストア」を参照してください。
エンドポイント管理者とは、Oracle DatabaseやOracle Application Serverなど、それぞれに対応するエンドポイントの管理者です。
Oracle Databaseエンドポイントの場合、エンドポイント管理者は、データベース管理を担当するデータベース管理者です。エンドポイント管理者は、資格証明ファイル、ウォレット・ファイルおよびJavaキーストアのアーカイブやダウンロードなどの操作を実行します。
エンドポイント管理者はデフォルトでOracle Key Vaultアクセス権を持っていませんが、同じユーザーがKey Vaultユーザー・アカウントを持つ可能性はあります。
エンドポイント管理者はokvutil
ユーティリティを使用できます。