9
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

UiPath製品群をプロキシ環境で使用するための環境設定手順 2022.4版

Posted at

こんにちは。UiPath Friendsコミュニティ運営メンバの @masatomix です。
この記事はUiPathブログ発信チャレンジ2022サマーの5日目の記事です。

昨日は shuyさんの記事、明日はよしやんやんさんの記事です。


今回は、下記のつぶやきについて。

ってことで、このとき調べたことをまとめておきます。

ちなみにむかしみたいなカオスとは下記のはなしです。
UiPath 2019くらいのときに同じコトをまとめたことがありますが、クシャクシャでした、、。

2019年に書いた記事は、Community版とEnterprise版で分けて書いたけど、いまの仕組みだとそこは重要じゃなさそうで、ユーザモード/サービスモードどちらでインストールしたか、で分けて考えます。

さてさてまずは結論。

TL;DR

クラウド版のOrchestrator(以下OC) と、PC上のUiPathは2022.4.3 にて確認。

  • 認証ナシプロキシ
    • ユーザモード:○
      • インターネットオプションの設定を使って越えられる
    • サービスモード:○
      • %ProgramFiles%\UiPath\Studio\uipath.config へ設定を追記することで、越えられる。
  • 認証アリプロキシ
    • ユーザモード:×
      • プロキシを越えることができない
    • サービスモード:△
      • Unattended Robot(以下UR)は、先の uipath.config への追記で、まあまあ実用的に使えそう
      • Attended Robot(以下AR)は、実用的に使うのは難しそう1
        • トラブルシューティングセッションを使えば一時的に利用できるが。

まとめると https://docs.uipath.com/robot/lang-ja/v2022.4/docs/redirecting-robots-through-a-proxy-server は正しい :-)
ってコトがわかりました。

さて個別に説明していきます。

その前に確認環境

稼働確認のために構築したテスト環境はこんな感じ。UiPathが動いてるPCは直接Internetからは遮断されていて、プロキシ経由の通信でないとダメな設定にしてみました。プロキシサーバは http://192.168.10.200:3128 で立ててあって、場合によって認証アリナシを切り替えてテストしました。

p004

一応ですが、通常Webブラウザでネットにアクセスするときは、

インターネットオプション >> 接続 >> LANの設定

ココで設定をすることで、プロキシ経由のアクセスができるようになります。

p003

まずは認証ナシプロキシ

ユーザモード

ユーザモードでインストールしたStudio(以下ST)/AR/URはいずれも、OSのインターネットオプションの設定を参照しているようなので、ブラウザでネット接続できれば問題ありません。

あ、ちなみに「ユーザモードでインストールしたUiPath」というのはインストーラで下記の2パタンの設定で入れたヤツのこと。

カスタム >> 自分にのみインストール >> Automation Developer
p001

カスタム >> 全てのユーザにインストール >> Automation Developer >> インストールの種類は「ユーザーモード」
p002

さてさて疎通確認は、だいたい以下を行いました。

  • 対話型サインイン/Client Credentialsのアクティベーション
  • STのパブリッシュ
  • nupkgのダウンロード
  • タスクトレイからの実行(AR的な実行)
  • Web画面からのジョブ実行(UR的な実行)

最初だけ、エビデンスを載っけておきます。

エビデンス

対話型サインインでアクティベーション、AR的な実行はOK
p005

nupkgダウンロード もOK
p006

StudioからのPublishもOK
p007

Studioでライブラリをダウンロードもできてる
p008

Client CredentialsによるアクティベーションOK
p009

UR的な実行OK.
p010

プロキシなし、ユーザモードは以上です。

サービスモード

サービスモードの場合は、先ほどのインターネットオプションは参照しないみたいで、個別の設定ファイルuipath.configの設定を参照していました。
というわけで、%ProgramFiles%\UiPath\Studio\uipath.config にプロキシの設定を書いてUiPathサービスの再起動を行いましたが、もろもろOKでした。

<webProxySettings >
    <add key="ProxyAddress" value="http://192.168.10.200:3128" />
    <add key="BypassLocalAddresses" value="True" />
    <add key="BypassList" value="server\.domain\.local$;www.google.com;192\.168\.\d{1,3}\.\d{1,3}" />
</webProxySettings >

いちおうですが、UiPathサービスの再起動というのはコレのことです。

p11

また、先のリンクを見てみると、よく会社で使われるプロキシを自動設定するファイル(pacファイル)の指定も可能なようですね。

プロキシなし、サービスモードは以上です。

つづいて認証アリプロキシ

ユーザモード

