【UiPath】Automation Opsを使って管理統制を強化する

# はじめに
RPAは一般的に製品の特長上、エンドユーザ開発に向いていて、スモールスタートからフットワーク軽く開発していくことが最も早く効果を上げる方法なのですが、一方、運用や管理統制といった面は後追いで対応されるケースが散見されます。
RPAを全社横断的に活用していこうとすると、管理統制面で何らかの制約を課す必要が少なからず出てきます。
UiPathにはAutomation Opsというクラウドでポリシーを管理するサービスがあるので、今回はこれを使って、StudioまたはRobotを管理していきます。

# 使うもの
クラウド環境は2022年5月時点のもの
* UiPath Automation Cloud（Automation Ops）Enterprise版
* UiPath Studio 2021.10.5

# ポリシーを作成する
まず最初にポリシーを定義します。
Automation Opsの「製品ポリシーを追加」をクリックします。
![ポリシー作成1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/89445/b31d1049-ea65-f8af-17b0-587ceca7aea2.png)

ポリシーは製品個々で設定します。
![ポリシー作成2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/89445/5f5636dd-f723-a550-5606-9d38cb2e4848.png)

「有効期限」は、Studio/Robotなどのクライアント製品とAutomation Opsが切断された場合の猶予期間です。猶予期間内であればオフラインでもポリシーを適用することができます。
「優先度」は、重複・相反するルールが存在した場合の優先順位となります。数字が小さいポリシーの方が優先されます。
![ポリシー作成3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/89445/fea33bcc-ad1d-58cc-5a47-a83233b8b2d4.png)

今回は4つのルールを設定しようと思います。
1. パブリッシュの前にワークフローアナライザーを強制実行させる
1. 新規プロジェクトはモダンデザインとする（ユーザでの変更禁止）
1. アクティビティフィードの追加禁止
1. ワークフローアナライザーのルール編集禁止

**1. パブリッシュの前にワークフローアナライザーを強制実行させる**
ワークフローアナライザーによるセルフレビューを必須にして最低限の品質を担保したいので、ルールを加えます。
![ポリシー作成4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/89445/8f1c6cf8-c8b6-5549-a9c3-65fd0aaf7451.png)

**2. 新規プロジェクトはモダンデザインとする（ユーザでの変更禁止）**
いつまで経ってもモダンデザインが普及しないのは困るので、ルールを加えます。
1.と同様に「デザイン」タブの中にあります。
![ポリシー作成5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/89445/717e6fe8-9cc3-525c-43b7-1fdcc7eff206.png)

**3. アクティビティフィードの追加禁止**
出所不明なアクティビティをむやみに使われるのは困るので、ルールを加えます。
![ポリシー作成6.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/89445/1a6a725c-a23b-6457-c41d-46fb9c410028.png)

**4. ワークフローアナライザーのルール編集禁止**
ワークフローアナライザーのルールは管理者側で統一したいので、ルールを加えます。
![ポリシー作成7.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/89445/bb9ff31d-ee2a-36f1-1009-a4a195bddd2c.png)

# ポリシーをデプロイする
ポリシーを作成したらデプロイします。ここで言うデプロイとは、ポリシーを適用する範囲を決め、ルールを有効化する作業を指します。
ポリシー適用範囲は、テナント、グループ、ユーザーから選択できます。
グループ・ユーザーを問わず環境一律でポリシーを適用したい場合は、テナントを選択します。
![デプロイ1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/89445/f5e4aa84-0040-13d9-6a4f-c08c7a87263f.png)

さらにライセンス毎に適用するポリシーを選択できるので、今回は「Automation Developer」を選択します。
![デプロイ2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/89445/9076e7d4-3517-0d94-4f22-c874c41d61ac.png)

# 試してみる
ポリシーをデプロイしたら、早速Studioを起動させて、ポリシーが効いているか確認します。

**1. パブリッシュの前にワークフローアナライザーを強制実行させる**
パブリッシュをすると自動的にワークフローアナライザーが起動し、ソースをチェックしてくれるようになりました。これでエラーを解消しない限りパブリッシュできなくなります。
![試す1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/89445/8ddab16b-7704-900c-4f95-5fc1be78630d.png)

**2. 新規プロジェクトはモダンデザインとする（ユーザでの変更禁止）**
設定の「新しいプロジェクトでモダンを使用」が「はい」のままで非活性になったので、強制的にモダンを使わせることができます。
※プロジェクト作成後、プロジェクト設定でクラシックに変更できるので完璧じゃないですが、、、モヤモヤする
![試す2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/89445/6663b426-6eb9-a36c-da88-b29acece4f28.png)

**3. アクティビティフィードの追加禁止**
パッケージソースの追加と変更ができなくなりました。
![試す3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/89445/29b65d9a-4d0a-ec22-3706-da8d3a80bd40.png)

**4. ワークフローアナライザーのルール編集禁止**
ルールの編集や有効/無効の切り替えができなくなりました。
![試す4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/89445/dd77d42c-9f8b-9fec-536a-bd2dcffc7f86.png)

# おわりに
Automation Opsを活用するとクライアントのルールを管理者側である程度コントロールできることが分かりました。
ただし、何でもかんでも制約を課せばいいって話ではないです。重たすぎるルールはRPAの効果を萎ませてしまうので、自由な推進と管理統制のバランスを意識しながら、必要に応じて即座にルールを改訂するなど柔軟なポリシーの運用が求められます。