- 基本情報
- ベスト プラクティス
- テナント
- リソース カタログ サービス
- フォルダー コンテキスト
- 自動化
- プロセス
- ジョブ
- トリガー
- ログ
- 監視
- キュー
- アセット
- ストレージ バケット
- Test Suite - Orchestrator
- その他の構成
- Integrations
- ホストの管理
- 組織管理者
- トラブルシューティング
SAML 連携を設定する
Orchestrator は、SAML 2.0 標準を使用する任意の ID プロバイダー (IdP) に接続できます。ここでは、SAML 連携の設定例をいくつか示して、全体的なプロセスについて説明します。
-
ID プロバイダーからの暗号化された SAML アサーションはサポートされていません。
-
ID プロバイダーからユーザーおよびグループを検索することはできません。 検索できるのは、プロビジョニングされたディレクトリ ユーザーのみです。
-
SAML ユーザーがプロビジョニング ルールによって Administrators グループに割り当てられており、[Orchestrator UI へのアクセスを許可] の設定が無効化されている場合、Orchestrator にサインインできません。この問題は、ユーザー インターフェイスへのアクセスの設定を無効化したことでグループの設定が上書きされるために発生します。
SAML 連携を設定するには、以下が必要です。
-
Orchestrator とサードパーティ ID プロバイダーの、両方の管理者権限。
ID プロバイダーの管理者権限がない場合は、管理者とともに設定プロセスを完了できます。
-
UiPath® Studio および UiPath Assistant のバージョン 2020.10.3 以降 (推奨されるデプロイを使用するよう設定できるようにするため)。
注:現在、認証に Azure Active Directory との連携を使用している場合は、より豊富な機能を使用できる AAD との連携をそのまま維持することをお勧めします。
AAD との連携から切り替える場合は、アクセス スキーマを完全に再作成しなくても済むように、ディレクトリ グループを使用して行われたロール割り当てを、ディレクトリ アカウントへのロールの直接割り当てに、手動で置き換える必要があります。
組織でメール アドレスを再利用している場合は、SAML 連携を設定する前に、非アクティブなユーザー アカウントをすべて削除することが重要です。
連携を有効化すると、Orchestrator に存在するローカル アカウントを、同じメール アドレスを使用する外部 ID プロバイダーのディレクトリ アカウントにリンクできます。このアカウントのリンクは、そのメール アドレスのディレクトリ アカウント ユーザーが初めてサインインしたときに作成されます。移行がシームレスに行われるように、ID プロバイダーの ID は、ローカル アカウントのすべてのロールを継承します。
そのため、Orchestrator に非アクティブなローカル アカウントが存在する場合、ローカル アカウントとディレクトリ アカウントが一致せず、意図せずに権限が昇格される可能性があります。
非アクティブなユーザー アカウントを削除するには、以下の手順を実行します。
続いて、Orchestrator と ID プロバイダー (IdP) の両方を連携用に設定する必要があります。
Orchestrator は、SAML 2.0 標準を使用する任意のサードパーティの ID プロバイダー (IdP) に接続できます。
設定は選択した IdP によって異なることがありますが、以下のプロバイダーについては設定を検証済みです。
-
Okta
-
PingOne
以下の設定手順を使用して、これらのプロバイダーとの連携を設定できます。
他の ID プロバイダーについては、それぞれの連携に関するドキュメントに従ってください。
A. Okta の設定例
- 別のブラウザー タブで、Okta の管理コンソールにログインします。
- [アプリケーション] > [アプリケーション] に移動します。[アプリ統合を作成] をクリックし、サインオン方法として [SAML 2.0] を選択します。
- [一般設定] ページで、連携しているアプリの名前として Orchestrator を指定します。
-
[Configure SAML] ページの [General] セクションに、次のように入力します。
- シングル・サインオンURL: Orchestrator から取得したアサーション コンシューマー サービス URL の値を入力します。
- [Use this for Recipient URL and Destination URL] チェックボックスをオンにします。
- 対象URI: Orchestrator から取得したエンティティ ID の値を入力します。
- 名前 ID のフォーマット: [EmailAddress] を選択します。
- アプリケーションのユーザー名: [Email] を選択します。
-
[属性ステートメント] に以下を追加します。
-
名前:
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress
- [名前のフォーマット] は [指定なし] のままにします。
-
[値] を
user.email
に設定するか、ユーザーの一意のメール アドレスを含むユーザー属性に設定します。 - 必要に応じて、他の属性マッピングを追加します。Orchestrator では、姓、名、役職、部門の各ユーザー属性もサポートしています。その後、この情報は Orchestrator に反映され、Automation Hub など他のサービスで利用できるようになります。
-
名前:
- [フィードバック] ページで、好みのオプションを選択します。
- [Finish (完了)] をクリックします。
- [サインオン] タブの [設定] セクションの [セットアップ方法を表示] で、[Identity Provider metadata URL] の値をコピーし、後で使用するために保存します。
- Orchestrator 用の [アプリケーション] ページで、新たに作成したアプリケーションを選択します。
- [割り当て] タブで、[割り当て] > [ユーザーに割り当てる] を選択し、Orchestrator での SAML 認証の使用を許可するユーザーを選択します。
B. PingOne の設定例
SAML SSO 連携が正しく機能していることを確認するには、以下の手順を実行します。
- シークレット ブラウザー ウィンドウを開きます。
- Orchestrator URL に移動します。
-
以下を確認します。
- SAML ID プロバイダーでサインインを求められるか。
- 正常にサインインできるか。
- 既存のユーザー アカウントと一致するメール アドレスでサインインしている場合、適切な権限を持っているか。
管理者は、サインインを介して IdP によって指定される属性名と値のペアを使用して、既存の UiPath グループにユーザーを自動的に追加する Just-In-Time プロビジョニング ルールを設定できます。グループを活用することでユーザーは、サインイン時に適切なライセンスとロールとともに自動的にプロビジョニングされます。
Just-in-time プロビジョニング ルールは、ユーザーがサインインしたときに評価されます。ユーザー アカウントがルールの条件を満たしている場合、そのユーザー アカウントはルールに関連付けられたローカル グループに自動的に追加されます。
group
,リレーションシップ=is
,値=Automation User
.
フェーズ 1. プロビジョニング グループを設定する
アカウントをグループに追加すると、そのアカウントは、グループに対して定義されたライセンス、ロール、ロボットの設定がある場合はそれらを継承します。
そのため、特定の種類のユーザーを念頭に置いてグループを設定した場合 (たとえば、オートメーションを作成する従業員やオートメーションをテストする従業員など)、IdP でそれらのアカウントを他の類似のアカウントと同じ方法で設定することで、その特定の種類に該当する新しい従業員をオンボーディングできます。
つまりグループを一度設定すれば、必要に応じてそのグループにアカウントを追加することで設定を複製できます。また、特定のユーザー グループの設定を変更する必要がある場合でも、グループを 1 回更新するだけでグループ内のすべてのアカウントに変更が適用されます。
プロビジョニング ルール用にグループを設定する方法
-
新しいグループを作成する代わりに、既存のグループのいずれかを使用することもできます。
-
(任意かつユーザー ライセンス管理が必要) グループのユーザーがユーザー ライセンスを必要とする場合は、グループにライセンスの割り当てルールを設定します。
既存のグループを使用している場合は、グループのライセンス割り当てを確認し、適切なライセンスが割り当てられていることを確認します。割り当てが適切でない場合は、割り当てを変更するか、新しいグループを作成します。
-
テナント ロールを割り当て、必要に応じてグループのロボットの設定を完了します。「ロールをグループに割り当てる」をご覧ください。
-
必要に応じて、グループをフォルダーに追加し、フォルダー ロールを割り当てます。「フォルダーへのアクセス権を管理する」をご覧ください。
これで、このグループをプロビジョニング ルールで使用できます。
フェーズ 2. グループのプロビジョニング ルールを作成する
SAML プロビジョニング ルールに関連付けられた要求を SAML アプリケーションで設定し、SAML ペイロードに送信されるようにします。
SAML 連携の設定後かつグループの設定後に以下の手順を実行します。
- [管理] > [セキュリティ設定] > [認証設定] に移動します。
-
[SAML SSO] オプション下の [プロビジョニング ルールを表示] をクリックします。
[SAML SSO プロビジョニング ルール] ページが開き、既存のルールが表示されます。
-
ページの右上隅にある [ルールを追加] をクリックします。
[新しいルールを追加] ページが開きます。
- [基本情報] の下の [ルール名] フィールドに入力します。必要に応じて [説明] フィールドにも入力します。
-
[条件] の下の [ルールを追加] をクリックします。
新しい条件のフィールド行が追加されます。これらのフィールドの組み合わせで、アカウントがグループに追加されるためにサインイン時に満たす必要がある条件を定義します (グループは後で選択)。
- [クレーム] フィールドに、IdP に表示されるとおりにクレームの名前を入力します。
-
[リレーションシップ] リストから、クレームと値がどのような条件の組み合わせになるか選択します。次のオプションが利用できます。
Relationship
条件の要件
例
次の値に等しい
完全一致、大文字と小文字が区別される
Department is RPA
(部署 次に等しい RPA) の場合、Department
(部署) クレームの値がRPA
である必要があります。たとえば、値がRPADev
である場合は条件は満たされません。このリレーションシップは複数の値を持つクレームに対して機能します。
たとえば、administrator
値とdeveloper
値がGroup
クレームの下で送信される場合、Group is administrator
は有効なリレーションシップです。次の値に等しくない
指定された値以外、大文字と小文字が区別される
Department is not ctr
(部署 次の値に等しくない ctr) では、Department
(部署) に値ctr
が含まれていない、すべてのアカウントがグループに追加されます。部署がCtr
またはelectr
である場合は条件が満たされます。次の値を含む
値を含む、完全一致を必要としない、大文字と小文字が区別される
Department contains RPA
(部署 次の値を含む RPA) は、Department
(部署( クレームの値がRPA
を含む必要があります。たとえば、値がRPADev
、xRPAx
、またはNewRPA
の場合は条件が満たされます。次の値を含まない
値を含まない、完全一致を必要としない、大文字と小文字が区別される
Department not contains ctr
(部署 次の値を含まない ctr) の場合、Department
(部署) の値にctr
が含まれていない場合は、すべてのアカウントがグループに追加されます。たとえば、部署がctr
またはelectr
であるアカウントは、グループに追加されません。次の値に等しい (大文字と小文字を区別しない)
完全一致、大文字と小文字が区別されない
Department is case insensitive RPA
(部署 次の値に等しい (大文字と小文字を区別しない) RPA) は、Department
(部署) クレームの値がrpa
である必要があります。大文字と小文字は区別されません。たとえば、値がrpa
の場合は条件が満たされます。値がcrpa
である場合は条件は満たされません。次の値を含む (大文字と小文字を区別しない)
値を含む、完全一致を必要としない、大文字と小文字が区別されない
Department contains case insensitive RPA
(部署 次の値を含む (大文字と小文字を区別しない) RPA) は、Department
(部署) クレームの値がRPA
を含む必要があります。大文字と小文字は区別されません。たとえば、値がrpa
、cRPA
、またはrpA
の場合は条件が満たされます。 - [値] フィールドに、条件を満たすために必要な値を入力します。
-
別の条件を追加する場合は、[ルールを追加] をクリックして新しい条件の行を追加します。
複数の条件を追加した場合、プロビジョニング ルールが適用されるには、すべての条件が満たされる必要があります。たとえば、Department is RPA
(部署、次の値に等しい、RPA) とTitle is Engineer
(役職、次の値に等しい、エンジニア) というルールを定義すると、RPA 部に所属し、かつ役職がエンジニアであるユーザーのみが指定したグループに追加されます。部署が RPA で、タイトルが QA であるアカウントは、グループに追加されません。 -
[グループに割り当て] の下の [グループを追加] ボックスにグループ名を入力し、結果のリストからグループを選択します。必要に応じて、手順を繰り返してさらにグループを追加します。
条件が満たされると、ログイン時にこれらのグループにアカウントが自動的に追加されます。
- 右下の [保存] をクリックしてルールを追加します。
ルールが設定されている状態で、ユーザーがログインした際にそのアカウントがルールで指定した条件を満たしていると、そのアカウントがルールにアタッチされたプロビジョニング グループに追加され、使用できるようセットアップされます。
-
IdP は、ACS ペイロードでこれらの要求を渡すように構成する必要があります。
-
IdP で設定された属性名が、組織管理者ポータルの属性マッピング設定と一致していることを確認します。
{
"displayname": "John Doe",
"fname": "John",
"lname": "Doe",
"jobtitle": "Hardware Engineer",
"dpt": "Engineering",
"city": "Phoenix"
}
{
"displayname": "John Doe",
"fname": "John",
"lname": "Doe",
"jobtitle": "Hardware Engineer",
"dpt": "Engineering",
"city": "Phoenix"
}
この組織のユーザーが SAML ディレクトリ連携を介してログインすると、ユーザー オブジェクトが更新され、この設定が反映されます。
{
"Display Name": "John Doe",
"First Name": "John",
"Last Name": "Doe",
"Job Title": "Hardware Engineer",
"Department": "Engineering",
"City": "Phoenix"
}
{
"Display Name": "John Doe",
"First Name": "John",
"Last Name": "Doe",
"Job Title": "Hardware Engineer",
"Department": "Engineering",
"City": "Phoenix"
}
権限を設定したら、既存のすべてのユーザーに、UiPath アカウントからサインアウトし、SAML SSO を使用してサインインしてもらうことをお勧めします。
SAML SSO を使用して Studio と Assistant にサインインするには、Assistant を以下のように設定する必要があります。
この手順は、連携を有効化したときに、以前に Orchestrator を使用したことがないため、Orchestrator でローカル アカウントが設定されていない新しいユーザーにのみ必要となります。
新しいユーザーは、(外部 IdP で使用された) メール アドレスによって Orchestrator グループに追加できます。ユーザーがグループに割り当てられるか、ユーザーがサインインすると、Orchestrator のすべてのサービスでユーザーを検索してロールを割り当てられるようになります。
- 既知の制限事項
- 前提条件
- 手順 1: 非アクティブなユーザー アカウントをクリーンアップする
- 手順 2: SAML 連携を設定する
- 手順 2.1: SAML サービス プロバイダーの詳細情報を取得する
- 手順 2.2: ID プロバイダーを設定する
- 手順 2.3: Orchestrator を構成する
- 手順 2.4: 連携が実行中であることを確認する
- 手順 2.5.プロビジョニング ルールを設定する (任意)
- SAML 属性マッピング
- 手順 3: ユーザーを SAML SSO に移行する
- ステップ4.権限とロボットを設定する
- 手順 5: ローカル ユーザー アカウントの使用を中止する (任意)
- ローカル アカウントの使用中止に関する考慮事項