先のリンクを見る限り、ユーザモードの場合は認証アリプロキシを越えられないとのこと。残念。
UiPath2019系の時はいけるパタンもあったので、もうすこし深追いすると越えられるのかもしれませんが、公式が無理っていってるんで、いったん調査はここまで。

サービスモード

先のリンクを見る限り、サービスモードの場合は先ほどの%ProgramFiles%\UiPath\Studio\uipath.config に認証プロキシの設定を書けば越えられるとのことで、実際可能でした(ココもUiPathサービスの再起動が必要です)。

認証プロキシが user01/user01 というID/Passを通す場合の例:

<webProxySettings >
    <add key="ProxyAddress" value="http://192.168.10.200:3128" />
    <add key="UserName" value="user01" />
    <add key="Password" value="user01" />
    <add key="Domain" value="" />
</webProxySettings >

ただし公式の説明を見ると

Robot Executor は基本認証メソッドを使用するプロキシ構成をサポートしていません。

とのこと。Robot Executorの範囲がよくわからなかったのですが、

  • マシンキーによるアクティベーション
  • nupkgのダウンロード
  • WEBからのジョブ起動

などはOKでした。 ようするにUR的には実用的に使えそう
ただ、タスクトレイからの実行つまりAR的につかいたい場合に必要な「対話型サインイン」ができないようです。

もうすこし詳しく書くと、サービスモードのUiPathはまずはマシンキー接続を行いますが、これだけだとユーザ(ロボ)特定ができずにライセンスが取得ができない、いわゆるアイコンがオレンジ状態となります。したがって、タスクトレイから実行するには追加でサインインが必要なのですが、やってみると下記の通りのエラーが。

エラーメッセージに407とかでてますね。プロキシサーバが返してくる「HTTPレスポンスのステータスコード407(Proxy Authentication Required)」を処理できないようです2。したがってタスクトレイからの実行(ARとして使う)は不可能に見えますね。Studioもたぶん同様かとおもいます。

トラブルシューティングセッションってのを設定すれば利用可能だが

まとめにもかきましたが、上記の状況で対話型サインインができない問題を回避する方法として「トラブルシューティングセッション」というのがあります。トラブルシューティングセッションとは、いわゆるかつてのロボット特定ロジックで、コレを設定するとライセンス取得のためのロボット探索を、ログインしているWindowsアカウントで行ってくれるようになります。

なので、認証プロキシ上でARとして利用するには、サービスモードでかつトラブルシューティングセッションを使用すれば、可能です

さてトラブルシューティングセッションの設定方法ですが

テナント >> 監視 >> セクション:無人セッション >> 該当ロボットの右部メニュー >> 「トラブルシューティングセッションを設定」

で表示されるダイアログで、設定することが可能です。下記のトグルするボタンを「Enabled」にしてください。

これで上記のキャプチャのようにライセンスを取得することができ、AR的な利用が可能となります。
ただトラブルシューティングセッションは、タイムアウト時間を設定するなどあくまで緊急措置(?) ぽい位置づけで、これを日々利用する前提はちょっと無理がありそうです。

というわけで、認証アリプロキシ環境では、やっぱりAR利用は難しいってことになりそうです。

まとめ

最初に書いたモノのの再掲ですが、

  • 認証ナシプロキシ
    • ユーザモード:○
      • インターネットオプションの設定を使って越えられる
    • サービスモード:○
      • %ProgramFiles%\UiPath\Studio\uipath.config へ設定を追記することで、越えられる。
  • 認証アリプロキシ
    • ユーザモード:×
      • プロキシを越えることができない
    • サービスモード:△
      • Unattended Robot(以下UR)は、先の uipath.config への追記で、まあまあ実用的に使えそう
      • Attended Robot(以下AR)は、トラブルシューティングセッションを使えばうまくいくが、定常的に使うモノではなさそう。

ちなみにプロキシの設定ですが「設定を書き換えたのに反映されない」ケースが何度かありました。インターネットオプションでプロキシの設定をOFFにしたのに相変わらずプロキシに行っちゃうみたいな3。ヘンだなーと思いつつPCを再起動したら正しくなったりしたので、場合によってはPCを再起動してみてください。

以上、お疲れさまでした!

関連リンク

UiPathの2019版までの仕様はこちら:

  1. マシンキー + 対話型サインインができない(後述)ので、Attended Robot(以下AR)は実用的に使うのは難しそう。

  2. 表示されている内容を見ると、OAuthの openid-configuration (OpenID Connect関連のURLを公開しているページの情報)の取得で407 Proxy Authentication Required 。おしいっ。

  3. もしかしたらUiPathによらずOS全体でかもしれません。

9
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?