Vaultシークレットの管理

ボールト・シークレット、シークレット・タグおよびシークレット・ルールを作成および管理します。

OCIクラウド・サービスを使用することの重要性により、デジタル・ボールトにシークレットを格納、取得および管理することが重要です。シークレットは、OCIサービス/システムへの接続に使用するパスワード、証明書、SSHキーまたは認証トークンです。OCI Vaultにシークレットを格納すると、コードまたは構成ファイルにシークレットを格納するよりも優れたセキュリティが得られます。アプリケーションはOCIシークレット管理と通信してシークレットを取得し、ターゲット・サービスに接続します。

Oracle Cloud Infrastructure Secret Managementでは、シークレットを使用してAPIキー、パスワード、暗号化キーなどの機密データを簡単に保護できます。これらのシークレットを安全に作成、格納、管理およびアクセスするための堅牢なソリューションを提供します。提供される集中管理ストレージでは、ハードウェア・セキュリティ・モジュール(HSM)およびきめ細かいアクセス制御を利用して、重要な情報のセキュリティと整合性を保護します。OCI Secret Managementを使用して、アプリケーションにシークレットを直接埋め込むことをなくし、攻撃対象領域を減らし、アプリケーションの全体的なセキュリティを強化します。

シークレットの自動生成およびローテーション

シークレットが生成されると、定期的に更新されます。シークレットは手動で更新することも、自動的に設定することもできます。シークレットの自動生成およびローテーションは、シークレットを手動で設定し、スクリプトを使用してローテーションする負担を軽減しますが、かわりに、作成、ローテーションおよび削除からシークレットを効率的に管理する方法を提供します。

自動シークレット生成機能を使用すると、生成中にシークレットをテンプレート化できます。自動シークレット・ローテーションでは、シークレット間隔を1から12か月に設定できます。この機能は、Autonomous Databaseおよびファンクション・サービスと統合されているため、自律型データベースまたはファンクション・コードで使用されるシークレットを更新できます。OCI関数では、シークレットの自動ローテーションによって、資格証明を簡単にローテーションし、ローテーション・プロセスの一部としてコードを実行できます。自動化シークレット・ローテーション機能は、手動で作成したシークレットにも使用できます。

自動シークレット・ローテーションを使用する利点

自動シークレット・ローテーションの利点は次のとおりです:
  • セキュリティの強化: シークレットを定期的に更新すると、漏洩した資格証明によるデータ侵害の影響が最小限に抑えられます。
  • 運用効率: シークレットの作成、回転などの手動タスクを自動化することで、時間と効率が節約されます。
  • 規制コンプライアンス: 秘密のローテーションと自動化のコンプライアンスを規制する多くの基準に準拠します。
  • 人的ミスの削減: 反復的なタスクを自動化することで、人的ミスの可能性が軽減され、セキュリティが強化されます。

シークレット生成

パスフレーズ、SSHキーおよびバイトのシークレットを生成できます。OCI Vaultが生成するすべてのシークレットは、FIPSおよびセキュリティに準拠しています。OCIコンソール、APIまたはコマンド・インタフェースを使用してシークレットを生成できます。シークレットを生成する場合は、シークレット・コンテキストを指定し、シークレット・テンプレートを定義する必要があります。シークレット・コンテキストは、シークレットのシークレット・タイプおよび構造を定義します。選択したシークレット・タイプに基づいて、Vaultは異なるシークレット生成テンプレートをサポートしています。

生成できるシークレット・タイプは次のとおりです:
  • PASSPHRASE: 20文字までのパスワードを生成します。文字の長さはカスタマイズできます。
  • SSH_KEY: 長さ2048、3072および4096のRSAキー・ペアを生成します。秘密鍵はPKSC#8 PEM形式で格納され、公開鍵はX.509 PEM形式で格納されます。
  • BYTES: FIPS苦情バイナリ・シークレットである512バイトおよび1024バイトを生成します。これらのバイトはbase64コードです。

シークレット・タイプおよびデフォルト・テンプレート

  • パスワード
    • サポートされているテンプレート: SECRETS_DEFAULT_PASSWORDおよびDBAAS_DEFAULT_PASSWORD
    • シークレット・テンプレートのプレースホルダ: %GENERATED_PASSPHRASE%
    • Example: "user": "abc", "pwd": "%GENERATED_PASSPHRASE%"}
  • SSH_key
    • サポートされているテンプレート: RSA_2048、RSA_3072、RSA_4096
    • シークレット・テンプレートのプレースホルダ: %GENERATED_PUBLIC_KEY%、%GENERATED_PRIVATE_KEY%
    • 例: {"publicKey": "%GENERATED_PUBLIC_KEY%", "privateKey": "%GENERATED_PRIVATE_KEY%"} → {"publicKey": "-----BEGIN PUBLIC KEY-----\nBase64 encoded public key\n-----END PUBLIC KEY-----", "privateKey":"-----BEGIN PRIVATE KEY-----\nBase64 encoded private key\n-----END PRIVATE KEY-----"}
  • BYTES
    • サポートされているテンプレート: BYTES_512、BYTES_1024
    • シークレット・テンプレートのプレースホルダ: %GENERATED_BYTES%
    • 例: {"host": "abc", "hostLuksKey": "%GENERATED_BYTES%"} → {"host": "abc", "hostLuksKey": "asdfalkjhasdflkjhasdf=="}

