Automation Suite
2021.10
バナーの背景画像
UiPath Automation Suite 管理ガイド
最終更新日 2024年3月25日

Active Directory との連携を構成する

Windows 認証を使用した SSO を有効化し、Active Directory 連携によるディレクトリ検索機能を有効化できます。ディレクトリ検索を使用すると、ディレクトリ アカウントやグループを検索して、それらをローカル アカウントと同じように扱うことができます。

既知の制限事項

  • ディレクトリ検索では、外部の信頼できるドメインからのユーザーは検索されません。外部の信頼できる機関と相互に信頼できる機関がないため、この機能はサポートされていません。
  • Windows 認証は Automation Suite で Kerberos プロトコルを使用するため、Windows ログインはドメインに参加しているマシンでのみ使用できます。

手順 1. Active Directory との連携を構成する

Automation Suite のクラスターが Active Directory (AD) にアクセスできることを IT 管理者も交えて確認してください。

Active Directory との連携を構成するには、次の 2 つのオプションのいずれかを使用します。

  1. Kerberos 認証
  2. ユーザー名とパスワード

より多くのシナリオがサポートされているため、Kerberos 認証をお勧めします。

シナリオ

ユーザー名とパスワード

Kerberos 認証

同じフォレスト内のドメインをディレクトリ検索する

サポート対象

サポート対象

信頼できるフォレスト内のドメインをディレクトリ検索する

サポート対象外

サポート対象

外部の信頼できるドメインをディレクトリ検索する

サポート対象外

サポート対象外

a. Kerberos の構成 (推奨)

  1. Kerberos 認証を設定する」の指示に従って、Kerberos 認証を構成します。
  2. Automation Suite のホスト ポータルにシステム管理者としてログインします。
  3. [ユーザー] ページに移動して、[認証設定] タブを選択します。
  4. [外部プロバイダー] セクションで、[Active Directory][設定] をクリックします。
    • [有効] チェック ボックスをオンにします。
    • [Kerberos 認証を使用] チェックボックスをオンにします。
  5. [テストして保存] をクリックして変更を保存します。
  6. 「identity-service-api-*」ポッドを再起動します。
    1. SSH を使用してプライマリ サーバーに接続します。
    2. 次のコマンドを実行します。kubectl -n uipath rollout restart deployment identity-service-api

b. ユーザー名とパスワードの設定 (非推奨)

重要: このオプションを使用する場合、UiPath サービスは、クリア テキストで提供される資格情報を使用して Active Directory と通信します。
注: このページで設定したドメインと同じドメインのユーザーのみが UiPath クラスターと対話できます。
  1. Automation Suite のホスト ポータルにシステム管理者としてログインします。
  2. [ユーザー] ページに移動して、[認証設定] タブを選択します。
  3. [外部プロバイダー] セクションで、[Active Directory][設定] をクリックします。

    ウィンドウの右側に [Active Directory を設定] パネルが開きます。

  4. 連携を次のように設定します。
    • [有効] チェック ボックスをオンにします。
    • このプロバイダーを使用したログインを強制するには、[このプロバイダーを使用した自動ログインを強制] チェックボックスをオンにします。
    • [Kerberos 認証を使用] チェックボックスをオンにして、認証に Kerberos プロトコルを使用します(推奨)。
    • [表示名] フィールドに、このログイン オプションのログイン ページに表示するテキストを入力します。
    • [既定のドメイン] フィールドに、Active Directory (AD) の完全修飾ドメイン名 (FQDN) を入力します。
    • [ユーザー名] フィールドに、Active Directory ユーザーのユーザー名を入力します。DOMAIN\usernameの形式にする必要があります。例: TESTDOMAIN\user1
    • [ユーザー パスワード] フィールドに、上記 Active Directory アカウントのパスワードを入力します。
  5. [テストして保存] をクリックして変更を保存します。
  6. 「identity-service-api-*」ポッドを再起動します。
    1. SSH を使用してプライマリ サーバーに接続します。
    2. 次のコマンドを実行します。kubectl -n uipath rollout restart deployment identity-service-api

トラブルシューティング

エラー Domain unreachable が発生する場合は、コマンド getent ahosts <AD domain> を使用して DNS ルーティングを確認します。
IP アドレスが返されない場合は、ノードの /etc/resolv.conf を確認します。ネームサーバーの値が Active Directory ドメインの DNS を指している必要があります。指していない場合は、システム管理者に問い合わせて、適切な設定を依頼してください。

ノードが Azure 上で実行される場合は、「Azure 仮想ネットワーク内のリソースの名前解決」の手順に従ってください。

これを行う方法の 1 つは、次のとおりです。

  1. Azure でノードの仮想ネットワークに移動し、仮想ネットワークの DNS サーバーを Active Directory DNS に設定します。
  2. systemctl restart NetworkManager.service を実行し、/etc/resolv.conf が更新されているかどうかを確認します。
  3. ArgoCD からクラスターのコア DNS を再起動します。

手順 2. Windows 認証を構成する

前提条件

<KERB_DEFAULT_KEYTAB> を取得します。これは、Kerberos 設定の一部として生成される keytab ファイルの Base64 エンコード文字列です。

Automation Suite クラスターを構成する

  1. ArgoCD に移動し、管理者としてログインします。
  2. 「uipath」アプリケーションを選択し、移動します。
  3. 左上隅の [APP DETAILS] をクリックします。
  4. [PARAMETERS] セクションで、global.userInputs.identity.krb5KeytabSecret パラメーターを検索します。

    既定では、このパラメーターにはプレースホルダー値が設定されています。

  5. パラメーターのプレースホルダー値を <KERB_DEFAULT_KEYTAB> で更新して保存します。
  6. [SYNC] をクリックして変更を適用します。
  7. 同期が成功したら、コマンド kubectl -n uipath rollout restart deployment identity-service-api を実行して Identity Server を再起動します。

