HashiCorp Credential Retrieval事例

ブートストラップ、システム、自動ログイン、オートメーションの事例では HashiCorp 資格情報を取得することができます。

Control Room ブートストラップ資格情報の取得

注: この事例は、オンプレミスのデプロイにのみ適用されます。

Automation 360 Control Room は、ブートストラップ資格情報を使用して、データベース、サービス アカウント、Active Directory (AD) などのサポート サービスにアクセスします。 これらの資格情報は、初期オンプレミスインストール時、またはインストール後 (Key Vault ユーティリティを使用) に、シークレット名を指定することで構成されます。

Control Room次の画像は、HashiCorp で ブートストラップ資格情報を取得するプロセスを示しています。

HashiCorp control-room ブートストラップ資格情報Retrieval

ブーストラップ シーケンスや通常操作 (サービス認証の更新など) で必要な場合、Control Room は、キー Vault の接続を使用して資格情報を取得し、必要な認証を実行します。

注: この使用事例では、Microsoft SQL Server 認証を選択する必要があります。他のデータベース認証方法はブーストラップをサポートしていません。

Control Room システム資格情報の取得

注: この事例は、オンプレミス デプロイにのみ適用され、サービス アカウントは初期インストール時にのみ設定できます。

初期インストール時に外部キー Vault を構成した場合、Automation 360 ユーザー インターフェース (インストール後) を使用して、SMTP および Active Directory (AD) の資格情報を設定できます。

SMTPを設定するには:
  1. Automation 360 Control Room に管理者としてログインします。
  2. Control Room から、次のように移動します。 [管理] > [設定] > [E メール設定]

Active Directory 資格情報を構成するには:

  1. Automation 360 Control Room に管理者としてログインします。
  2. Control Room から、次のように移動します。 [管理] > [設定] > [Active Directory設定]
  3. 外部キー Vault から AD プライマリー アカウントの資格情報をマッピングしたり、外部資格情報を設定したり、手動に設定したり (AD プライマリー アカウントの資格情報取得のモードを切り替える) することができます。

自動ログイン資格情報の取得

注: この事例は、オンプレミスクラウドの両方のデプロイに適用されます。

自動ログイン資格情報は、Automation 360 Bot エージェント デバイスの認証とアクティブな Windows セッションの開始に使用されます。 ロボティック・プロセス・オートメーション (RPA) が機能するためには、Windows セッションをアクティブにする必要があります。 オートメーションがリモート Bot エージェント デバイスから起動した場合、オートメーションが実行される前に自動ログインが実行されます。

次の画像は、HashiCorp で自動ログイン資格情報を取得するプロセスを示しています。

HashiCorpの自動ログイン資格情報の取得

Control Room 管理者は、次の詳細を指定することで、Bot エージェント デバイス上でオートメーションを起動するジョブを手動で起動またはスケジュールできます。

  • オートメーション (Bot) 名
  • デバイス名
  • ユーザー コンテキスト

システムは、ユーザー コンテキストに関連付けられたユーザー名とパスワードを使用して指定されたデバイスに自動ログインを実行し、デバイス上でオートメーションを実行します。

自動ログイン資格情報を外部キー Vault から取得する各 Control Room ユーザーに、シークレットを設定する必要があります。そして、HashiCorp Vault のシークレット名は ユーザー名Control Room一致する必要があります。

外部キー Vault からの自動ログイン資格情報の取得を構成するには、次の手順を実行します。

  1. Automation 360 Control Room に管理者としてログインします。
  2. Control Room から、[管理] > [設定] > [外部キー Vault] > [デバイス自動ログイン] の順に移動します。
  3. [編集] をクリックします。
  4. 以前に HashiCorp Vault を外部キー Vault の接続として構成したことがある場合は、[有効] をクリックして、その外部キー Vault から自動ログイン資格情報を取得します。

    このオプションが無効な場合、外部キー Vault 接続は構成されません。

    注: 外部キー Vault からの自動ログインを無効にすると、AAI Credential Vault と保存された資格情報を使用して資格情報が取得されます。
    注: 外部キーVaultとAutomation 360サーバーを統合して自動ログインを行う際、Control Room設定を使用してユーザー名とキー保管庫のオブジェクト名のマッピングを構成できるようになりました。Automation 360の命名規則に従う代わりに、 「カスタムシークレットマッピング」を参照してください。
  5. HashiCorp のVaultは、組織コンテナを持たないフラットな名前空間であるため、Safe名を入力する必要はありません。 [変更を保存] をクリックします。

成功すると、自動ログイン設定が正常に保存されたことを示すメッセージが表示されます。

