役割設定管理者

PortalRoleAdmin はポータルロールの管理ページで、ポータルがどのロールを持っているか、そして新たに登録されたユーザーにどのロールが割り当てられているかを示します。両方のスタックにフレームワークが付属しているため、ポータルはパッケージを更新することで改善を受け取ります。あなたが書いたページがロールゲートと見出しです。

ページの内容

2つのグリッドで、それぞれ「New」「Open」「Delete」があります。すべての変更は保存または削除した瞬間に書き込まれます — ページレベルの保存はありません。

  • ポータルの役割 — 名前と説明をサイドパネルで編集しています。ロールが 付与する 内容はここでは設定されていません。起動時のコードでロール名にバインドされているため、ロールを追加すると強力ではなく割り当て可能になり、名前を変更すると付与内容から切り離されます。
  • 役割構成 — 新たに登録されたユーザーにどの役割が与えられ、いつ与えられるか――誰にも与えられない、全員に、あるいはあなたが書いたルールに合致する誰かに。

資格を決めるルール

ルールとは contact上のFetchXMLクエリです。誰かが登録すると、ポータルはその連絡先にクエリを絞り込み、Dataverseが返せば役割を割り当てます。関連するテーブルへのジョインは尊重され、列、ソート、 top は回答に影響しないため、ビューからコピーしたクエリはそのまま動作します。

Reactでは、 FetchXMLクエリビルダーをContactにピン留めし、集約をオフにして独立したページに書き、ビルダーにスペースを確保します。 Runは ルールが今日マッチする連絡先を表示します。これが、あなたが意図した人物を選んでいるかどうかを知る唯一の方法です。

Blazorでは同じ列がFetchXMLテキストとして編集されています。まだBlazorクエリビルダーはありません。

破られたルールは静かに失敗する

空のルール、有効なFetchXMLでない、集約クエリ、またはContactが誰 にもマッチしないテーブルに根ざしているルール。エラーとして報告されるものは何もありません — 単に役割が割り当てられていないだけです。Reactエディタはルール作成中にビルダーの上でこれらの各点について警告します。

ポータルに追加する

両方のプロジェクトテンプレートにはすでにこのページが含まれています。/RoleConfigurationAdmin、管理者メニューの下にあります。自分で追加するには、ReactやuseIsSystemAdmin()でゲート[AuthorizeSystemAdmin]と<SystemAdminView>を設定し、コンポーネントを以下に置いてください。

React Blazor

設定ページ(React)

configurationUrl サイドパネルではなく、独自のページで構成を開きます。オフにするとパネルが使われますが、クエリビルダーのスペースがほとんど残りません。指向するページはレコードコンテキストと保存ボタンを提供します。フォーム自体がフレームワークの PortalRoleConfigurationFormです:

強化認可下のウェブロール

強化認可を実行するポータルでは、ユーザーにはポータルロールではなくPower Pagesの ウェブロール が与えられます。Power Pagesは各ユーザーにそれぞれのWebロールとペアリングするDataverseセキュリティロールを付与し、その役割が許可する権限はサイトのテーブル権限から得られます。 WebRoleAdmin はそのモデルの PortalRoleAdmin に対応しており、サイトのウェブロール、 テーブル権限 (どのテーブル、どの行、どの操作、どのウェブロールに適用されるか)、そしてウェブロールを新規ユーザーに渡すルール(上記とまったく同様)から成り立っています。ルールは Power Portals Pro Enhanced Authorization ソリューションに存在し、環境にPower Pagesをインストールする必要があります。

両方のプロジェクトテンプレートは、どのページが適用されるかを示します。管理者メニューは強化認可がオンのときにWebロール、オフのときはロール設定が表示されます。自分のナビゲーションも、Blazorの ISecurityModelInfo.IsEnhancedAuthorizationEnabledAsync() やReactの useAuthOptions() で同じ選択をすることができ、どちらも GET /api/auth/optionsから回答されています。

React Blazor

テーブル権限のテーブルや関係は、綴り間違った名前が受け入れられて何も与えられないため、環境のメタデータから選ばれます。関係フィールドはアクセスタイプに従っています:連絡先とアカウントは、行がユーザーの連絡先やアカウントにどのように到達するかを尋ね、親は親権限と行がテーブルに到達する方法を求め、カスタムはReactの FetchXMLクエリビルダー で書かれたFetchXMLフィルター、Blazorのテキスト形式で作成します。権限のウェブロールはそれとともに保存され、新しい権限も含まれています。グリッドはその理由で一度に一つの権限を編集します。

