列のアクセス許可の設定
Power Pages では、テーブルのアクセス許可 は個々の Dataverse テーブル レコードにセキュリティを適用します。 Power Pages Web API を使用してサイトのデータを操作する場合、列レベルのアクセス許可を適用してアクセスをさらに制限できます。 列のアクセス許可は、ポータル Web API にのみ適用します。
列のアクセス許可は、Web ロール に関連付けられているオプションの構成です。 Web ロールには、任意の数のテーブル権限と列権限を設定できます。 Web ロールに複数の列のアクセス許可がある場合、選択した Web ロールにすべてに適用されます。
列のアクセス許可の前に、テーブルのアクセス許可が評価されます。 ユーザーにテーブルへのアクセス権がある場合、そのテーブルの列のアクセス許可が適用されます。 ユーザーがテーブルへのアクセス権を持っていない場合、ユーザーが持つ列のアクセス許可は無視されます。 列のアクセス許可が定義されていない場合、テーブルのアクセス許可はすべての列に適用されます。
重要
列のアクセス許可機能には、ポータル ホストのバージョン 9.4.1.x かそれ以降、または、スターター ポータル パッケージのバージョン 9.3.2201.x かそれ以降が必要です。
ポータル管理アプリ を使用して列アクセス許可を管理します。
列のアクセス許可を Web ロールに追加する
Power Pages にサインインして、編集するサイトを開きます。
左側のペインで 他の項目 (…) >ポータル管理 を選択します。
ポータル管理アプリの左側のパネルで、セキュリティ セクションまで下にスクロールし、Web ロール を選択します。
Web ロールを選択します。
関連 から、列のアクセス許可プロファイル を選択します。
既存の列アクセス許可プロファイルを追加 を選択して、次の操作を行います。
Web ロールに既存の列アクセス許可を追加するには、必要なレコードを検索、参照してから 追加 を選択します。
新しい列アクセス許可プロファイル レコードを追加するには、+ 新規レコード>列アクセス許可プロファイル を選択します。 必要な情報を入力または選択します。 保存して閉じる を選択してから 追加 を選択します。
保存 を選びます。
属性とリレーションシップ
次のテーブルは、テーブルのアクセス許可の属性について説明しています。
件名 | Description |
---|---|
プロファイル名 | テーブル レコードの内容を示す名前が必要です |
テーブル名 | 列を含むテーブルの論理名が必要です |
Web サイト | テーブルに関連付けられている Web サイトが必要です |
すべての列のアクセス許可 | 作成、読み取り、更新 のあらゆる組み合わせで、アクセス許可を使用できます |
列のアクセス許可 | 列に適用するアクセス許可の場合、ここで定義されていない列は、すべての列のアクセス許可 設定に従います |
Web ロール | 列アクセス許可プロファイルに関連付けられた Web ロール |
すべての列アクセス許可 設定を使用すると、ユーザーが列に対して持つアクセスを制限できます。 複数の値を選択して、特定の列へのアクセスを "調整" できます。 例えば、テーブルのアクセス許可として、すべての列で作成権限と読み取り権限を与えることができます。 すべての列アクセス許可 設定を使用すると、さらにユーザーをすべての列に対して読み取り権限のみに制限することができます。
別の例では、特定の Web ロールがすべての取引先担当者列を読み取れるようにし、FirstName と LastName の列を更新できるようにしたい場合があります。 この場合、すべての列アクセス許可 設定で読み取りオプションを選択し、"読み取り" および "更新" 権限を持つ FirstName と LastName の列に対して列アクセス許可プロファイルを作成します。
テーブルと列アクセス許可の例
例をいくつか確認して、テーブルと列アクセス許可の連携方法に関する理解を深めましょう。 これら例では、JobTitle と Salary 列を持つ取引先担当者テーブルがあります。
シナリオ | テーブルのアクセス許可 | サイト設定 Webapi/取引先担当者/有効化 |
サイト設定 Webapi/取引先担当者/フィールド |
列のアクセス許可 |
---|---|---|---|---|
ユーザーには、列に対するアクセス許可はありません。 | Contact (作成、読み取り、更新) | TRUE | ||
ユーザーには、列に対するアクセス許可はありません。 | Contact (作成、読み取り、更新) | FALSE | ||
ユーザーには、列に対するアクセス許可はありません。 | 取引先担当者 (なし) | TRUE | * |
すべての列のアクセス許可: 作成、読み取り、更新 列のアクセス許可: (なし) |
ユーザーには、すべての列に対するすべてのアクセス許可があります。 | Contact (作成、読み取り、更新) | TRUE | * | |
ユーザーには、列に対するアクセス許可はありません。 | Contact (作成、読み取り、更新) | TRUE |
すべての列のアクセス許可: 作成、読み取り、更新 列のアクセス許可: (なし) |
|
ユーザーは、JobTitle で読み取り、他のすべての列で作成、読み取り、更新を行うことができます。 | Contact (作成、読み取り、更新) | TRUE | * |
すべての列のアクセス許可: (なし) 列のアクセス許可: JobTitle: 読み取り |
ユーザーは、JobTitle を作成し、他のすべての列を、作成、読み取り、更新することができます。 | Contact (作成、読み取り、更新) | TRUE | * |
すべての列のアクセス許可: 読み取り 列のアクセス許可: JobTitle: 作成、読み取り、更新 |
ユーザーは、JobTitle と Salary について、作成、読み取り、更新することができます。 | Contact (作成、読み取り、更新) | TRUE | JobTitle、Salary | |
このユーザーは、JobTitle と Salary に作成、読み取り、更新を作成することができ、他の列には権限を持ちません。 | Contact (作成、読み取り、更新) | TRUE | JobTitle、Salary |
すべての列のアクセス許可: 作成、読み取り、更新 列のアクセス許可: (なし) |
ユーザーは、JobTitle と Salary について、作成、読み取り、更新することができます。 | Contact (作成、読み取り、更新) | TRUE | JobTitle、Salary |
すべての列のアクセス許可: (なし) 列のアクセス許可: JobTitle: 作成、読み取り、更新 Salary: 作成、読み取り、更新 |
このユーザーは、Salary に対して作成、読み取り、更新でき、Salary に対しては何の権限も持ちません。 | Contact (作成、読み取り、更新) | TRUE | 役職 |
すべての列のアクセス許可: (なし) 列のアクセス許可: JobTitle: 作成、読み取り、更新 Salary: 作成、読み取り、更新 |
ユーザーは、JobTitle と Salary について、作成、読み取り、更新することができます。 | Contact (作成、読み取り、更新) | TRUE | JobTitle、Salary |
すべての列のアクセス許可: (なし) 列のアクセス許可: JobTitle: 作成、読み取り、更新 Salary: 読み取り |