automation-suite
2024.10
true
重要 :
このコンテンツの一部は機械翻訳によって処理されており、完全な翻訳を保証するものではありません。 新しいコンテンツの翻訳は、およそ 1 ~ 2 週間で公開されます。
UiPath logo, featuring letters U and I in white

OpenShift の Automation Suite のインストール ガイド

最終更新日時 2025年3月17日

証明書を管理する

重要:

インストール プロセスによって、ユーザーに代わって自己署名証明書が生成されます。インストールが完了したら、信頼された証明機関 (CA) によって署名された証明書にすみやかに置換する必要があります。

uipathctl CLI ツールを使用して、インストール後に証明書を更新できます。詳しくは、uipathctl のドキュメントをご覧ください。

証明書署名要求 (CSR) と秘密キーを生成する

CSR および秘密キーを生成するには、次のコマンドを実行します。

# copy the machine openssl configuration locally
cp /etc/pki/tls/openssl.cnf ./openssl.tmp.cnf

# Replace the [AUTOMATION_SUITE_FQDN] value. For example, "automationsuite.corp.com"
AS_FQDN=[AUTOMATION_SUITE_FQDN]
cat >> ./openssl.tmp.cnf <<EOF
[SAN]
subjectAltName=DNS:$AS_FQDN,DNS:alm.$AS_FQDN,DNS:monitoring.$AS_FQDN,DNS:registry.$AS_FQDN,DNS:objectstore.$AS_FQDN,DNS:insights.$AS_FQDN,DNS:apps.$AS_FQDN
EOF

# create the certificate request
openssl req -new -sha256 -newkey rsa:2048 -nodes -keyout server.key -subj "/C=xx/ST=xx/O=xx/OU=xx/CN=$AS_FQDN" -reqexts SAN -config openssl.tmp.cnf -out ${AS_FQDN}.csr# copy the machine openssl configuration locally
cp /etc/pki/tls/openssl.cnf ./openssl.tmp.cnf

# Replace the [AUTOMATION_SUITE_FQDN] value. For example, "automationsuite.corp.com"
AS_FQDN=[AUTOMATION_SUITE_FQDN]
cat >> ./openssl.tmp.cnf <<EOF
[SAN]
subjectAltName=DNS:$AS_FQDN,DNS:alm.$AS_FQDN,DNS:monitoring.$AS_FQDN,DNS:registry.$AS_FQDN,DNS:objectstore.$AS_FQDN,DNS:insights.$AS_FQDN,DNS:apps.$AS_FQDN
EOF

# create the certificate request
openssl req -new -sha256 -newkey rsa:2048 -nodes -keyout server.key -subj "/C=xx/ST=xx/O=xx/OU=xx/CN=$AS_FQDN" -reqexts SAN -config openssl.tmp.cnf -out ${AS_FQDN}.csr

IT チームが、取得した値を使用して署名証明書を生成します。生成された秘密キーはローカルのままです。

TLS 証明書を管理する

TLS 証明書の更新に関する詳細情報を表示するには、次のコマンドを実行します。

uipathctl config update-tls-certificates --helpuipathctl config update-tls-certificates --help

出力:

************************************************************************************
Manage tls certificates

Usage:
  uipathctl config tls-certificates [flags]
  uipathctl config tls-certificates [command]

Available Commands:
  get         Get the current tls certificates
  update      Update tls certificates

Flags:
  -h, --help   help for tls-certificates

Global Flags:
      --context string      name of the kubeconfig context to use
      --kubeconfig string   kubectl configuration file (default: ~/.kube/config)
      --log-format string   log format. one of [text,json] (default "text")
      --log-level string    set log level. one of [trace,debug,info,error] (default "error")
  -q, --quiet               suppress all output except for errors and warnings
      --timeout duration    timeout of the command (default 1h0m0s)

************************************************************************************************************************************************************************
Manage tls certificates

Usage:
  uipathctl config tls-certificates [flags]
  uipathctl config tls-certificates [command]

Available Commands:
  get         Get the current tls certificates
  update      Update tls certificates

