- スタート アップ ガイド
- ホストの管理
- 組織
- 認証とセキュリティ
- ライセンス
- アカウントとロール
- 外部アプリケーション
- 通知
- ログ
- トラブルシューティング
Active Directory との連携を構成する
Windows 認証を使用した SSO を有効化し、Active Directory 連携によるディレクトリ検索機能を有効化できます。ディレクトリ検索を使用すると、ディレクトリ アカウントやグループを検索して、それらをローカル アカウントと同じように扱うことができます。
既知の制限事項
- Directory search does not find users from an external trust domain). This feature is not supported because there isn't a mutually-trusted authority with external trusts.
- Windows 認証は Automation Suite で Kerberos プロトコルを使用するため、Windows ログインはドメインに参加しているマシンでのみ使用できます。
手順 1. Active Directory との連携を構成する
Automation Suite のクラスターが Active Directory (AD) にアクセスできることを IT 管理者も交えて確認してください。
Active Directory との連携を構成するには、次の 2 つのオプションのいずれかを使用します。
- Kerberos 認証
- ユーザー名とパスワード
より多くのシナリオがサポートされているため、Kerberos 認証をお勧めします。
| シナリオ | ユーザー名とパスワード | Kerberos 認証 |
|---|---|---|
| 同じフォレスト内のドメインをディレクトリ検索する | サポート対象 | サポート対象 |
| 信頼できるフォレスト内のドメインをディレクトリ検索する | サポート対象外 | サポート対象 |
| 外部の信頼できるドメインをディレクトリ検索する | サポート対象外 | サポート対象外 |
a. Kerberos の構成 (推奨)
-
「Kerberos 認証を設定する」の指示に従って、Kerberos 認証を構成します。
-
にシステム管理者としてログインします。
-
[ユーザー] ページに移動して、[認証設定] タブを選択します。
-
[外部プロバイダー] セクションで、[Active Directory] の [設定] をクリックします。
- [有効] チェック ボックスを選択します。
- [Kerberos 認証を使用] チェックボックスをオンにします。
-
[テストして保存] をクリックして変更を保存します。
-
「identity-service-api-*」ポッドを再起動します。
- SSH を使用してプライマリ サーバーに接続します。
- 次のコマンドを実行します。
kubectl -n uipath rollout restart deployment identity-service-api
b. ユーザー名とパスワードの設定
When you use this option, UiPath® service uses credentials provided in clear text to communicate with Active Directory. To prevent this, we recommend using LDAP over SSL (LDAPS) with this configuration.
UiPath クラスターを操作できるのは、このページで構成したフォレストと同じフォレストのユーザーのみです。信頼されたフォレストのユーザーは、この UiPath クラスターにログインできません。
b.1.LDAPS を使用するための前提条件
SSL 経由の LDAP (LDAPS) を使用する場合は、最初に Active Directory 環境で SSL 経由の LDAP を構成し、UiPath クラスター構成で使用するルート証明書を取得する必要があります。
既知の問題: 設定された LDAPS 証明書は、アップグレード時に保持されません。そのため、アップグレード後に、LDAP によるセキュリティで保護された接続を機能させるには、LDAPS 証明書を再度追加する必要があります。
-
LDAPS の SSL 証明書を取得して各ドメイン コントローラーにインストールします。
For more information and instructions, refer to the article LDAP over SSL (LDAPS) Certificate.
-
次のコマンドを実行して、ルート証明書を Base64 でエンコードします。
[Convert]::ToBase64String([System.IO.File]::ReadAllBytes("<Path to the .crt or .cer file>"))[Convert]::ToBase64String([System.IO.File]::ReadAllBytes("<Path to the .crt or .cer file>")) -
エンコードされたルート証明書を ArgoCD に追加します。
- ArgoCD にログインします。
- uipath アプリケーションを選択し、移動します。
- 左上隅の [ APP DETAILS] を選択します。
- [PARAMETERS] セクションで、
global.userInputs.certificate.identity.ldaps.customRootCAパラメーターを検索します。 - パラメーターの値を、前に取得したエンコードされたコンテンツに更新します。
- 保存します。
- [SYNC] を選択して変更を適用します。
b.2.Active Directory の構成
-
ホスト ポータルにシステム管理者としてログインします。
-
左側のペインの上部にある [ホスト ] が選択されていることを確認し、[ セキュリティ] を選択します。
-
[ Active Directory] で [ 構成] を選択します。
- Active Directory アカウントを使用したログインのみを許可する場合は、[このプロバイダーを使用した自動ログインを強制] チェックボックスをオンにします。
- [Kerberos 認証を使用] チェックボックスをオフにします。
- (任意ですが強く推奨) [SSL 経由の LDAP (LDAPS) を使用] チェックボックスをオンにします。
- [表示名] フィールドに、このサインイン オプションのログイン ページに表示する名前を入力します。
- [既定のドメイン] フィールドに、Active Directory (AD) の完全修飾ドメイン名 (FQDN) を入力します。
- [ユーザー名] フィールドに、Active Directory ユーザーのユーザー名を入力します。
DOMAIN\usernameの形式である必要があります。例:TESTDOMAIN\user1 - [ユーザー パスワード] フィールドに、AD アカウントのパスワードを入力します。
-
[ テストして保存 ] を選択して変更を保存し、前のページに戻ります。
-
[Active Directory] の左側にあるトグルを選択し、連携を有効化します。
-
identity-service-api-*ポッドを再起動します。- SSH を使用してプライマリ サーバーに接続します。
- 次のコマンドを実行します。
kubectl -n uipath rollout restart deployment identity-service-api
手順 2. Windows 認証を構成する
前提条件
<KERB_DEFAULT_KEYTAB> を取得します。これは、Kerberos 設定の一部として生成される keytab ファイルの Base64 エンコード文字列です。
Automation Suite クラスターを構成する
-
ArgoCD に移動し、管理者としてログインします。
-
「uipath」アプリケーションを選択し、移動します。
-
左上隅の [APP DETAILS] をクリックします。
-
[PARAMETERS] セクションで、
global.userInputs.identity.krb5KeytabSecretパラメーターを検索します。既定では、このパラメーターにはプレースホルダー値が設定されています。
-
パラメーターのプレースホルダー値を
<KERB_DEFAULT_KEYTAB>で更新して保存します。 -
[SYNC] をクリックして変更を適用します。
-
同期が成功したら、コマンド
kubectl -n uipath rollout restart deployment identity-service-apiを実行して Identity Server を再起動します。
手順 3. ブラウザーを設定する
Microsoft Internet Explorer
サポートされていません。
Microsoft Edge
追加の構成は必要ありません。
Google Chrome
通常、Google Chrome は追加の設定なしで動作します。
うまくいかない場合は、次の手順に従います。
-
[ツール] > [インターネット オプション] > [セキュリティ] に移動します。
-
[ローカル イントラネット] を選択します。
-
[ サイト] を選択します。
-
[イントラネットのネットワークを自動的に検出する] が選択されているか、すべてのオプションが選択されていることを確認します。
-
[ 詳細設定] を選択します。
-
Automation Suite の FQDN を [ローカル イントラネット] に追加します。
-
[ 閉じる ] と [ OK] を選択します。
-
[ On Custom Level] を選択します。
-
必要に応じて、[ユーザー認証] の下にある [イントラネット ゾーンでのみ自動的にログオンする] を選択します。
選択した場合、ブラウザーがリダイレクト認証要求を受信すると、要求の送信元がチェックされます。ドメインまたは IP がイントラネットに属している場合、ブラウザーがユーザー名とパスワードを自動的に送信します。イントラネットに属していない場合は、ブラウザーにユーザー名とパスワードの入力ダイアログが開かれ、手動で入力する必要があります。
-
必要に応じて、[ユーザー認証] の下にある [現在のユーザー名とパスワードで自動的にログオンする] を選択します。
選択した場合、ブラウザーがリダイレクト認証要求を受信すると、ユーザー名とパスワードがサイレント モードで送信されます。認証結果が成功の場合、ブラウザーは元の動作を続行します。認証に失敗した場合は、ブラウザーにユーザー名とパスワードの入力ダイアログが開かれ、成功するまでリトライされます。
-
[インターネット オプション] > [詳細設定] タブの [セキュリティ] セクションの下で、[統合 Windows 認証を使用する] が選択されていることを確認します。
Mozilla Firefox
- ブラウザーの設定ウィンドウを開きます。
- アドレス バーに「about:config」と入力します。
- Kerberos 認証を使用する Automation Suite の FQDN を指定します。
- 「
network.negotiate」という用語を検索します。 - Kerberos で次を有効化し、設定します。
network.negotiate-auth.delegation-uris(値の例:uipath-34i5ui35f.westeurope.cloudapp.azure.com)、network.negotiate-auth.trusted-uris(値の例:uipath-34i5ui35f.westeurope.cloudapp.azure.com)、network.negotiate-auth.allow-non-fqdn(値:true)
- 「
手順 4. 組織に対して Windows 認証を許可する
以上で UiPath Platform と Windows 認証の連携が設定されました。UiPath でユーザー アカウントを作成するユーザーは、[ログイン] ページの [Windows] オプションを使用して UiPath Platform にサインインできます。
Windows 資格情報によるログインを許可するには、各組織の管理者が以上の設定をそれぞれの組織に対して実行する必要があります。
- 組織管理者としてログインします。
- Active Directory ユーザーまたはグループに組織レベルのロールを割り当てます。これは検索から選択できます。
- Windows 認証でのログインを許可するユーザーごとに、前の手順を繰り返します。
ロールを割り当てたユーザーは、Active Directory アカウントを使用して UiPath の組織にログインできます。 ドメインに参加しているマシンからログインする必要があります。
トラブルシューティング
Windows 資格情報を使用してログインしようとすると HTTP 500 エラーが発生する場合は、以下の項目を確認します。
-
Windows マシンはドメインに参加していますか?
該当するマシンで、[コントロール パネル] > [システムとセキュリティ] > [システム] に移動し、ドメインが表示されているかどうかを確認します。ドメインが表示されていない場合は、マシンをドメインに追加します。Kerberos プロトコルで Windows 認証を使用するには、マシンがドメインに参加している必要があります。
-
同じ資格情報で Windows マシンにログインできますか?
できない場合は、システム管理者にヘルプを依頼してください。
-
Microsoft Edge 以外のブラウザーを使用していますか?
Additional configuration is required for supported browsers other than Microsoft Edge.
-
keytab の設定を確認します。
-
keytab の生成後、Active Directory サーバーでは、Active Directory ユーザーのプロパティ (
servicePrincpalName) がHTTP/<Service Fabric FQDN>の形式になっている必要があります (例:HTTP/uipath-34i5ui35f.westeurope.cloudapp.azure.com)。 -
Active Directory でユーザー アカウントに対して [このアカウントで Kerberos AES 256 ビット暗号化をサポートする] オプションを選択する必要があります。
これが不適切に設定されていると、identity-service-api ログに次のように表示されます。
Microsoft.AspNetCore.Authentication.Negotiate.NegotiateHandler An exception occurred while processing the authentication request. GssApiException*GSSAPI operation failed with error - Unspecified GSS failure. Minor code may provide more information (Request ticket server HTTP/sfdev.eastus.cloudapp.azure.com@EXAMPLE.COM kvno 4 enctype aes256-cts found in keytab but cannot decrypt ticket).* at Microsoft.AspNetCore.Authentication.Negotiate.NegotiateHandler.HandleRequestAsync()Microsoft.AspNetCore.Authentication.Negotiate.NegotiateHandler An exception occurred while processing the authentication request. GssApiException*GSSAPI operation failed with error - Unspecified GSS failure. Minor code may provide more information (Request ticket server HTTP/sfdev.eastus.cloudapp.azure.com@EXAMPLE.COM kvno 4 enctype aes256-cts found in keytab but cannot decrypt ticket).* at Microsoft.AspNetCore.Authentication.Negotiate.NegotiateHandler.HandleRequestAsync()
-
-
使用しているドメイン内で複数の Active Directory を設定している場合、認証は失敗し、identity-service-api ログに次のように表示されます。
kinit: Client 'xyz@example.com' not found in Kerberos database while getting initial credentialskinit: Client 'xyz@example.com' not found in Kerberos database while getting initial credentialsこの場合、認証用に作成したマシン アカウントがすべての Active Directory に複製されていることを確認します。
-
ktpassを実行してユーザー アカウントに新しいパスワードを割り当てると、キーのバージョン (kvno) が増加し、古い keytab が無効になります。identity-service-api ログには、次のように表示されます。Request ticket server HTTP/rpasf.EXAMPLE.COM kvno 4 not found in keytab; ticket is likely out of dateRequest ticket server HTTP/rpasf.EXAMPLE.COM kvno 4 not found in keytab; ticket is likely out of dateこの場合、ArgoCD で
krb5KeytabSecretを更新する必要があります。 -
identity-service-apiポッドで次のエラーが発生した場合、GssApiException*GSSAPI operation failed with error - Unspecified GSS failure. Minor code may provide more information (Keytab FILE:/uipath/krb5/krb5.keytab is nonexistent or empty).GssApiException*GSSAPI operation failed with error - Unspecified GSS failure. Minor code may provide more information (Keytab FILE:/uipath/krb5/krb5.keytab is nonexistent or empty).- この場合はまず、ArgoCD で
global.userInputs.identity.krb5KeytabSecretパラメーターを指定したかどうかを確認します。 このパラメーターが存在する場合は、keytab の生成に使用した Active Directory ユーザーの資格情報で Windows マシンにログインできるかどうかを確認します。パスワードが変更されたか、有効期限が切れている場合は、keytab を再生成する必要があります。 - この問題の原因としてもう 1 つ考えられるのは、以前に ArgoCD が不適切に同期されていたことです。この問題を修正するには、既存の
global.userInputs.identity.krb5KeytabSecretを削除して ArgoCD を同期します。操作が成功したらglobal.userInputs.identity.krb5KeytabSecretを更新し、再度同期します。
- この場合はまず、ArgoCD で
-
ブラウザーで、期待される SPN を使用していますか?
次の手順に従って Kerberos イベント ログを有効化すると、
KDC_ERR_S_PRINCIPAL_UNKNOWNエラーが Kerberos イベント ログに表示されます。この問題の詳細については、 Microsoft のドキュメントをご覧ください。この問題を解決するには、グループ ポリシーを変更することにより、Kerberos 認証をネゴシエートする際の CNAME ルックアップを無効化してください。詳細については、 Google Chrome の手順 と Microsoft Edge の手順をご覧ください。