シークレット・バージョンおよびローテーション状態

ボールト・シークレット・バージョン、ローテーション状態およびシークレット・バージョン制限の影響について学習します。

ボールト・シークレット・バージョンおよびローテーション状態について理解すると、制限、ローテーション、その他のルール、または規制への準拠を維持するためにシークレット・コンテンツをトラッキングおよび管理するのに役立ちます。

シークレット・バージョンおよびローテーション状態を含む、シークレットの概念の基本的な定義については、キーおよびシークレット管理の概念を参照してください。シークレット・バージョンの作業の詳細は、Vaultシークレットの管理を参照してください。

ローテーション状態

シークレット・バージョンは、一度に複数のローテーション状態になることができます。存在するシークレット・バージョンが1つのみの場合(シークレットを初めて作成したときなど)、そのシークレット・バージョンには自動的に「現在」「最新」の両方のマークが付きます。シークレットをトラッキングできるように、シークレットの「最新」バージョンには、最後にボールトにアップロードされたシークレット・コンテンツが含まれます。

シークレットをローテーションして新しいシークレット・コンテンツをアップロードするときは、そのシークレットを「保留中」としてマークできます。シークレット・バージョンのローテーション状態を「保留中」としてマークすると、シークレット・コンテンツを今すぐアクティブに使用せずにボールトにアップロードできます。保留中のシークレット・バージョンを「現在」ステータスにプロモートする準備ができるまで、「現在」のシークレット・バージョンを使用し続けることができます。通常、最初にターゲット・リソースまたはサービス上で資格証明をローテーションした後でこれを行います。意図せずシークレット・バージョンを変更することを避ける必要があります。「現在」のシークレット・バージョンを変更すると、それを必要とするアプリケーションが期待されるシークレット・バージョンをボールトから取得できなくなります。

シークレット・コンテンツの更新で間違いがあった場合や、古いリソースのバックアップをリストアしたときに古いシークレット・コンテンツを使用して再開する場合などに、以前のバージョンに簡単にロールバックできるように、シークレット・バージョンを「前」としてマークすることもできます。「前」としてマークされるシークレット・バージョンは、以前に「現在」としてマークされていたシークレット・バージョンです。以前のバージョンにロールバックするには、シークレットを更新して、目的のシークレット・バージョン番号を指定します。

シークレット・バージョンが削除されていないかぎり、シークレットを更新して、その過去のシークレット・バージョンを使用できます。シークレットを更新すると、選択したシークレット・バージョン番号が「現在」としてマークされます。これは、シークレット・バージョンを「現在」にプロモートするのと同じ結果になります。

削除できるのは、「非推奨」としてマークされているシークレット・バージョンのみです。非推奨のシークレット・バージョンとは、「現在」「保留中」「前」のいずれとしてもマークされていないものです。これにより、削除したシークレット・バージョンが後で必要になるような状況(たとえば、以前にバックアップしたデータベースをリストアする場合)を回避できます。A secret version that's marked as anything other than 'deprecated' can be marked as 'current' to return it to active use.

バージョン制限

シークレット・バージョンの制限は、使用中のシークレット・バージョンと非推奨のバージョン(削除がスケジュールされているバージョンを含む)の両方に適用されます。特定のシークレットのバージョンの数、およびテナンシ内のシークレット・バージョンの数の制限の詳細は、サービスの制限を参照してください。

必須IAMポリシー

Oracle Cloud Infrastructureを使用するには、管理者からポリシーでセキュリティ・アクセス権が付与されている必要があります。コンソールまたは(SDK、CLIまたはその他のツールを使用した) REST APIのどれを使用しているかにかかわらず、このアクセス権が必要です。権限を持っていない、または認可されていないというメッセージが表示された場合は、持っているアクセス権のタイプと作業しているコンパートメントを管理者に確認してください。

管理者向け:

ポリシーを初めて使用する場合は、ポリシーの開始共通ポリシーを参照してください。

リソースのタグ付け

リソースにタグを適用すると、ビジネス・ニーズに応じてそれらを整理しやすくなります。リソースの作成時にタグを適用するか、後でリソースを必要なタグで更新します。タグ適用についての一般情報は、リソース・タグを参照してください。

リソースのモニタリング

メトリック、アラームおよび通知を使用して、Oracle Cloud Infrastructureリソースのヘルス、容量およびパフォーマンスをモニターできます。詳細は、モニタリングおよび通知を参照してください。

別のコンパートメントへのリソースの移動

シークレットはコンパートメント間で移動できます。シークレットを新しいコンパートメントに移動すると、固有のポリシーがただちに適用され、シークレットおよびシークレット・バージョンへのアクセスに影響します。シークレットを移動しても、シークレットに関連付けられているボールトへのアクセスには影響しません。同様に、ボールトは、そのシークレットの移動とは別に、コンパートメント間で移動できます。詳細は、コンパートメントの管理を参照してください。