Flags:
  -h, --help   help for tls-certificates

Global Flags:
      --context string      name of the kubeconfig context to use
      --kubeconfig string   kubectl configuration file (default: ~/.kube/config)
      --log-format string   log format. one of [text,json] (default "text")
      --log-level string    set log level. one of [trace,debug,info,error] (default "error")
  -q, --quiet               suppress all output except for errors and warnings
      --timeout duration    timeout of the command (default 1h0m0s)

************************************************************************************

TLS 証明書を検索する

証明書は Istio レベルでシークレットとして保存されます。証明書は、<istio-system> 名前空間内に istio-ingressgateway-certs という名前で確認できます。

証明書ファイルについては、以下のリストをご覧ください。

  • サーバー TLS 証明書は tls.crt として保存されます。
  • サーバー TLS 秘密キーは tls.key として保存されます。
  • CA バンドルは ca.crt として保存されます。

次のコマンドを使用して、シークレットを確認できます。

oc -n <istio-system> get secrets istio-ingressgateway-certs -o yamloc -n <istio-system> get secrets istio-ingressgateway-certs -o yaml
証明書は <uipath> 名前空間にも格納されます。 これは、受信呼び出しを信頼するために証明書情報を必要とするすべての UiPath® 製品に適用されます。 詳細については、「 証明書に関連するコンテナー アーキテクチャを理解する」をご覧ください。

TLS 証明書を更新する

重要:

サーバー証明書を更新する前に、証明書キーを復号する必要があります。復号手順をスキップすると、エラーが発生します。

証明書キーを復号するには、次のコマンドを実行します。

# replace /path/to/encrypted/cert/key to absolute file path of key
# replace /path/to/decrypt/cert/key to store decrypt key
# Once prompted, please entry the passphrase or password to decrypt the key

openssl rsa -in /path/to/encrypted/cert/key -out /path/to/decrypt/cert/key# replace /path/to/encrypted/cert/key to absolute file path of key
# replace /path/to/decrypt/cert/key to store decrypt key
# Once prompted, please entry the passphrase or password to decrypt the key

openssl rsa -in /path/to/encrypted/cert/key -out /path/to/decrypt/cert/key
証明書を更新するには、次の uipathctl コマンドを実行します。3 つの証明書ファイルのそれぞれに対するパスが必要です。証明書ファイルは、いずれも pem 形式である必要があります。
  • 証明機関バンドル - このバンドルには TLS サーバー証明書への署名に使用するチェーン証明書のみを含める必要があります。 --cacert オプションで提供される証明書には、リーフ証明書を含めないでください。チェーンの制限は最大 9 個の証明書です。
  • サーバー証明書 - 公開サーバー証明書です。

    手記:server.crt ファイルには、 次に示すように、チェーン全体 例:
    -----server cert-----
    -----root ca chain----------server cert-----
    -----root ca chain-----
  • 秘密キー - サーバー証明書の秘密キーです。

uipathctl config tls-certificates update --cert server.crt --cacert ca.crt --key server.keyuipathctl config tls-certificates update --cert server.crt --cacert ca.crt --key server.key 
証明書を自分で管理する場合は、certificates update コマンドで --use-istio-cert フラグを使用する必要があります。 このフラグを使用すると、既存のシークレットを <uipath> 名前空間にコピーできます。 --use-istio-cert フラグを使用するときは、他の証明書フラグを使用しないでください。使用しないと、コマンドは失敗します。<uipath>の代わりに他の名前空間を使用する場合は、--namespace フラグに渡して指定する必要があります。

TLS 証明書にアクセスする

証明書ファイルを出力するには、次のコマンドを実行します。

uipathctl config tls-certificates getuipathctl config tls-certificates get

追加の CA 証明書を管理する

重要:

クラスターに外部ソフトウェアを信頼させるには、追加の信頼された CA 証明書の提供が必要になる場合があります。 たとえば、SQL Server の CA 証明書、SMTP サーバーの CA 証明書、外部の S3 互換 ObjectStore の CA 証明書などがあります。

