Power Apps を使用してモデル駆動アプリと共有する

注意

2020 年 11 月発効:

  • Common Data Service は Microsoft Dataverse に名称が変更されました。 詳細情報
  • Microsoft Dataverse に関して、用語を一部変更しています。 たとえば、エンティティテーブル に、フィールド に変わりました。 詳細情報

この記事は間もなく更新され、最新の用語が反映されます。

PowerApps アプリは、共有にロールベースのセキュリティを使用します。 ロールベースのセキュリティの基本概念は、セキュリティ ロールにはアプリ内で実行できる一連の操作を定義する特権が含まれるということです。 すべてのアプリ ユーザーは、これらの中で 1 つ以上の定義済みロールまたはユーザー定義ロールに割り当てられる必要があります。 または、チームにもロールを割り当てることができます。 これらのロールのいずれかにユーザーまたはチームを割り当てると、そのロールに関連付けられた一連の特権がユーザーまたはチーム メンバーに付与されます。

前提条件

セキュリティ ロール とアプリや他のユーザーに割り当てているロールと同等以上の権限を持っていることを確認してください。

アプリ用にセキュリティ ロールを作成する

通常、モデル駆動型アプリには、カスタム テーブルやその他のカスタム構成が含まれています。 最初に、アプリで使用されるすべてのコンポーネントに対する許可と共に セキュリティ ロールを作成する ことが重要です。 詳細情報: カスタム セキュリティ ロールの作成

注意

既存のロールがアプリのデータへのアクセスを許可している場合、このステップはスキップできます。

プレビュー : モデル駆動型アプリの共有

モデル駆動型アプリの共有には、2 つの主要なステップが含まれます。 まず、1 つ以上のセキュリティ ロールをそのアプリに関連付けてから、セキュリティ ロールをユーザーに割り当てます。

  1. https://make.powerapps.com へ移動します
  2. モデル駆動型アプリを選択し、共有 をクリックします。
  3. アプリを選択し、一覧からセキュリティ ロールを選択します。

    ロールのアプリへの割り当て。

  4. ユーザーの検索
  5. ユーザーを選択し、リストからロールを選択します。

    ロールのユーザーへの割り当て。

  6. 共有 をクリックします。

キャンバス アプリの共有とは異なり、モデル駆動型のアプリを共有しても、現在、アプリへのリンクを含むメールは送信されません。

アプリへの直接リンクを取得するには :

  1. アプリを編集して、プロパティ タブをクリックします。
  2. 統一インターフェイス URL をコピーします。
  3. SharePoint サイトに投稿したり、メールで送信するなど、ユーザーがアクセスできる位置にアプリ URL を貼り付けます。

セキュリティ ロールの作成または構成

PowerApps 環境には、定義済みのセキュリティ ロールが用意されています。これらのセキュリティ ロールは、一般的なユーザー タスクを反映し、アプリの使用に必要な最小限の業務データへのアクセスを許可する、というセキュリティのベスト プラクティスの目的に沿うようにアクセス レベルが定義されています。 たとえば、自分のアプリがユーザー定義テーブルに基づいている場合、ユーザーがアプリを操作する前に、テーブル特権を明示的に指定する必要があります。 これを行うには、次のいずれかの操作を行うように選択します。

  • ユーザー定義テーブルに基づいて行に特権が含まれるようにするには、あらかじめ定義されたセキュリティ ロールを展開します。
  • アプリのユーザーに対して特権を作成する目的でユーザー定義のセキュリティ ロールを作成します。

アクセス権とスコープ特権の詳細については、「セキュリティ ロール」を参照してください。

カスタム セキュリティ ロールの作成

  1. PowerApps サイトで アプリ を選択し、共有したいモデル駆動型アプリの横の を選択し、その後 共有 を選択します。

  2. アプリを選択し、セキュリティ ロールのリストを展開します。

  3. すべてのロール ページで、新規 を選択します。

  4. セキュリティ ロール デザイナーでは、アクション (読み取り、書き込み、削除など) と、そのアクションを実行するためのスコープを選択します。 スコープにより、ユーザーが特定の処理を実行できる環境階層の高さが決まります。 ロール名 ボックスで ペット グルーミング技術者 と入力します。

  5. ユーザー定義テーブル タブを選択し、目的のユーザー定義テーブルを探します。 この例では、ペット という名前のユーザー定義テーブルが使用されます。

  6. ペット 行で、組織グローバル スコープ 組織のグローバルスコープ が選択されるまで次の各特権を 4 回選択します: 読み取り、書き込み、追加

    新しいセキュリティ ロール

  7. ペット美容室アプリにはアカウント テーブルとのリレーションシップもあるので、コア行 タブを選び、取引先企業" 行で 読み取り を、組織スコープ グローバル 組織のグローバル スコープ が選択されるまで 4 回選びます。

  8. カスタマイズ タブを選択して、権限リストで モデル駆動型アプリ の隣にある 読み取り 権限を選択して、組織スコープ 組織グローバル スコープ が選択されるようにします。

    アプリのセキュリティ ロールの選択。

  9. 保存して閉じる を選択します。

  10. セキュリティ ロール デザイナーで、ロール名 ボックスに ペット グルーミング スケジューラ を入力します。

  11. ユーザー定義テーブル タブを選択し、ペット テーブルを探します。

  12. ペット 行で、組織グローバル スコープ 組織のグローバルスコープ が選択されるまで次の各特権を 4 回選択します: 作成、読み取り、書き込み、削除、追加、追加先、割り当て、および共有

  13. ペット美容室アプリにはアカウント テーブルとのリレーションシップもあり、スケジュール担当者はアカウント行を作成および編集できる必要があるので、コア行 タブを選び、取引先企業 行で以下の権限を、組織スコープ グローバル 組織のグローバル スコープ が が選択されるまで 4 回選びます。 作成、読み取り、書き込み、削除、追加、追加先、割り当て、共有

  14. 保存して閉じる を選択します。