変更はPower Pagesを通じてDataverseに届きます

Webロールとテーブル権限はPower Pages独自のレコードであるため、このページとPower Pages管理アプリは同じデータを編集し、 SecurityOptions.DataverseSecurity.PowerPagesSiteId のサイトのみが表示されたり変更したりします。Power Pagesは、Webロールのテーブル権限を、独自のスケジュールでウェブロールとペアリングするセキュリティロールに変換します。新しいWebロールはそのペアリングが存在するまで何も付与せず、役割や権限の変更がサインインしたユーザーに届くまでに1〜2分かかることがあります。別のサイトのウェブロールを命名するルールはスキップされ、ポータルがログを記録します。

API参照

反応してください ブレイザー

PortalRoleAdmin クラス

パラメータ

名称
種類
デフォルト
概要
ConfigurationUrlstring?
構成が編集される場合、その構成のIDが {0} となるURLとして — 例:「 RoleConfigurationAdmin/Configuration/{0}」設定し、Create and Openを行います 設定グリッド上のボタンはそのページに移動し、IDの代わりに 「new 」が入っています 新しいもののために。セットせずに、側面パネルを開ける。
名称: ConfigurationUrl
種類: string?
概要: 構成が編集される場合、その構成のIDが {0} となるURLとして — 例:「 RoleConfigurationAdmin/Configuration/{0}」設定し、Create and Openを行います 設定グリッド上のボタンはそのページに移動し、IDの代わりに 「new 」が入っています 新しいもののために。セットせずに、側面パネルを開ける。

PortalRoleConfigurationForm

反応してください ブレイザー

PortalRoleConfigurationForm クラス

性質

名称
種類
デフォルト
概要
RecordTableRecord?
ルールが修正されている。
名称: Record
種類: TableRecord?
概要: ルールが修正されている。

WebRoleAdmin

反応してください ブレイザー

WebRoleAdmin クラス

パラメータ

名称
種類
デフォルト
概要
ConfigurationUrlstring?
構成が編集される場合、その構成のIDが {0} となるURLとして — 例:「 WebRoleConfigurationAdmin/Configuration/{0}」設定し、作成して開きます 設定グリッド上のボタンはそのページに移動し、IDの代わりに 「new 」が入っています 新しいもののために。セットせずに、側面パネルを開ける。
PermissionUrlstring?
テーブル権限が編集される場合、その権限の IDが{0} となるURLとして — 例:「 WebRoleConfigurationAdmin/Permission/{0}」。設定し、作成して開きます テーブル権限グリッド上のボタンはそのページに移動し、 新しい ページに移動します。 新しいもののIDを。セットせずにサイドパネルを開ける。
名称: ConfigurationUrl
種類: string?
概要: 構成が編集される場合、その構成のIDが {0} となるURLとして — 例:「 WebRoleConfigurationAdmin/Configuration/{0}」設定し、作成して開きます 設定グリッド上のボタンはそのページに移動し、IDの代わりに 「new 」が入っています 新しいもののために。セットせずに、側面パネルを開ける。
名称: PermissionUrl
種類: string?
概要: テーブル権限が編集される場合、その権限の IDが{0} となるURLとして — 例:「 WebRoleConfigurationAdmin/Permission/{0}」。設定し、作成して開きます テーブル権限グリッド上のボタンはそのページに移動し、 新しい ページに移動します。 新しいもののIDを。セットせずにサイドパネルを開ける。

WebRoleConfigurationForm

反応してください ブレイザー

WebRoleConfigurationForm クラス

性質

名称
種類
デフォルト
概要
RecordTableRecord?
ルールが修正されている。
名称: Record
種類: TableRecord?
概要: ルールが修正されている。

WebRoleForm(ウェブロールフォーム)

反応してください ブレイザー

WebRoleForm クラス

TablePermissionForm

反応してください ブレイザー

TablePermissionForm クラス

性質

名称
種類
デフォルト
概要
RecordTableRecord?
テーブルの許可が編集中です。
名称: Record
種類: TableRecord?
概要: テーブルの許可が編集中です。