【UiPath】ログイン情報(ユーザーID/パスワード)の管理・取得方法4選

RPA(UiPath)
記事内に広告が含まれています。

UiPathでログイン処理をする機会はすごく多いです。

UiPathにはログイン情報を安全に入力できる機能があるので安心なのですが、
難しいのは、ログイン情報をどう管理するか、です。

考えられる方法は4つあります。

1.Orchestrator(オーケストレータ)のAsset(アセット)で管理
2.Windows資格情報で管理
3.入力ダイアログで入力してもらう
4.ファイルで管理する
4つの方法の内どれを選べば良いのかは、
機密情報の運用ルール・UiPathの環境を元に考える必要があります。
では、それぞれ詳しく見ていきましょう!

Orchestrator(オーケストレータ)のAsset(アセット)で管理する方法

Orchestrator(オーケストレータ)導入ている場合、
まずはこの方法がオススメされています。

UnAttended(無人実行)ロボットでは、ほぼこの方法かと。

Orchestratorには、
Asset(アセット)というログイン情報などを暗号化して保管する機能があるので、
それを利用します。

OrchestratorのAssetを取得

Assetの情報を取得するには、
「資格情報を取得」アクティビティを使います。

Assetから取得した値は、
・ユーザーID:String型
パスワード:SecureString型
であることに注目です。

SecureString型とは、機密文字列を扱う型の事です。
パスワードを入力すると”*”と表示されることありますよね、そのことです。

UipathStudioでもSecureString型の文字は”*”で表示されるので、
機密性は保たれています。

Windows資格情報で管理する方法

次は「Windows資格情報」で管理する方法です。

「Windows資格情報」はWindowsに標準で備わっている機能です。

Orchestratorを導入していない場合やAttended(有人実行)ロボットでは、
この方法がオススメです。

1点だけ注意がありまして、
もし同じロボットを複数の端末で動かす場合、
各PCに「Windows資格情報」を登録する必要があります。
他のPCの「Windows資格情報」は取得できないので、気をつけてください。

Windows資格情報を取得

UiPath.Credentials.Activitiesパッケージを追加

UipathでWindows資格情報を取得するには、
「Get Secure Credentials」というアクティビティを使うのですが、
そのアクティビティを検索しても出てこない場合は、
「UiPath.Credentials.Activities」パッケージをインストールする必要があります。

「Get Secure Credentials」アクティビティで取得

パッケージをインストールできたら、
「Get Secure Credentials」アクティビティを使います。

ここでも、パスワードはSecureString型です。

入力ダイアログで入力してもらう方法

次は、ロボットを起動するときに入力ダイアログを表示させて、
ユーザーに、IDとパスワードを入力してもらう方法です。

Attended(有人実行)ロボットを複数のPCで動かす場合、PCごとにログイン情報が違うことがあります。
その場合は、このやり方がオススメです。

人の入力が必要なので、UnAttended(無人実行)ロボットでは使えません。

入力ダイアログを表示する

「入力ダイアログ」アクティビティを使う場合

「入力ダイアログ」というアクティビティを使えば、
簡単にダイアログを表示することができるのできます。
ただ、このアクティビティは1項目しか入力ができないのが欠点。

1項目しか入力できないので、同じアクティビティを2回使って、
入力ダイアログを2回表示させるないといけません。

これを実行すると、次のような画面が順番に表示されます。

1つ注意が必要で、上の方の画に書いたように、
このアクティビティでは、
パスワードがSecureString型ではなくString型でしか取れません。

なので、これをログイン画面のパスワード欄に入力する前に、
SecureString型に変換してあげる必要があります。

と言っても簡単です。
この後に、次のような代入アクティビティを追加するだけです。

このSecureString型パスワードを、ログイン画面に入力すればOKです。

この方法は、
ユーザーが2回もOKボタンを押さないといけないというデメリットはあるものの、
とりあえず簡単に開発できるというメリットもあります。

しかし、もしもHTMLが多少でも分かるという場合は、
次のようにHTMLで入力画面を作ってしまった方が良いかもしれません。

HTMLで入力画面を作る場合

HTMLを使えば、自由に入力画面を作ることができます。
ユーザーIDとパスワードを同時に入力できるようにしておけば、
ユーザーも楽です。

ここではHTMLの書き方は割愛しますが、
HTMLが完成したら、それを「カスタム入力」アクティビティで呼び出すだけです。

HTMLからは、
例えばカンマ区切りのString配列を受け取るようにしておけば楽です。
例)ログイン情報=ユーザーID,パスワード

カンマで区切られた配列の第一要素をユーザーIDに入力、
第二要素をパスワードに入力、
とするだけです。

ファイルで管理する方法

最後に紹介するのは、エクセルなどのファイルに、
ログイン情報をべた書きして管理する方法です。

これは、
UnAttended(無人実行)ロボットなのにパスワードが頻繁に変わるような場合に有効です。

そのファイルを特定のユーザーしか見れないようにしておくなど、
何かしら工夫しておけば良いかと思います。

例えばエクセルファイルで管理する場合は、こんな内容になるかと。

これを「セルを読み込み」または「範囲を読み込み」アクティビティで取得するだけです。

ただし、先ほどと同じく、パスワードをSecureString型に変換することだけはお忘れなく!

まとめ

以上、ログイン情報の管理・取得方法を4つ紹介しましたが、
いかがだったでしょうか。

ユーザーの環境・運用方法を考え、どの方法にするか検討するようにしてください。

サイト運営者
もぐらっとん

シスエムエンジニア歴15年。フリーランスになって2年。家庭と両立するため在宅で仕事をしています。
RPA(Uipath)開発・運用と、ブログ運営(Wordpress)をしています。
※当ブログとは別に、主婦ブログも運営しています
https://syufumesen.com/

もぐらっとんをフォローする
RPA(UiPath)
シェアする
もぐらっとんをフォローする
もぐらっとんWEB
タイトルとURLをコピーしました