- 概要
- 要件
- インストール
- インストール後
- 移行とアップグレード
- 監視とアラート機能
- クラスターの管理
- 製品固有の設定
- トラブルシューティング
証明書の概要
このページでは、Automation Suite のインストールに必要なすべての証明書と、証明書ローテーション プロセスの原則について説明します。
For details on the certificates you must provide when replacing the self-signed certificates, see Certificate requirements.
信頼証明書の仕組みを理解する
Automation Suite 内での製品間のサービス間通信は、クラスターの FQDN を介して行われます。製品が内部 URL を使用して相互に通信することはできません。たとえば、Orchestrator は https://automationsuite.mycompany.com/identity を介して Identity Server に接続し、ユーザー認証を行うことができます。
2 つの異なる Automation Suite 製品はクラスターの FQDN を使用する必要がありますが、複数のマイクロサービスを含めることもできます。これらのマイクロサービスは内部 URL を使用して相互に通信できます。
通信の仕組みを理解する
次の図とフローでは、クライアントがどのようにサービスに接続し、認証が ID サービスを介してどのように行われるかを説明します。
-
クライアントは、URL を使用するサービス (Orchestrator、Apps、Insights など) に次の URL を使用して接続します:
https://automationsuite.mycompany.com/myorg/mytenant/service_。 -
Istio は、その呼び出しをインターセプトし、
service_のパスに基づいて呼び出しを特定のサービスに転送します。 -
そのサービスは、ID サービスを呼び出して、ロボットからの受信リクエストを
https://automationsuite.mycompany.com/myorg/mytenant/identity_を介して認証します。 -
Istio は、その呼び出しをインターセプトし、
identity_のパスに基づいてリクエストを ID サービスに転送します。 -
ID サービスは、応答を結果とともに Istio に返します。
-
Istio は、サービスに応答を返します。呼び出しは HTTPS プロトコルを使用して行われるので、Istio は応答を TLS 証明書とともに返し、接続をセキュリティで保護します。サービスは、Istio によって返されたサーバー証明書を信頼する場合、応答を承認します。信頼しない場合は、応答を拒否します。
-
サービスは応答を準備し、Istio に返します。
-
Istio は、リクエストをクライアントに転送して戻します。クライアント マシンが証明書を信頼する場合、リクエスト全体が成功します。信頼しない場合、リクエストは失敗します。
ロボットと Orchestrator 間の通信の仕組みを理解する
このセクションでは、ロボットが Automation Suite 内の Orchestrator に接続を試みる場合のシナリオについて説明します。次の図とフローでは、ロボットがどのように Orchestrator に接続し、認証が Identity Server を介してどのように行われるかを説明します。
-
ロボットは、次の URL を使用して Orchestrator と接続します:
https://automationsuite.mycompany.com/myorg/mytenant/orchestrator_。 -
Istio は、その呼び出しをインターセプトし、
orchestrator_のパスに基づいて Orchestrator サービスに転送します。 -
Orchestrator サービスは、Identity Server を呼び出して、ロボットからの受信リクエストを
https://automationsuite.mycompany.com/myorg/mytenant/identity_を介して認証します。 -
Istio は、その呼び出しをインターセプトし、
identity_のパスに基づいてリクエストを Identity Server に転送します。 -
Identity Server は、応答を結果とともに Istio に返します。
-
Istio は、Orchestrator に応答を返します。呼び出しは HTTPS プロトコルを使用して行われるので、Istio は応答を TLS 証明書とともに返し、接続をセキュリティで保護します。Orchestrator は、Istio によって返されたサーバー証明書を信頼する場合、応答を承認します。信頼しない場合は、応答を拒否します。
-
Orchestrator は応答を準備し、Istio に返します。
-
Istio は、リクエストをロボットに転送して戻します。ロボット マシンが証明書を信頼する場合、リクエスト全体が成功します。信頼しない場合、リクエストは失敗します。
証明書に関連するコンテナー アーキテクチャを理解する
コンテナー レベル
この例では、コンテナーに専用のオペレーティング システム (RHEL OS) があり、サービスは RHEL OS 上で実行される Orchestrator に相当します。
すべての OS には、独自の証明書ストアがあります。 RHEL OS の場合、証明書信頼ストアは /etc/pki/ca-trust/ca/にあります。
RHEL OS では、すべての証明書がこのパスに保存されます。すべてのコンテナーに専用の証明書信頼ストアがあります。Automation Suite の構成の一環として、ルート証明書、すべての中間証明書、リーフ証明書を含むチェーン証明書全体が挿入され、このパスに保存されます。サービスはルート証明書と中間証明書を信頼するので、ルート証明書と中間証明書によって作成される他の証明書も自動的に信頼します。
ポッド レベル
Automation Suite 内では何百ものコンテナーが実行されています。すべてのサービスについて、これらの各コンテナーの証明書を手動で追加するのは手間のかかる作業です。しかし、Automation Suite には、この作業を支援する共有ボリュームと Init コンテナー cert-trustor が含まれています。Init は、ポッド内でアプリ コンテナーより先に実行される特殊なコンテナーであり、そのジョブが完了するとすぐにそのライフサイクルが終了します。
次の例では、Orchestrator サービスは 1 つのポッドで実行されています。なお、1 つのポッドに複数のコンテナーを含めることができます。このポッドに、Cert-trustor という Init コンテナーを 1 つ以上挿入します。このコンテナーに、ルート証明書、中間証明書、リーフ証明書が含まれます。
共有ボリュームは、Cert-trustor コンテナーと Orchestrator サービス コンテナーの両方にアタッチされます。 パスは RHEL OS 証明書信頼ストアと同じです ( /etc/pki/ca-trust/ca/source/anchors)。
Orchestrator を実行する前に、Cert-trustor は、/etc/pki/ca-trust/ca/source/anchors の場所にある共有ボリュームに証明書を追加するジョブを実行し、終了します。
証明書は、共有ボリュームを通じて Orchestrator サービスで利用できます。
Automation Suite のすべての証明書のリスト
インストール時に生成される証明書
Automation Suite のインストールの一環として、次の証明書が生成されます。
- Self-signed certificate generated at the time of installation. You are recommended to replace the self-signed certificate with a domain certificate post-installation. See Managing certificates.
- Identity Server certificate for signing JWT tokens used in authentication. If the certificate for signing the JWT token is not provided, Automation Suite uses the currently configured TLS certificate (self-signed or customer-provided). If you want to have your own certificate for signing identity tokens, see Managing certificates.
追加の証明書
- 有効化すると、SAML2 認証プロトコルでサービス証明書を使用できます。
- If you configure Active Directory using a username and password, LDAPS (LDAP Over SSL) is optional. If you opt for LDAPS, you must provide a certificate. This certificate will be added into Automation Suite’s Trusted Root Certification Authorities. For details, see Microsoft documentation.
この証明書は、Automation Suite の信頼されたルート証明機関に追加されます。
証明書の更新/ローテーションの仕組みを理解する
証明書は次の 2 つの場所に保存されます。
istio-systemのistio-ingressgateway-certsuipath名前空間
istio-system および uipath 名前空間内の証明書を更新するには、uipathctl config update-tls-certificates コマンドを実行する必要があります。
ポッドは、その名前空間にあるシークレットにのみアクセスできます。たとえば、uipath 名前空間で実行されているポッドは、istio-system 名前空間に格納されているシークレットにはアクセスできません。そのため、証明書は両方の名前空間にコピーされます。
uipath 名前空間については、証明書を必要とするポッドに証明書をマウントし、新しい証明書を使用できるようにポッドを再起動します。
更新はローリング デプロイ手法を使用して行われます。高可用性を実現するためにマイクロサービスに 2 つのポッドがある場合、更新によりポッドの 1 つが削除され、新しいバージョンのポッドが起動されます。新しいポッドが正常に起動すると、古いポッドは削除されます。古いポッドがまだ終了していない間は、短時間のダウンタイムが発生します。