<a name="assign-security-roles-to-users">ユーザーへのセキュリティ ロールの割り当て

セキュリティ ロールは、一連のアクセス レベルとアクセス許可により、ユーザーのアクセスをコントロールします。 特定のセキュリティ ロールに含まれるアクセス許可とアクセス レベルの組み合わせにより、ユーザーが表示できるデータおよびユーザーのデータ使用方法を制限します。

ペット グルーミング技術者へのセキュリティ ロールの割り当て

  1. このアプリの共有 ダイアログの セキュリティ ロールへのユーザーの割り当て で、セキュリティ ユーザー を選択します。

  2. 表示されたリストで、ペットグルーマーであるユーザーを選択し、コマンドバーで 役割の管理 を選択します。

  3. セキュリティ ロールの管理 をクリックします。

    ![ロールを管理する。](media/share-model-driven-app/manage-roles.png "ロールを管理する")

  4. すべての役割 ページで、Microsoft Dataverse ユーザー を選択し、アクション役割のコピー の順にクリックします。

ヒント

既存のロールをコピーする代わりに、新しい空のロールを作成することもできます。

  1. ロール名 ボックスで、マイ カスタム アプリへのアクセス などわかりやすいロールを入力します。 OK をクリックします。

  2. セキュリティ ロール デザイナーから、読み取り、書き込み、または削除などのアクションと、アクセス レベル を選択します。 アクセス レベルは、ユーザーが特定の処理を実行できる環境階層の高さが決まります。

  3. ユーザー定義テーブル タブを選択し、アプリで使用したユーザー定義テーブルを探します。

  4. カスタム テーブルの行で、各権限のアクセス レベルを設定します。

  5. アプリで使用されている他のテーブルについても繰り返します。

  6. カスタマイズ タブを選択して、権限リストで モデル駆動型アプリ の隣にある 読み取り 権限が設定されていることを確認し、組織アクセス レベル 組織グローバル スコープ が が選択されるようにします。

    重要

    読み取り作成、そして 書き込みモデル駆動型アプリ 特権に対して付与されたユーザーは、環境内のすべてのアプリにアクセスできます (アプリにアクセスできるロールの一部ではない場合でも)。 モデル駆動型アプリ特権での作成および書き込み。

  7. 保存して閉じる を選択します。

定義済みのセキュリティ ロールについて

これらの定義済みロールは、PowerApps 環境で使用できます。

セキュリティ ロール *特権 説明
環境作成者 なし Power Automate を使用して、アプリ、つながり、カスタム API、ゲートウェイ、フローなど、環境に関連付けられた新しいリソースを作成できます。 ただし、環境内のデータにアクセスする特権はありません。 詳細: 環境の概要
システム管理者 作成、読み取り、書き込み、削除、カスタマイズ、セキュリティ ロール セキュリティ ロールの作成、変更、割り当てなど、環境をカスタマイズまたは管理するための完全なアクセス許可が付与されます。 環境内のすべてのデータを表示できます。 詳細情報: カスタマイズに必要な権限
システムのカスタム担当者 作成 (本人)、読み取り (本人)、書き込み (本人)、削除 (本人)、カスタマイズ 環境をカスタマイズするための完全なアクセス許可が付与されます。 ただし、ユーザーが作成した環境テーブルの行のみ表示できます。 詳細情報: カスタマイズに必要な権限
Basic ユーザー 読み取り、作成 (セルフ)、書き込み (セルフ)、および削除 (セルフ) 環境内でアプリを実行して、自分が所有する行に対して一般的なタスクを実行できます。
代理人 別のユーザーに代わって実行します コードを別のユーザーとして実行するか、偽装可能にします。 通常、行へのアクセスを許可するために別のセキュリティ ロールとともに使用されます。 詳細情報: 他のユーザーを偽装する

*特権は、特に指定されていない限り、グローバル スコープです。

Azure Active Directory グループを使用してアクセスを管理する

管理者は、組織の Azure Active Directory (Azure AD) グループを使って、ライセンスを持った Dataverse ユーザーのアクセス権を管理できます。 Officeとセキュリティ、両方の Azure AD グループを使用して、ユーザーのアプリへのアクセス権を保護することができます。 詳細 : グループ チームについて

関連項目

モバイル デバイス上でモデル駆動型アプリを実行

ユーザーを作成し、セキュリティ ロールを割り当てる