インストール時に、セキュリティで保護された TLS 通信を必要とする外部ソフトウェアすべてに対して CA 証明書を提供する必要があります。 ただし、TLS 通信を有効化していない場合は、インストール後に設定できます。

追加の CA 証明書の詳細情報を表示するには、次のコマンドを実行します。

uipathctl config additional-ca-certificates --help uipathctl config additional-ca-certificates --help

出力:

***************************************************************************************

Manage additional ca certificates

Usage:
  uipathctl config additional-ca-certificates [flags]
  uipathctl config additional-ca-certificates [command]

Available Commands:
  get         Get the current additional ca certificates
  update      Update additional ca certificates

Flags:
  -h, --help   help for additional-ca-certificates

Global Flags:
      --context string      name of the kubeconfig context to use
      --kubeconfig string   kubectl configuration file (default: ~/.kube/config)
      --log-format string   log format. one of [text,json] (default "text")
      --log-level string    set log level. one of [trace,debug,info,error] (default "error")
  -q, --quiet               suppress all output except for errors and warnings
      --timeout duration    timeout of the command (default 1h0m0s)

******************************************************************************************************************************************************************************

Manage additional ca certificates

Usage:
  uipathctl config additional-ca-certificates [flags]
  uipathctl config additional-ca-certificates [command]

Available Commands:
  get         Get the current additional ca certificates
  update      Update additional ca certificates

Flags:
  -h, --help   help for additional-ca-certificates

Global Flags:
      --context string      name of the kubeconfig context to use
      --kubeconfig string   kubectl configuration file (default: ~/.kube/config)
      --log-format string   log format. one of [text,json] (default "text")
      --log-level string    set log level. one of [trace,debug,info,error] (default "error")
  -q, --quiet               suppress all output except for errors and warnings
      --timeout duration    timeout of the command (default 1h0m0s)

***************************************************************************************
以降のセクションでは、uipathctl config additional-ca-certificates コマンドを使用して実行できる操作について説明します。

CA 証明書を更新する

このコマンドにより、既存の構成済み CA 証明書を更新または置換できます。

uipathctl config additional-ca-certificates update --cacert additional_ca.crtuipathctl config additional-ca-certificates update --cacert additional_ca.crt
注:
前のコマンドは、既存の証明書のリストに新しい証明書を追加します。 以前に構成した証明書をすべて置き換える場合は、必ず末尾に --replace を追加してください。
CA 証明書バンドル ファイルは有効な .pem 形式である必要があり、複数の証明書を含めることができます。

CA 証明書にアクセスする

設定済みの CA 証明書をダウンロードするには、次のコマンドを実行します。

uipathctl config additional-ca-certificates get uipathctl config additional-ca-certificates get

ID トークン署名証明書を管理する

Automation Suite では、ID トークン署名証明書のローテーションを管理する方法として、自動と手動の 2 つの方法が用意されています。

追加の ID トークン署名証明書の詳細情報を表示するには、次のコマンドを実行します。

uipathctl config token-signing-certificates --help uipathctl config token-signing-certificates --help

出力:

************************************************************************************

Manage token signing certificates

Usage:
  uipathctl config token-signing-certificates [flags]
  uipathctl config token-signing-certificates [command]

Available Commands:
  get         Get the current token signing certificate
  rotate      Rotate token signing certificates
  update      Update future token signing certificate

Flags:
  -h, --help   help for token-signing-certificates

Global Flags:
      --context string      name of the kubeconfig context to use
      --kubeconfig string   kubectl configuration file (default: ~/.kube/config)
      --log-format string   log format. one of [text,json] (default "text")
      --log-level string    set log level. one of [trace,debug,info,error] (default "error")
  -q, --quiet               suppress all output except for errors and warnings
      --timeout duration    timeout of the command (default 1h0m0s)

************************************************************************************************************************************************************************

Manage token signing certificates

Usage:
  uipathctl config token-signing-certificates [flags]
  uipathctl config token-signing-certificates [command]

