外部の Vault システムを操作する
このドキュメントでは、パスワード、API キー、証明書などのシークレットを CyberArk などの外部 Vault に保存し、さまざまな構成で使用するために Google Security Operations プラットフォームに安全にプルする方法について説明します。
Vault の認証情報は次の場所で参照できます。
次のデプロイタイプがサポートされています。
-
クラウド Vault インスタンス
-
オンプレミス Vault インスタンス(リモート エージェントを使用)
ユースケース
-
エンタープライズ組織は、中央の Vault から認証情報を取得して、パスワードの不正使用のリスクを軽減できます。
-
マネージド セキュリティ サービス プロバイダ(MSSP)は、パスワードをスタッフに公開することなく、クライアントの認証情報をクライアントの Vault から直接取得できます。
Vault 統合をダウンロードして構成する
Vault 統合をインストールして構成する手順は次のとおりです。
- Marketplace(Google SecOps をご利用のお客様の場合は Content Hub)に移動し、CyberArk PAM 統合をインストールします。
- 次のいずれかの方法で統合を構成します。
- インストール時(デフォルト環境の場合)。
- [レスポンス] > [統合の設定] に移動し、適切な環境を選択します。
-
リモート エージェントでオンプレミス ボルトを使用している場合は、ボルトにアクセスできるように、すべてのサードパーティ統合(クラウドベースまたはオンプレミス)を同じリモート エージェントで構成する必要があります。
- 保存すると、他の統合で Vault の認証情報を使用できるようになります。
構成で Vault シークレットを使用する
外部 Vault に保存されているシークレットを安全に参照するには、次の構文を使用します。
- 構文:
[EnvironmentName:::VaultIntegrationName:::VaultIntegrationInstanceName:::PasswordID]
- EnvironmentName: 統合が構成されている環境の名前([Settings] > [Integrations] を参照)。
- VaultIntegrationName: Marketplace からダウンロードした Vault 統合の名前。
- VaultIntegrationInstanceName: 統合インスタンスの名前(環境内で構成された Vault)。
- PasswordID: ボルト ディレクトリのパスワード識別子。
例:[Default Environment:::CyberArkPAM:::CyberArkPAM_1:::33_3]
Vault のパスワードを使用して統合を構成する
次の例は、CyberArk パスワードを使用してメール統合を構成する方法を示しています。
- [レスポンス] > [統合の設定] に移動します。[統合] 画面が表示されます。
- 統合を構成するターゲット環境を選択します。
- [追加] 追加 をクリックし、[メール] インテグレーションを選択します。
-
インテグレーション パラメータを入力します。パスワードの場合は、Vault の構文
を使用します。 。[DefaultEnvironment:::CyberArkPAM:::CyberArkPAM_1:::33_3]
- CyberArk PAM はオンプレミス ボルトであるため、[Remote Agent Run Remotely] チェックボックスをオンにします。
- [保存] をクリックします。実行時に、プラットフォームは外部の Vault からパスワードを取得します。
考慮事項
- オンプレミス Vault の場合: Vault と統合の両方が同じエージェントでリモート実行されることを確認します。
- オンプレミス統合を使用するクラウド Vault の場合: リモート エージェントがクラウド Vault にアクセスできることを確認します。
Vault パスワードを使用してコネクタを構成する
Vault パスワードを使用してコネクタを構成する手順は次のとおりです。
- [設定] > [取り込み] > [コネクタ] に移動します。
- [ add 追加] をクリックして、新しいコネクタを作成します。この例では、汎用 IMAP メール コネクタを選択します。
- 適切なパラメータを入力します。
- [Password] フィールドに、次の内容を追加します。
。[Default Environment:::CyberArkPAM:::CyberArkPAM_1:::33_3]
Vault パスワードを使用してジョブを構成する
Vault パスワードを使用してジョブを構成する手順は次のとおりです。
- [レスポンス] > [ジョブ スケジューラ] に移動します。
- [ add 追加] をクリックして、統合(Google SecOps 同期ジョブなど)を選択します。
- [API Root] フィールドに、Vault 構文を入力します。
Vault 認証情報を使用するカスタム統合を作成する
アクション、コネクタ、またはジョブを使用して、関連する統合パラメータを外部ボールトの構文で構成し、外部ボールトからボールト認証情報を pull します。
コードで次のスニペットを使用します(Param A には、Vault パターンが含まれている必要があります)。
integration_param = siemplify.extract_configuration_param(provider_name=INTEGRATION_NAME,param_name="Param A")
コネクタ は、外部ボールトの構文を使用して関連するコネクタ パラメータを構成することで、外部ボールトから認証情報を取得できます。
コードで次のスニペットを使用します(Param B。Vault パターンを含む必要があります)。
connector_param = siemplify.extract_connector_param("Param B", default_value=None, input_type=str)
ジョブは、関連するジョブ パラメータを外部 Vault 構文で構成することで、外部 Vault から認証情報を取得できます。
コードで次のスニペットを使用します(Param C には Vault パターンが含まれている必要があります)。
job_param = siemplify.extract_job_param(param_name"Param C", print_value=True)
共有インスタンスで Vault 構成をインテグレーションとして構成している場合は、ジョブ構成ではなくインテグレーション構成から認証情報を取得できます。次のスニペットを使用します(パラメータ A には Vault パターンが含まれている必要があります)。
integration_param = siemplify.extract_configuration_param(provider_name=INTEGRATION_NAME,param_name="Param A")
その他の情報
- Google SecOps Marketplace の商用 Vault インテグレーションのみがサポートされています。
- Vault 構成を更新すると、新しい認証情報がアクション、ジョブ、コネクタ全体に自動的に適用されます。
- Vault プレースホルダのサーバー検証があります。Vault プレースホルダを保存できるのは、参照先の Vault が存在し、その Vault へのアクセス権がある場合のみです。
- エージェントを使用した Vault へのアクセスは、バージョン 1.4.1.52 以降でのみサポートされています。
既知の制限事項
Vault 認証情報機能を使用してカスタム Vault 統合を作成する場合は、次の表に示す依存関係のバージョンと完全に一致させる必要があります。
依存関係 | Python 2.7 / Python 3.7 |
requests |
2.25.1 |
urllib3 |
1.26.2 |
six | 1.15.0 |
requests_toolbelt |
0.10.1 |
pyOpenSSL |
19.1.0 |
pycparser |
2.20 |
idna | 2.10 |
暗号化 |
3.3.1 |
chardet |
4.0.0 |
cffi |
1.14.4 |
certifi |
2020.12.5 |
importlib-metadata |
2.1.3(Python 2.7) 4.12.0(Python 3.7) |
さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。