QESブログ

  1. システムとオフィスの融合|株式会社QES
  2. media
  3. マイクロソフトソリューション Power Apps モデル駆動型アプリ Power Platform Power Automate
  4. モデル駆動型アプリ概説 ⑥アプリの共有

モデル駆動型アプリ概説 ⑥アプリの共有

モデル駆動型アプリ概説



こんにちは。システムソリューション営業本部の吾妻です。

モデル駆動型アプリ概説」連載の第6回目として、前回までに作成したモデル駆動型アプリや、その中身のDataverseレコードを、組織内の他のユーザーに使ってもらうための設定手順についてご紹介していきます。




モデル駆動型アプリの作成手順(復習)

モデル駆動型アプリを作成するための手順として、以下のものがありました。今回は「アプリの共有」のために、セキュリティロールをユーザーに割り当てたり、アプリURLを配布したりといった設定を行っていきます。

 手順   内容 
 ①ビジネスデータのモデル化 
 ②ビジネスプロセスの定義 
 ③モデル駆動型アプリの作成 
 ④セキュリティロールの構成 
 ⑤アプリの共有   アプリをユーザーに配布する 
 ⑥応用的なカスタマイズ  



前提条件

今回ご紹介する手順を実施するために必要なライセンスやセキュリティロールといった条件について、役割ごとにまとめます。

管理者(アプリを共有する人を管理する人)

テナント内に、Microsoft 365の「役割」Power Platform管理者またはグローバル管理者となっているユーザーが、少なくとも1人存在する必要があります。
Microsoft 365側で、Power Platform管理者やグローバル管理者の役割が割り当てられているユーザーには、Power Platform環境側では、システム管理者のセキュリティロールが割り当てられます。

共有者(アプリを共有する人)

管理者は、共有者に対して、システム管理者ロールまたはシステムカスタマイザロールを割り当てる必要があります。
共有者は、カスタムテーブルに対するアクセス許可を設定したセキュリティロールを選択/作成して、利用者に割り当てる必要があります。

利用者(アプリを共有してもらう人)

利用者は、Power Platform環境のユーザーとして追加されていて、Datavereを利用できるライセンスが割り当てられている必要があります。



共有手順

セキュリティロール設定

まず、利用者に対して割り当てるためのセキュリティロールを作成します。標準で用意されている「アプリオープナー」セキュリティロールを複製して、モデル駆動型アプリ内で使用しているカスタムテーブルに対してアクセスを許可するように特権を設定します。アプリの利用者が操作する対象のレコードと操作内容の要件に応じて、設定しなければならない特権やアクセスレベルはカスタムテーブルごとに異なります。
セキュリティロールの設定は、特にリレーションされたカスタムテーブルが増えた場合やユーザーの部署・役割が増えた場合には、率直に言ってかなり複雑で面倒になるので、現行の業務フローがExcelファイルやSharePointリストへの情報入力・修正で運用されていて権限管理が緩いような場合は、はじめからセキュリティロールをきっちり設定しようとせず、まずは全員に強めの許可を付与しておいてみることもできます。現行運用と比べて、Dataverseだとレコードの監査が行える分セキュリティのレベルは向上するかと思います(推奨はしません)。
md60.png

作成したセキュリティロールは、ソリューションに追加しておきます。
md61.png

次に、モデル駆動型アプリの共有画面を開いて、見出し「アプリケーション」にある対象のモデル駆動型アプリに対して、先ほど作成したセキュリティロールを追加して、いったん共有ボタンをクリックします。
md62.png

すると、作成したセキュリティロールをユーザーに対して指定できるようになるので、テキストボックスに利用者の名前やメールアドレスを入力・選択した後、セキュリティロールを指定し、共有ボタンを再度クリックします。
md63.png

「モデル駆動型アプリの共有に成功しました」と緑色の通知が表示されれば完了です。


アプリURL

続いて、モデル駆動型アプリを開くためのURLを取得します。利用者には、メーカーポータルのアプリ一覧からではなく、このURLからモデル駆動型アプリにアクセスしてもらうことになります(アプリ一覧からアクセスさせたいのであれば、利用者に対して、システム管理者、環境作成者、システム カスタマイザーといったセキュリティロールを割り当てる必要があります)。

モデル駆動型アプリのクラシックな編集画面(アプリデザイナー)を開くと、右側のパネルに「統一インターフェイスのURL」が表示されているので、コピーします。
md64.png

コピーしたURLへのリンクを社内ポータルサイトに配置したり、TeamsメッセージでURLを送付することで、利用者がモデル駆動型アプリにアクセスできるようにします。

念のため、利用者としてアクセスして、作成したセキュリティロールの定義通りのアクセスレベルになっているか、モデル駆動型アプリを再生して、フォーム(詳細画面)を開き、「アクセスの確認」メニューから確認しておきます。
md65.png

このように、他のユーザーのレコードを削除できないようなアクセスレベルをセキュリティロールに設定していれば、モデル駆動型アプリで利用者以外が作成したレコードを削除しようとすると、エラーが表示されます。
md66.png



まとめ

今回は、Power Platform環境やDataverseテーブル、モデル駆動型アプリを他のユーザーに共有する際の考え方について、簡単にご紹介しました。次回の記事では、モデル駆動型アプリをさらにカスタマイズするために用意された、応用的な機能について取り上げたいと思います。.NET(C#)による開発も入ってくるかと思うので、難易度は若干高くなりそうですが、具体例を交えてなるべく分かりやすくご紹介できればと考えています。

QESの Power Platform サポート&アプリカタログサービス は、キャンバスアプリやモデル駆動型アプリ、Power Pagesといった各種Power Platform製品群の導入、環境構築、弊社で開発したカタログアプリのご提供などを行うサービスです。まずはお気軽にお問い合わせください。







このブログで参照されている、Microsoft、Windows、その他のマイクロソフト製品およびサービスは、米国およびその他の国におけるマイクロソフトの商標または登録商標です。

お気軽にお問い合わせください。

ページのトップへ