所有者のいないアプリの所有者変更を行う

※ この記事は、[Microsoft Power Automate Advent Calendar 2024](https://qiita.com/advent-calendar/2024/powerautomate) 12月3日 担当分の記事です。

# Power Platform Adivisorで変更する
Power Platform管理センターの「アドバイザー」では、テナントの正常性に影響するかもしれないさまざまなレコメンデーションが表示されます。

[Power Platform Advisor を使用する - Power Platform | Microsoft Learn](https://learn.microsoft.com/ja-jp/power-platform/admin/power-platform-advisor?WT.mc_id=DX-MVP-5005072)

:::note info
「アドバイザー」は、マネージド環境の機能であることに注意が必要です。
また、レコメンデーションは、「テナントレベルの分析」をオンにしたときにだけ利用できます。
:::
所有者のいないアプリを検知した場合は、「所有者を正しく割り当ててビジネス継続性リスクを軽減する」といったレコメンデーションが表示されます。
![OwnerlessApps_01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1382111/da245df7-afc4-1a91-eac5-e794ecfec3fd.png)

レコメンデーションをクリックし、該当のアプリを選択すると、どのような操作をするか選択できます。
所有者がいないアプリのレコメンデーションの場合、以下の操作が可能です。
* 新しい所有者に割り当てる
* 共同所有者を所有者に昇格する
* 削除
* Teamsで共有
![OwnerlessApps_02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1382111/60fb3079-8bef-cd2d-7d1d-61ce343681ec.png)

所有者を変更するには、「新しい所有者に割り当てる」を選択すると、下部に「所有者を選択」という領域が表示されるので、設定する所有者を入力し、[アプリを割り当てる]をクリックします。

![OwnerlessApps_04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1382111/8c8c5192-39be-5222-3093-a86a9ba5b97d.png)

操作を行うと「アクション履歴」として、表示されます。
![OwnerlessApps_05.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1382111/99767136-26a4-ccec-4b6a-5534e1c5bea9.png)


Power Platform管理センターからの操作ですとと、アプリをひとつずつ選択する必要があり、結構な手間がかかることがお分かりになるのではないかと思います。

# クラウドフローで変更する

フローの全体像は以下のようなイメージです。

![OwnerlessApps_07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1382111/b4d9d86c-fefa-5718-cde8-77d4f828b5cc.png)

## 1. 所有者のいないアプリの一覧を取得する
「Power Platform for Adminis V2」コネクタを利用すると、Power Platform管理センターの「アドバイザー」に表示されるレコメンデーションを取得することが可能です。

「Get recommendation resources」アクションを利用することで一覧を取得可能です。
このアクションを利用することで、所有者のいないアプリの一覧を取得できます。

![OwnerlessApps_03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1382111/05a684c3-8662-fea9-c7bd-9685480b228c.png)

:::note warn
「Get recommendation resources」アクションは、2024/12/2現在で、プレビュー機能ですのでご注意ください。
:::

取得した結果を入力にして、データ操作の「CSV テーブルの作成」アクションを利用することで、CSVファイルとして、所有者のいないアプリ一覧を出力することも可能です。

## 2. アプリの所有者を変更する
アプリの所有者を変更するには、「Power Apps for Admins」コネクタの「アプリ所有者を設定する」アクションを使います。

![OwnerlessApps_06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1382111/f6a19cc2-e579-a020-a663-1dacb5802c5f.png)

各パラメータには以下を設定します。
| パラメータ | 設定値 |
|:----------|:---------|
| 環境名 |「Get recommendation resources」アクションの「Environment ID」  |
| PowerApp名 |「Get recommendation resources」アクションの「Resource ID」 |
| 新しい PowerApp 所有者  | 「Office 365 ユーザー」コネクタの「ユーザー プロフィールの取得 (V2)」アクションで取得した「ID」|

# さいごに
これまで、所有者のいないアプリを検知する方法は、「CoE スターターキット」を利用することで検知可能でした。
しかし、CoE スターターキットの導入・活用は、未サポートであることも伴い、ハードルが高いと思います。

いまなら、マネージド環境の機能を使えば、所有者のいないアプリを検知することも簡単なことがお分かりになったかなと思います。

このほかにもマネージド環境の機能はたくさんあります。

先日、開催されたIgniteでも、Power Platformの管理機能は、「Managed Governance」「Managed Security」「Managed Operations」に分類される発表がありました。
そのほとんどの機能が、マネージド環境の機能です。
このことからも、今後、Power Platformの管理においては、マネージド環境の機能で提供されることがほとんどであると推測されます。
「より多くの制御」を、「より少ない労力」で、「より多くのインサイト」得て、管理するためにも、マネージド環境の機能を賢く活用することが、重要になってくると思います。

[Microsoft Power Platform Center of Excellence キット - Power Platform | Microsoft Learn](https://learn.microsoft.com/ja-jp/power-platform/guidance/coe/starter-kit?WT.mc_id=DX-MVP-5005072)

[マネージド環境の概要 - Power Platform | Microsoft Learn](https://learn.microsoft.com/ja-jp/power-platform/admin/managed-environment-overview?WT.mc_id=DX-MVP-5005072)