自動ログインの命名規則

Control Room は、外部キーVault内のシークレット命名規則に基づいて、自動ログイン資格情報を取得します。 Control Room は、シークレット名 (外部キーVaultの資格情報名) が、自動ログインを実行している Control Room ユーザー名と一致するオブジェクトを検索します。

プレフィックス autologin_ は、すべての外部キー Vault の自動ログイン資格情報の命名規則の一部として必要です。 CyberArk、AWS、HashiCorp、および Azure。 外部キー Vault の自動ログイン資格情報の名前には、autologin_ の後に Control Room ユーザー名が続く必要があります。 場合によっては、特定のキー Vault には、資格情報シークレット名に使用できる文字が制限される場合があります。 また、さまざまな使用事例での資格情報のエンコード方法をサポートするために、Automation 360 は、特定の文字を予約したりエンコードしたりすることを要求します。

次の表に、Control Room で想定されるシークレットの命名規則の例を示します。

Control Room ユーザー名 シークレット名の想定形式
ABCD\user123 autologin_ABCD--user123
user123@rpa.abcd.com autologin_user123-40-rpa-2e-abcd-2e-com
注: AD 認証を使用しているオンプレミスのお客様は、UPN 形式または domain\username ポストフィックスを使用して自動ログイン用のユーザー名をフォーマットする必要があります。

自動ログイン資格情報について、以下の点に留意してください。

  • 外部キー Vault のシークレット名には、プレフィックスとして autologin_ を含める必要があります。
  • 自動ログイン資格情報名は、取得した資格情報の Control Room ユーザー名 (ログイン ID) にマッピングされる必要があります。

    外部キー Vaultによっては、シークレット名のバックスラッシュ (\) やアットマーク (@) などの特定の文字の使用や、API コール内での特殊文字の使用の解釈について、制限がある場合があります。 ユーザー ID に特殊文字が含まれている場合、次の表に示すように、外部キーVaultのシークレット名は、ASCIIコードの文字置換でエンコードする必要があります。

文字 この ASCII コード文字置換の変更点
\ (バックスラッシュ) --
- (ダッシュ) -2d-
_ (アンダースコア) -5f-
@ (アットマーク) -40-
. (ピリオド) -2e-
注: バックスラッシュはダブル ダッシュにマッピングされますが、ダッシュ、ピリオド、アンダースコア、アンパサンドはダッシュで括られた ASCII コードにマッピングされます。

HashiCorp の自動ログイン資格情報の例

この自動ログイン資格情報取得の例では、特定のユーザーとして、デバイスに Control Room をデプロイする Bot ユーザーについて考えてみましょう。 この例では、次のような詳細を使用しています。

  • デバイスで実行されるオートメーション (Bot) 名 = ProcureToPayGeoEast
  • エージェント デバイス名 = WinVDI1138
  • エージェント ユーザー コンテキスト = autologin-5f-rpauserCR1-40-abcd-2e-com

次の画像は、hashicorp_auto_login-credentials を使用して自動ログイン資格情報を取得する例を示しています。

オートメーションを開始する前に、次のことを確認してください。

  1. Control Room 接続の詳細が正常に構成されており、Control Room がこれらの接続情報を使用して HashiCorp に接続し、認証を実行している。
  2. Control RoomBot エージェント デバイスで実行されている WinVDI1138 デバイスにクエリを発行し、デバイス WinVDI1138 に現在アクティブな Windows (オペレーティング システム) セッションがあるかどうか、およびそのセッションがエージェント ユーザー rpauserCR1 に属しているかどうかを確認している。

    ユーザー rpauserCR1 のデバイスに既存のセッションが存在する場合、自動ログインを実行する必要はなく、Bot はデプロイを続行します。

  3. ただし、アクティブなセッションがない場合や、rpauserCR1 に属していないアクティブなセッションがある場合、Control Room は、HashiCorp ボールトから自動ログイン資格情報を取得する。
  4. Control Room が資格情報 (パスワード) を Bot エージェントに渡している。 Bot エージェントは、WinVDI1138 の自動ログイン資格情報を使用して、(他のユーザーのログイン セッションからログオフしてから) rpauserCR1 として WinVDI1138 デバイスにログインします。 その後、オートメーション (Bot) ProcureToPayGeoEast は、デバイス WinVDI1138rpauserCR1 として実行を開始します。

オートメーション資格情報の取得

注: この事例は、オンプレミスクラウドの両方のデプロイに適用されます。