手順 3. ブラウザーを設定する

Microsoft Internet Explorer

サポートされていません。

Microsoft Edge

追加の構成は必要ありません。

Google Chrome

通常、Google Chrome は追加の設定なしで動作します。

動作しない場合は、以下の手順を実行します。

  1. [ツール] > [インターネット オプション] > [セキュリティ] に移動します。
  2. [ローカル イントラネット] を選択します。
  3. [サイト] をクリックします。
  4. [イントラネットのネットワークを自動的に検出する] が選択されているか、すべてのオプションが選択されていることを確認します。
  5. [詳細設定] をクリックします。
  6. Automation Suite の FQDN を [ローカル イントラネット] に追加します。
  7. [閉じる][OK] の順にクリックします。
  8. [レベルのカスタマイズ] をクリックします。
  9. 必要に応じて、[ユーザー認証] の下にある [イントラネット ゾーンでのみ自動的にログオンする] を選択します。

    選択した場合、ブラウザーがリダイレクト認証要求を受信すると、要求の送信元がチェックされます。ドメインまたは IP がイントラネットに属している場合、ブラウザーがユーザー名とパスワードを自動的に送信します。イントラネットに属していない場合は、ブラウザーにユーザー名とパスワードの入力ダイアログが開かれ、手動で入力する必要があります。

  10. 必要に応じて、[ユーザー認証] の下にある [現在のユーザー名とパスワードで自動的にログオンする] を選択します。

    選択した場合、ブラウザーがリダイレクト認証要求を受信すると、ユーザー名とパスワードがサイレント モードで送信されます。認証結果が成功の場合、ブラウザーは元の動作を続行します。認証に失敗した場合は、ブラウザーにユーザー名とパスワードの入力ダイアログが開かれ、成功するまでリトライされます。

  11. [インターネット オプション] > [詳細設定] タブの [セキュリティ] セクションの下で、[統合 Windows 認証を使用する] が選択されていることを確認します。

Mozilla Firefox

  1. ブラウザーの設定ウィンドウを開きます。
  2. アドレス バーに「about:config」と入力します。
  3. Kerberos 認証を使用する Automation Suite の FQDN を指定します。
    1. network.negotiate」という用語を検索します。
    2. 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 認証を許可する

これで Automation Suite が Windows 認証と連携されたので、Automation Suite にユーザー アカウントが作成されているユーザーは、[ログイン] ページで Windows のオプションを使用して Automation Suite にサインインできます。



Windows 資格情報によるログインを許可するには、各組織の管理者が以上の設定をそれぞれの組織に対して実行する必要があります。

  1. Automation Suite に組織管理者としてログインします。
  2. Active Directory ユーザーまたはグループに組織レベルのロールを割り当てます。これは検索から選択できます。
  3. Windows 認証でのログインを許可するユーザーごとに、上記の手順を繰り返します。

その後、ロールを割り当てたユーザーは、その Active Directory アカウントで Automation Suite 組織にログインできます。ユーザーは、ドメインに参加しているマシンからログインする必要があります。

トラブルシューティング

Windows 資格情報を使用してログインしようとすると HTTP 500 エラーが発生する場合は、以下の項目を確認します。

  1. Windows マシンはドメインに参加していますか?

    該当するマシンで、[コントロール パネル] > [システムとセキュリティ] > [システム] に移動し、ドメインが表示されているかどうかを確認します。ドメインが表示されていない場合は、マシンをドメインに追加します。Kerberos プロトコルで Windows 認証を使用するには、マシンがドメインに参加している必要があります。

  2. 同じ資格情報で Windows マシンにログインできますか?

    できない場合は、システム管理者にヘルプを依頼してください。

  3. Microsoft Edge 以外のブラウザーを使用していますか?

    Microsoft Edge 以外のサポート対象ブラウザーでは、追加の設定が必要です。

  4. keytab の設定を確認します。
    1. keytab の生成後、Active Directory サーバーでは、Active Directory ユーザーのプロパティ (servicePrincpalName) が HTTP/<Service Fabric FQDN> の形式になっている必要があります (例: HTTP/uipath-34i5ui35f.westeurope.cloudapp.azure.com)。
    2. 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()
  5. 使用しているドメイン内で複数の 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 に複製されていることを確認します。

  6. 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 を更新する必要があります。
  7. 次のエラーが 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).
    1. この場合はまず、ArgoCD で global.userInputs.identity.krb5KeytabSecret パラメーターを指定したかどうかを確認します。 このパラメーターが存在する場合は、keytab の生成に使用した Active Directory ユーザーの資格情報で Windows マシンにログインできるかどうかを確認します。パスワードが変更されたか、有効期限が切れている場合は、keytab を再生成する必要があります。
    2. この問題の原因としてもう 1 つ考えられるのは、以前に ArgoCD が不適切に同期されていたことです。この問題を修正するには、既存の global.userInputs.identity.krb5KeytabSecret を削除して ArgoCD を同期します。操作が成功したら global.userInputs.identity.krb5KeytabSecret を更新し、再度同期します。
  8. ブラウザーで、期待される SPN を使用していますか?

    指示に従って Kerberos イベント ログを有効化した場合、Kerberos イベント ログに KDC_ERR_S_PRINCIPAL_UNKNOWN エラーが表示されます。この問題の詳細については、Microsoft のドキュメントをご覧ください。

    この問題を解決するには、グループ ポリシーを変更することにより、Kerberos 認証をネゴシエートする際の CNAME ルックアップを無効化してください。詳細については、Google Chrome の手順Microsoft Edge の手順をご覧ください。

Was this page helpful?

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