キー ボールトシークレット
クラウド agents don't support key vault secrets.
機密データをTosca Cloudで使用するには、キー ボールトプロバイダーを統合できます。これにより、キー ボールトからパスワードや機密情報を取得し、テストで使用できます。この操作を行うと、Tosca Cloudは取得した値を保存せず、短時間だけ使用します。
次の利点があります。
-
機密情報をTosca Cloudで更新する必要がなくなるため、シークレット管理が向上します。
-
Tosca Cloud がシークレットキーへのパスのみを保存するため、セキュリティが向上します。
-
機密情報がログやテスト結果から除外されるため、データ保護が向上します。
サポートされているキー ボールトの一覧を確認するには、章「System requirements」を参照してください。
制限事項
Tosca Cloudでキー ボールトを使用する場合、次の制限事項が適用されます。
-
Tosca Cloud では、キー ボールト内のシークレットを追加、更新、または操作することはできません。
-
アクション モードが Input または Insert で、データ型が Secret の場合にのみ、シークレットを取得できます。
-
テストステップで、シークレットを他のテキストと組み合わせて使用することはできません。
-
特別実行タスクでは、シークレットを取得することはできません。スキャン済み Modules でのみシークレットを取得することを推奨します。
シークレットの取得
キーコンテナーからシークレットをフェッチするには、まずテスト中のシステムを準備する必要があります。
-
テストを実行するマシンにキーコンテナーを設定します。
-
テスト実行中は常にキーコンテナーにサインインした状態を維持してください。
-
AWS キー管理サービスおよび Azure キーコンテナーの場合、テストの実行中は常にCLIを開いたままにしておきます。
After preparing the SUT, use the dynamic expression {SECRET} and the syntax for your specific key vault provider:
Enter the {SECRET[aws][<Region>][<SecretName>]} syntax to fetch secrets.
-
必要に応じて、デフォルトのリージョンを使用しない場合は、パラメータ <Region> を AWS リージョン名に置き換えます。
-
パラメータ <SecretName> を AWS のシークレット名に置き換えます。
For example, {SECRET[aws][us-west-2][Username]}.
Enter the {SECRET[cyberark][<SecretPath>][<FieldName>][<CyberArkAppId>]} syntax to fetch secrets.
-
パラメータ <SecretPath> を、CyberArk Credential Provider 内のシークレットへのパスに置き換えます。
-
パラメータ <FieldName> を、シークレットを含むフィールド名に置き換えます。
-
パラメータ <CyberArkID> を、CyberArk のアプリケーション ID に置き換えます。
For example, {SECRET[cyberark][My-safe/sso-account][username][TRICENTIS_APPID]}.
Enter the {SECRET[hashicorp][<SecretPath>][<FieldName.]} syntax to fetch secrets.
-
パラメータ hashicorp は省略可能です。後方互換性のため、キー ボールトプロバイダーを指定しない場合、Tosca Cloud は HashiCorp を使用します。HashiCorp Vault を使用している既存の TestStep を更新する必要はありません。
-
パラメータ <SecretPath> を、HashiCorp Vault 内のシークレットへのパスに置き換えます。
-
パラメータ <FieldName> を、シークレットを含むフィールド名に置き換えます。
For example, {SECRET[kv/database/production/pw][Password]}.
Enter the {SECRET[azure][<KeyVaultURI>][<SecretName>]} syntax to fetch secrets:
-
パラメータ <KeyVaultURI> を、Azure Key Vault の Vault URI に置き換えます。
-
パラメータ <SecretName> を、Azure Key Vault 内のシークレット名に置き換えます。
-
For example, {SECRET[azure][https://examplecorp.vault.azure.net/][Password]}.
この例では、キーコンテナーはHashiCorp Vaultです。kv/database/production/pw にある DBPassword フィールドを取得します。このシークレットをフェッチするためには、以下の構文を使用します。
{SECRET[hashicorp][kv/database/production/pw][DBPassword]}
Steer MFA/SSO
Tosca Cloud を使用してワンタイムパスワード(OTP)を生成することで、MFA/SSO を制御できます。そのためには、OTP を生成するコードをキー ボールトに保存します。
Tosca Cloudは、時刻ベースの OTP のみをサポートします。MFAプッシュ通知は制御できません。
To generate a one-time password, use the dynamic expression {OTP} and the syntax for your key vault vendor.
その他の構成
異なるタイムアウト値を指定してください。
デフォルトでは、Tosca Cloud は、リクエストが失敗する前にキーコンテナーの応答を20秒待ちます。デフォルト値が短すぎる場合は、より長いタイムアウト値を指定することができます。
これを行うには、KeyVaultCommandTimeoutという名前のテスト構成パラメーター(TCP)を作成し、新しいタイムアウト値をミリ秒単位で指定します。
キーコンテナー実行ファイルに異なるパスを指定します。
場合によっては、Tosca Cloud がローカルのキーコンテナーへのパスを見つけることができないことがあります。このような場合は、手動でパスを指定する必要があります。
そのためには、KeyVaultPathという名前のTCPを作成し、キーコンテナー実行ファイルへのパスを指定してください。
-
Hashicorpの場合、vault.exeファイルまたはその含まれるディレクトリへのパスを入力してください。
-
For CyberArk, enter the path to the folder that contains NetStandardPasswordSDK.dll or its containing directory.
さらに、PATH環境変数を使用してパスを指定することもできます。