オブジェクトやプロセスから変更が発生する可能性がある変数を環境変数、認証情報として切り離す
ベストプラクティスにも、データステージに値をハードコーディングしないというものがあります。
特にログインIDやPWについては切り離しておきたいもの。
PWポリシーによって変更都度、プロセスのデータステージを変えて監査ログを残すのもなぁ。
https://ciprogram.jp/rpa/set_obj_param/
ところがどっこい。
Blue Prismでは環境変数として定義する仕組みが提供されていて、
それはプロセス、オブジェクトそれぞれで設定できます。
▼プロセス、オブジェクトそれぞれに環境変数項目があります
また、センシティブな情報はマスクもしてくれます。
これでプログラムにID、PWがハードコーディングされているような、内部統制的にやばめな状況を脱することができます。
プロセスの環境変数とオブジェクトの環境変数としては、こんな切り分けでどうでしょう。
プロセス側:ユーザーが使うもの:保存先ファイル
オブジェクト側:システム部門がつかうもの:IP、ポート、プロセス、システム用フォルダなどなど
ほかにはこんなもの環境変数にしてもいいかもしれません。
- URL
- データ定義しているパス
- ファイル出力先パス
- 電子メールの設定情報(SMTPサーバのIPやポートなど)
- アプリごとのタイムアウト値
- アプリのログイン環境名
- アラートメール送信先
- その他修正が予想される変数
https://ciprogram.jp/rpa/a-room-without-books-is-like-a-body-without-a-soul/
さらに、Blue Prismのすばらしいところでもある、認証情報。
認証情報はBluePrismの内部VBOから参照できるセキュアな管理ができる変数のセットです。
そこには、認証情報名に紐づくユーザーID、パスワード、終了日時、追加のパラメータがセットできます。
終了日時が正常にセットされていれば、ログインを試行する前に、パスワードの有効期限切れではないことがチェックできますな。
さらに、どのランタイムリソースのどのユーザーのどのプロセスでその認証情報を使わせるという設定ができます。
WinActorの変数内にべた書きやExcelパラメータファイルにIDパスワードを保存という運用をしなくていいわけです。
てかそんな運用いろいろアウトだろという感じですが。
実際に設定してみる
プロセスの環境変数を設定する項目を選択して環境変数を追加してみます。
▼様々なタイプがあります。パスワードを選ぶとマスクされます。
▼こんな感じで、環境変数が登録できます。
ここまでが環境変数側での設定方法。
次に、認証情報の設定方法。
▼システム - セキュリティ - 認証情報を開く
▼ユーザ名、パスワードと追加プロパティの設定ができます。
▼認証情報を許可する、ロール、プロセス、リソースが指定できます。堅牢ですなぁ。
あとは認証情報から取得してあげればいいだけ。
終わりに
これでまた一歩、再利用性が高いオブジェクト、プロセス作成に近づきましたな。