OrchestratorへのHTTP要求時の権限設定について

こんにちは。いつも勉強させて頂いております。

先日質問させていただいた下記の内容を参考に、

Orchestratorに登録したユーザのメールアドレスからユーザIDを取得するワークフローを作成しようと思っています。

まずは第一歩として添付のような、とりあえずOrchestratorにHTTP要求を投げてレスポンスを格納するシナリオを作成して実行してみたところ、レスポンスのJSON配列をデシリアライズするところで、オブジェクト参照がオブジェクト インスタンスに設定されていません。のエラーとなりました。

デバッグで変数内容を確認してみたところ、レスポンスのJSON文字列の時点で以下のようになっており、最終的に表示されたエラーはこの中にValueが存在しないことを示しているのだと思っています。

  "message": "{\"message\":\"You are not authorized!\",\"errorCode\":0,\"result\":null,\"targetUrl\":null,\"success\":false,\"error\":{\"code\":0,\"message\":\"You are not authorized!\",\"details\":\"You are not allowed to perform this operation.\",\"validationErrors\":null},\"unAuthorizedRequest\":false,\"__abp\":true}",
  "level": "Information",
  "logType": "User",
  "timeStamp": "15:00:08",
  "processVersion": "0.9.3",
  "jobId": "2d6febf0-c2c4-4f3b-b14b-0bb1aa403c18",
  "robotName": "開発ロボット",
  "machineId": 4,
  "organizationUnitId": 1
}

レスポンスの内容から推測するに、OrchestratorにHTTP要求を投げるにあたって必要な権限をロボット「開発ロボット」に持たせられていない状態なのかなと思っているのですが、
ロボットに対する権限設定を行うページはOrchestrator上のどこかにあるものでしょうか?

ご存知の方がいらっしゃいましたらご教示頂きたく、
あるいは何か根本的に理解が間違っていればご指摘頂ければ幸いです。

よろしくお願いいたします。OrchestratorRequestTest.xaml (6.6 KB)

こんにちは。前回のポストに返信した者です

おっしゃるとおり、権限が足りなそうですね。
結論を先に言うとRobotにも「ユーザを参照する」などの権限の制御が可能なので、それらを設定する必要がありそうです

UiPath Orchestrator(以下OC) 上にログインするユーザは「いくつかの権限を持たせたRole」を作成し、そのRoleをユーザに紐付けるやり方で、ユーザに権限を付与します。
そして実はRobotたちもOC上ではユーザとして管理されていて、Robotたちはデフォルトで「RobotというRole」が紐付いています。

したがってOC上で「Robot Role」に必要な権限を追加すれば、ワークフロー上のロボットに権限が付与されるってことですね。

設定画面は、OCにログイン >> ユーザ と遷移すると画面の上部に「ロール」があると思います。
そこを開くと
「Administrator」と「Robot」という二つのRoleが一覧されると思いますので、Robot >> 編集 で必要な権限(CRUD)を付与してあげてください。

タスクとユーザに一定の権限(タスクはアサインで更新するのでRとU、ユーザは参照だけなのでR かな) を付与すればよいとおもいます。

ちなみにユーザ一覧はデフォルトで「Robotのユーザ」は非表示となってますが、一覧の上部のフィルタリングで タイプ: ローカルユーザ → ロボット にすると「Robotのユーザ」が表示されます。
(Robot Roleが付与されているのも目視確認できます)

よろしくお願いします。

2 Likes

ご回答ありがとうございます。
ちょっと割り込み業務が入ってしまい直近で確認できないのですが、
落ち着き次第試してみて解決チェックを入れさせて頂きたいと思います。

取り急ぎご報告まで。

1 Like

返信遅くなりまして失礼いたしました。

ユーザー→タイプ:ロボットを選択することでロボットに対して権限を割り当てられたのですね。
無事ユーザーIDを取得することができました。
(また、後続のタスク割り当てについてもうまく動かせました。
割り当てに際してはタスク割り当てのC、タスクのUの権限が必要なようですね)

あらためてありがとうございました。

1 Like

解決したようでよかったです。
権限は微妙に違いましたか :slight_smile:
しつれいしました

1 Like

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.