オートメーション資格情報は、Bot 開発者がオートメーション (Bot) アクション内で使用する変数で、暗号化されたストレージからデータを定義して取得するために使用されます。 オートメーションでは、資格情報を使用してアプリケーション (例: 金融アプリケーション) を認証します。 オートメーション資格情報は、実行時に Automation 360 Bot エージェントによって取得されます。

次の画像は、HashiCorp でオートメーション資格情報を取得するプロセスを示しています。

hashicorp_retrieve_automation_credentials

HashiCorp Vaultから取得したオートメーション資格情報は、Automation Anywhere Credential Vault でマッピングされます。 Credential Vault は、次の 2 種類のオートメーション資格情報をサポートしています。

システム資格情報
資格情報変数によって返される値が、その変数を使用するすべてのオートメーションで同じである資格情報。
ユーザー定義の資格情報
資格情報変数によって返される値が、オートメーションが実行されているユーザー コンテキストに基づいて区別される資格情報。

システム資格情報とユーザー定義の資格情報の両方について、Bot 開発者は Bot コード内で同じ資格情報変数を指定します。 次に、システムで、Bot 実行時に取得する資格情報が決定されます。

ユーザー定義の資格情報により、Bot 開発者は単一の資格情報変数を使用してコードを書くことができ、RPA プラットフォームが実行時に返される値をユーザー固有の値に置き換えるため、自動化開発が簡素化されます。 開発者は、異なるユーザー固有の資格情報変数を使用して重複したコードの書き込みを回避できます。

次の画像は、HashiCorp資格情報の想定される命名規則を示しています。

HashiCorp の想定される資格情報

この図では、HashiCorp ボールト内の6つのシークレットが、Control Room Credential Vault 内の2つの資格情報にマッピングされています。

  • Object3
  • Object4

たとえば、ロッカー 内のControl RoomprefixID3 または prefixID4 のどちらかにマッピングできます。 次に、シークレットを資格情報にマッピングします。 資格情報ごとに、シークレットは、システム定義の 1 つの資格情報 (ユーザー名のポストフィックスなし) およびユーザー定義の 2 つの資格情報 (ユーザー名が Control RoomUser1ID1 と Control RoomUser1ID2 である ユーザーにそれぞれ 1 つ) として使用されます ( で取得されます)。

注: Control Room Credential Vault では、ロッカーの名前と資格情報の名前は任意であり、Control Room に対してローカルです。 これらの名前を外部キー Vault の特定のシークレットにマッピングします。

HashiCorp vault 内では、各オートメーション資格情報は、プレフィックス、オブジェクト識別子、およびユーザー名を識別する任意のポストフィックスなどの特定の識別子を含む名前で格納されます。 正しい資格情報を確実に取得するためには、このような命名規則が必要です。 HashiCorp Vault 内のシークレット (資格情報) の名前で、Automation Anywhere Credential Vault 内のマッピングに関する情報をエンコードします。

Control RoomHashiCorp Vaultにマッピングするには、管理者が、ロッカー[ロッカーを作成]と [資格情報を作成] の機能における外部キー Vaultオプションを使用してAutomation 360 Control Roomと資格情報の作成と設定を行います。

  • ロッカーHashiCorpCredential Vault ボールト名のプレフィックスにマッピングする のを構成します。
  • HashiCorp Credential Vaultボールト オブジェクト識別子 (ユーザー定義資格情報の任意のポストフィックス) にマッピングする の資格情報を構成します。

実行時に、RPA プラットフォームは、オートメーションが実行されているユーザー コンテキスト (ユーザー定義資格情報) と一致するポストフィックスを持つ名前のシークレットを取得します。 ユーザー定義資格情報がない場合、RPA プラットフォームはユーザー名のポストフィックス (システム資格情報) を使用せずにシークレットを取得します。

Control Room では、ロール内の権限を通じて、外部の資格情報へのアクセス制御を実現します。 ロールごとに異なる Control Room ユーザーを割り当て、それらのロールに異なるロッカーを関連付けることで、資格情報へのアクセスを制御します。

次の画像Control Room Credential Vault ロッカーは、HashiCorp のボールトにマッピングされている と資格情報を示します。

HashiCorp資格情報をCredential Vaultにマッピングしました

重要: 外部マッピングされた資格情報を作成する場合は、資格情報を適切な外部マッピングされたロッカー (シークレット名のプレフィックスにマッピングされているロッカー) に割り当てる必要があります。 HashiCorp のVault名には、命名規則があります。 プレフィックス + Secret_Name_Body + ポストフィックス (ユーザー定義資格情報の場合はオプション) となっています。
注: Control Room 内の同じ権限と特権 (ロールを介して割り当てられる) は、外部キー Vault にマッピングされた資格情報に適用されます。