Available Commands:
  get         Get the current token signing certificate
  rotate      Rotate token signing certificates
  update      Update future token signing certificate

Flags:
  -h, --help   help for token-signing-certificates

Global Flags:
      --context string      name of the kubeconfig context to use
      --kubeconfig string   kubectl configuration file (default: ~/.kube/config)
      --log-format string   log format. one of [text,json] (default "text")
      --log-level string    set log level. one of [trace,debug,info,error] (default "error")
  -q, --quiet               suppress all output except for errors and warnings
      --timeout duration    timeout of the command (default 1h0m0s)

************************************************************************************
重要:

証明書への署名には、キーの最大長 4096 ビットを使用できます。 ベスト プラクティスとして、少なくとも 512 ビット (64 バイト) のキー長を使用することを強くお勧めします。

次のセクションでは、uipathctl config token-signing-certificates コマンドを使用して実行できる操作について詳しく説明します。

証明書の自動ローテーション

証明書の自動ローテーションとは、署名キーのライフサイクルを Automation Suite が管理することを意味します。 これには、90 日ごとのキーのローテーション、ローテーションの 14 日前に新しいキーのアナウンス、ローテーション後の 14 日間古いキーを保持し、14 日間の期間が終了したら削除することが含まれます。

古いバージョンから v2024.10 にアップグレードする場合、証明書の自動ローテーションは既定で無効化されています。 自動キー管理を有効にするには、次のコマンドを使用します。

uipathctl config token-signing-certificates automatic-key-management enableuipathctl config token-signing-certificates automatic-key-management enable
重要:

証明書の自動ローテーションを有効化すると、最大 1 時間のダウンタイムが発生する可能性があります。

Automation Suite のクリーン インストールの場合、証明書の自動ローテーションは既定で有効化されています。 自動キー管理を無効にするには、次のコマンドを使用します。

uipathctl config token-signing-certificates automatic-key-management disableuipathctl config token-signing-certificates automatic-key-management disable

自動管理機能が無効になっている場合は、署名証明書を手動で更新およびローテーションする必要があります。 手動のキー管理について詳しくは、証明書の手動更新とローテーションに関するドキュメントをご覧ください。

証明書の手動更新

新しい証明書をアップロードしてトークンに署名するには、次のコマンドを実行します。

注:

次のコマンドでは、既存のトークン署名証明書は置換されません。

指定する証明書が .pem 形式であることを確認します。
次の例に示すように、 server.crt ファイルにはチェーン全体が含まれている必要があります。
-----server cert-----
-----root ca chain----------server cert-----
-----root ca chain-----
uipathctl config token-signing-certificates update --cert server.crt --key server.keyuipathctl config token-signing-certificates update --cert server.crt --key server.key

証明書を手動でローテーションする

古い証明書をローテーションしたり、新しい証明書に置換したりするには、次のコマンドを実行します。

uipathctl config token-signing-certificates rotateuipathctl config token-signing-certificates rotate

ローテーション後、次のコマンドを実行して、デプロイとステートフル セットを再起動します。

kubectl -n uipath rollout restart deploy
kubectl -n uipath rollout restart stskubectl -n uipath rollout restart deploy
kubectl -n uipath rollout restart sts

証明書にアクセスする

現在のトークン署名証明書をダウンロードするには、次のコマンドを実行します。

uipathctl config token-signing-certificates getuipathctl config token-signing-certificates get
注:

証明書の更新とローテーションの間には、約 24 - 48 時間のリード タイムが必要です。

このリード タイムは、キャッシュされている、古い証明書によって署名されたトークンの認証を引き続きサポートするために必要となります。

キャッシュ トークンの有効期限の満了を待たずに証明書をローテーションすると、ダウンタイムが発生する場合があります。この場合、すべてのロボットの再起動が必要になる可能性もあります。

このページは役に立ちましたか?

サポートを受ける
RPA について学ぶ - オートメーション コース
UiPath コミュニティ フォーラム
Uipath Logo White
信頼とセキュリティ
© 2005-2025 UiPath. All rights reserved.