オートメーションの命名規則

次の表に、オートメーションの命名規則を使用した HashiCorp Vault 外部キー Vault の例を示します。

注: HashiCorp プレフィックスは、Control Roomロッカーにマッピングされ、HashiCorp ボールトは、Control Room の資格情報にマッピングされます。
オートメーション資格情報の例 HashiCorp プレフィックス HashiCorp キー/値シークレットエンジン HashiCorp のシークレット Control Room ユーザー名

accounting_pdf

ロッカー内のシステム資格情報はHashiCorpVaultシークレット名プレフィックスaccountingにマッピングされています

accounting PDF accounting_pdf (システム) なし - システム資格情報

accounting_pdf_ABCD--user123

HashiCorp シークレット名プレフィックス accounting にマッピングされたロッカー内のユーザー定義資格情報

accounting PDF accounting_pdf_ABCD--user123 ABCD\user123

HashiCorp オートメーション資格情報取得の例

オートメーション資格情報取得を設定し、HashiCorp vaultと統合するには、最初にロッカーを作成してから、資格情報を作成します。

注: 資格情報を Control Room Credential Vault および外部キー Vault に保管する場合は、以下を実行することをお勧めします。
  • ロッカー Credential Vault 内に作成された資格情報を格納するために、Control Room 内に別のControl Roomを作成します。
  • 外部キー Vault 内に作成された資格情報を格納するために、ロッカー 内に別のControl Roomを作成します。

Control Room では、同じControl Room内に ロッカー Credential Vault および外部キー Vault の資格情報を格納することはできません。

ロッカーを作成してHashiCorpVaultと統合するには、次の手順を実行します。

  1. Automation 360 Control Room から、[マネージ] > [資格情報] に移動します。

    資格情報との管理ロッカー 権限を持つユーザーは、資格情報を作成する権限があります。

  2. [資格情報] タブで [ロッカーを作成] を選択します。
  3. ロッカーの名前を入力します (例: Locker3)。

    この名前は、Control Room にローカルな名前で、HashiCorp Vaultのシークレット名に依存するものではありません。

  4. [外部キー Vault] をクリックし、HashiCorp Vaultシークレット名のプレフィックスを入力します (例: prefixID3)。 マッピングの構成を正常に完了するには、名前のプレフィックスを使用して HashiCorp ボールト内のシークレットに名前を付ける必要があります。
  5. [次へ] をクリックします。
  6. ロッカーの所有者、マネージャー、参加者、およびコンシューマーを設定します。
  7. [ロッカーを作成] をクリックします。

    ロッカーを作成」を参照してください。

Control Room は、プレフィックス prefixID3 を持つすべての HashiCorp シークレットについて、資格情報を取得し、アクセス制御を行う準備が整いました。 続行するには、資格情報を作成します。

資格情報を作成して HashiCorp Vault と統合するには、次の手順を実行します。

  1. Automation 360 Control Room から、[マネージ] > [資格情報] に移動します。

    資格情報との管理ロッカー 権限を持つユーザーは、資格情報を作成する権限があります。

  2. [資格情報] タブで [資格情報を作成] を選択します。
  3. [資格情報名] フィールドに資格情報名を入力します。

    この名前は、Control Room にローカルな名前であり、HashiCorp Vaultのシークレット名に依存するものではありません。

  4. 名前フィールドの下にある [外部キー Vault] をクリックします。
  5. 使用可能なロッカーのリストから、適切なロッカー (資格情報に現在マッピングしているシークレットのシークレット名プレフィックスに以前マッピングしていたロッカー) を選択します。
  6. HashiCorp Secret_Name_Body を [シークレット名] フィールドに入力します (例: Object3)。
  7. [属性を検証して取得します] をクリックします

    システムは、HashiCorp Vaultから名前が Prefix_Secret_Name_Body のシークレットを取得しようとすることで、マッピングを検証します (例: prefixID3_Object3)。

    検証が失敗した場合、HashiCorp Vaultには、ロッカー (プレフィックス) と資格情報 (Secret_Name_Body) の組み合わせに一致する名前のシークレットが存在しません。 この例では、HashiCorp Vault内に prefixID3_Object3 という名前のシークレットがありません。

    システムがシークレットを正常に取得すると、HashiCorpvault のシークレットの属性 (シークレット内のフィールド) が表示されます。

  8. 属性のリストから、資格情報にマッピングする属性を選択します。
  9. [資格情報を作成] をクリックします。

    成功すると、資格情報が正常に作成されたことを示すメッセージが表示されます。