You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: powerapps-docs/maker/portals/configure/assign-entity-permissions.md
+6-6Lines changed: 6 additions & 6 deletions
Original file line number
Diff line number
Diff line change
@@ -5,7 +5,7 @@ author: GitanjaliSingh33msft
5
5
ms.service: powerapps
6
6
ms.topic: conceptual
7
7
ms.custom:
8
-
ms.date: 04/21/2021
8
+
ms.date: 05/13/2021
9
9
ms.author: gisingh
10
10
ms.reviewer: tapanm
11
11
contributors:
@@ -42,25 +42,25 @@ When creating a new Table Permission record, the first step is to determine the
42
42
43
43
### Global access type
44
44
45
-
If a Table Permission record with Read permission is granted to a role that has global access type, any contact in that role will have access to all records of the defined table. For example, they can see all leads, all accounts, and so on. This permission will be automatically respected by any lists, essentially showing all records according to the model-driven app views that have been defined for that list. Further, if a user attempts to access a record via a basic form that they don't have access to, they'll receive a permission error.
45
+
If an Table Permission record with Read permission is granted to a role that has global access type, any contact in that role will have access to all records of the defined table. For example, they can see all leads, all accounts, and so on. This permission will be automatically respected by any lists, essentially showing all records according to the Microsoft Dataverse views that have been defined for that list. Further, if a user attempts to access a record via an basic form that they don't have access to, they'll receive a permission error. For example, [show all car listings to all authenticated users in a car dealership](entity-permissions-studio-walkthrough.md#view-all-car-listings).
46
46
47
47
### Contact access type
48
48
49
49
With Contact access type, a signed-in user in the role for which the permission record is defined will have the rights granted by that permission only for records that are related to that user's contact record via a defined relationship.
50
50
51
-
On a list, this access type means that a filter will be added to whatever model-driven app views are surfaced by that list, which only retrieves records directly linked to the current user. (Depending on the scenario, this relationship can be thought of as ownership or management rights.)
51
+
On an list, this access type means that a filter will be added to whatever Microsoft Dataverse views are surfaced by that list, which only retrieves records directly linked to the current user. (Depending on the scenario, this relationship can be thought of as ownership or management rights.) For example, [show, update, and delete owned car listings in a car dealership](entity-permissions-studio-walkthrough.md#view-update-and-delete-owned-car-listings).
52
52
53
-
Basic forms will only allow the appropriate permission for Read, Create, Write, and so on, if this relationship exists when the record is loaded. [!INCLUDE[proc-more-information](../../../includes/proc-more-information.md)][Define basic forms](entity-forms.md).
53
+
Basic forms will only allow the appropriate permission for Read, Create, Write, and so on, if this relationship exists when the record is loaded. More information:[Define basic forms](entity-forms.md).
54
54
55
55
### Account access type
56
56
57
57
With Account Access Type, a signed-in user in the role for which the permission record is defined will have the rights granted by that permission only for records that are related to that user's parent account record via a defined relationship.
58
58
59
-
This access type means that the list will only show the records of the selected table that are associated to the user's parent account. For example, if a table permission allows Read access to Lead table with the Account access type, the user having this permission can view all the leads of only the parent account of the user.
59
+
This access type means that the list will only show the records of the selected table that are associated to the user's parent account. For example, if an table permission allows Read access to Lead table with the Account access type, the user having this permission can view all the leads of only the parent account of the user. For example, [show all car dealerships](entity-permissions-studio-walkthrough.md#view-all-car-dealerships).
60
60
61
61
### Self access type
62
62
63
-
Self Access Type allows you to define the rights a user has to their own Contact (Identity) record. Users can use basic forms or advanced forms to make changes to their own Contact record linked with their profile. The default Profile Page has a special built-in form that allows any user to change their basic contact info, and opt in or out of marketing lists. If this form is included in your portal (which it is by default), users won't require this permission to use it. However, they'll require this permission to use any custom basic forms or advanced forms that target their User Contact record.
63
+
Self Access Type allows you to define the rights a user has to their own Contact (Identity) record. Users can use basic forms or advanced forms to make changes to their own Contact record linked with their profile. The default Profile Page has a special built-in form that allows any user to change their basic contact info, and opt in or out of marketing lists. If this form is included in your portal (which it is by default), users won't require this permission to use it. However, they'll require this permission to use any custom basic forms or advanced forms that target their User Contact record. For example, [profile page in a car dealership](entity-permissions-studio-walkthrough.md#change-profile-details).
Copy file name to clipboardExpand all lines: powerapps-docs/maker/portals/configure/entity-permissions-studio-walkthrough.md
+43-5Lines changed: 43 additions & 5 deletions
Original file line number
Diff line number
Diff line change
@@ -5,7 +5,7 @@ author: ckwan-ms
5
5
ms.service: powerapps
6
6
ms.topic: conceptual
7
7
ms.custom:
8
-
ms.date: 04/26/2021
8
+
ms.date: 05/13/2021
9
9
ms.author: ckwan
10
10
ms.reviewer: tapanm
11
11
contributors:
@@ -67,12 +67,13 @@ Contoso has the following relationships configured between tables in Dataverse.
67
67
68
68
Contoso has the following customizations configured for this scenario.
69
69
70
-
-Web pages have table permissions enabled. More information: [Manage page permissions](webpage-access-control.md)
70
+
-Lists on web pages have table permissions enabled. More information: [Configure lists](entity-lists.md)
71
71
- Web pages have [lists](entity-lists.md) configured with the tables, views, and the ability to create/view/edit/delete records as appropriate.
72
-
- To show [all car listings to all authenticated users](#view-all-car-listings), the web page has list with a view from the **Car listings** table with only View record permission.
73
-
- To show, update, and delete [owned car listings](#view-update-and-delete-owned-car-listings), the web page has list with a view from the **Car listings** table having View, Create, Edit, and Delete records permissions.
74
-
- To show [all car dealerships](#view-all-car-dealerships), the web page has list with a view from the **Dealerships** table having View, Create, Edit, and Delete records permissions.
72
+
- To show [all car listings to all authenticated users](#view-all-car-listings), the web page has list with a view from the **Car listings** table with only View record permission. Access type: [Global access](assign-entity-permissions.md#global-access-type).
73
+
- To show, update, and delete [owned car listings](#view-update-and-delete-owned-car-listings), the web page has list with a view from the **Car listings** table having View, Create, Edit, and Delete records permissions. Access type: [Contact access](assign-entity-permissions.md#contact-access-type).
74
+
- To show [all car dealerships](#view-all-car-dealerships), the web page has list with a view from the **Dealerships** table having View, Create, Edit, and Delete records permissions. Access type: [Account access](assign-entity-permissions.md#account-access-type).
75
75
- To show [car listings for an associated dealership](#view-car-listings-for-associated-dealership), the web page has a list with a view from the **Dealerships** table. This list can be used to view the dealership details, with view having subgrid that shows the car listings associated to the selected dealership with View, Create, Edit, and delete records permissions.
76
+
- Default [profile page](#change-profile-details) to allow sales staff to change their contact details. Access type: [Self access](assign-entity-permissions.md#self-access-type).
76
77
77
78
## View all car listings
78
79
@@ -233,6 +234,42 @@ To configure table permissions for sales staff to view associated dealership's c
233
234
234
235
1. Select **Save**.
235
236
237
+
## Change profile details
238
+
239
+
Contoso uses the default profile page available with the portal template to allow sales staff to update their contact details.
240
+
241
+

242
+
243
+
To configure table permissions for sales staff to view associated dealership's car listings:
244
+
245
+
1. Sign in to [Power Apps](https://make.powerapps.com).
246
+
247
+
1. Select **Apps** on the left-pane.
248
+
249
+
1. Select your portal.
250
+
251
+
1. Select **Edit** to open portals Studio.
252
+
253
+
1. Select **Settings** (:::image type="icon" source="media/entity-permissions-studio/settings.png":::) on the left pane inside portals Studio.
254
+
255
+
1. Select **Table permissions**.
256
+
257
+
1. Enter table permission name as "Staff contact details".
258
+
259
+
1. Select **Contact** table.
260
+
261
+
1. Select **Self access** as the access type.
262
+
263
+
1. Select **Read**, and **Write** privileges.
264
+
265
+
1. Select **Add roles**.
266
+
267
+
1. From the list of available roles, select **Authenticated Users**.
Now that you have all the table permissions configured, this is how the permissions look like inside portals Studio.
@@ -243,6 +280,7 @@ Now that you have all the table permissions configured, this is how the permissi
243
280
-**Cars associated to sales role** - This table permission allows each sales staff to view the car listings created by themselves using **Contact access** access type.
244
281
-**Car dealerships owned by company** - This table permission allows sales staff to view all dealerships across the company using **Account access** access type.
245
282
-**Cars in dealerships** - This child permission with is associated to the **Car dealerships owned by company** table permission. And allows sales staff to view car listings associated to their assigned dealership using **Associated access** access type (through child permission).
283
+
-**Staff contact details** - This table permission allows sales staff the ability to change their profile information (their own Contact record).
246
284
247
285
This scenario explained how to configure table permissions in a real-world scenario to achieve business goals. You can now use the learnings from this tutorial to configure table permissions for your portal to meet your business requirements.
Copy file name to clipboardExpand all lines: powerapps-docs/maker/portals/configure/entity-permissions-studio.md
+45-5Lines changed: 45 additions & 5 deletions
Original file line number
Diff line number
Diff line change
@@ -5,7 +5,7 @@ author: ckwan-ms
5
5
ms.service: powerapps
6
6
ms.topic: conceptual
7
7
ms.custom:
8
-
ms.date: 04/26/2021
8
+
ms.date: 05/13/2021
9
9
ms.author: ckwan
10
10
ms.reviewer: tapanm
11
11
contributors:
@@ -33,8 +33,7 @@ Portals Studio shows four different **Access types**. Depending on the access ty
33
33
1.**Self access** - Applies the selected table permission and privileges to the users from the selected role *for only their own contact record*.
34
34
35
35
> [!NOTE]
36
-
> -**Parent access type** is only available in the Portal Management app. Instead of creating a table permission with the access type as **Parent**, directly add child permission to existing table permissions when using portals Studio.
37
-
> - Ensure you enable table permissions on web pages for permissions to take effect. More information: [Manage page permissions](webpage-access-control.md)
36
+
> **Parent access type** is only available in the Portal Management app. Instead of creating a table permission with the access type as **Parent**, directly add child permission to existing table permissions when using portals Studio.
38
37
39
38
## Configure table permissions using portals Studio
40
39
@@ -70,6 +69,9 @@ To create a table permission using portals Studio:
70
69
71
70

72
71
72
+
> [!NOTE]
73
+
> If you don't have any relationships available for the selected table, you can select **New relationship** to create a new relationship.
74
+
73
75
1. Select privileges that you want to grant.
74
76
75
77
1. Select **Add roles** to add the roles that this table permission will apply to.
@@ -103,6 +105,14 @@ To view table permissions using portals Studio:
103
105
104
106

105
107
108
+
> [!NOTE]
109
+
> - When you group table permissions by role, table, or state, the permissions are listed as a flat structure without the parent-child relationships for configured permissions.
110
+
> - You can only filter for parent table permissions, not child permissions.
111
+
112
+
1. To sort the table permissions, select a column at the top in the list of table permissions.
@@ -121,12 +131,18 @@ To edit a table permission using portals Studio:
121
131
122
132
1. Select the table permission that you want to edit.
123
133
134
+
1. Select **Edit** from the menu at the top. Alternatively, you can also select :::image type="icon" source="media/entity-permissions-studio/more-commands.png"::: (More Commands), and then choose **Edit**.
135
+
124
136
1. Change table permission details, such as the name, table, access type, privileges, and applicable roles. More information: [Create table permissions using portals Studio](#create-table-permissions-using-portals-studio)
125
137
126
138
1. Select **Save**.
127
139
128
140
### Deactivate/activate or delete table permissions using portals Studio
129
141
142
+
A deactivated table permission becomes ineffective. You can activate a deactivated table permission later. When a table permission is deactivated, its child table permissions remain active but are not in effect due to the ineffective parent table permission. You can deactivate child permissions separately.
143
+
144
+
When a table permission is deleted, it also deletes all associated child permissions.
145
+
130
146
To deactivate/activate or delete a table permission using portals Studio:
131
147
132
148
1. Sign in to [Power Apps preview](https://make.preview.powerapps.com).
@@ -143,7 +159,7 @@ To deactivate/activate or delete a table permission using portals Studio:
143
159
144
160
1. Select the table permission that you want to deactivate/activate or delete.
145
161
146
-
1. Select **Deactivate**, **Activate**, or **Delete**.
162
+
1. Select **Deactivate**, **Activate**, or **Delete** from the menu at the top. 1. Select **Edit** from the menu at the top. Alternatively, you can also select :::image type="icon" source="media/entity-permissions-studio/more-commands.png"::: (More Commands), and then choose your option.
147
163
148
164
1. Confirm when prompted.
149
165
@@ -165,7 +181,7 @@ To add a child permission to an existing table permission using portals Studio:
165
181
166
182
1. Select the table permission that you want to add the child permission to.
167
183
168
-
1. Select **Add child permission**.
184
+
1. Select **Add child permission** from the menu at the top. Alternatively, you can also select :::image type="icon" source="media/entity-permissions-studio/more-commands.png"::: (More Commands), and then choose **Add child permission**.
169
185
170
186
1. Create the child permission with the following details:
171
187
@@ -183,6 +199,30 @@ To add a child permission to an existing table permission using portals Studio:
183
199
184
200
To view, edit, deactivate/activate or delete child permissions using portals Studio, follow the steps explained in the earlier section to [configure table permissions using portals Studio](#configure-table-permissions-using-portals-studio).
185
201
202
+
## Additional considerations
203
+
204
+
Table permissions configuration is subject to the following additional considerations and rules.
205
+
206
+
### Parent table permission missing web role associated to its child
207
+
208
+
When you have a child permission associated with one or more web roles missing from the parent permissions, you'll see the following error while editing the child permissions.
209
+
210
+
"One or more roles applied to this permission aren't available to its parent table permission. Modify roles in either permissions."
211
+
212
+
For example, a child table permission shows the below message when the parent table permission doesn't have the *Marketing* web role associated, even though the child permission is still associated.
213
+
214
+

215
+
216
+
To fix this problem, add the *Marketing* web role to the parent table permission, or remove the *Marketing* web role from the child table permission.
217
+
218
+
### Table permissions without any web roles associated
219
+
220
+
For a table permission to take effect, it has to be associated to one or more web roles. Users that belong to web roles are granted the privileges you select for the associated table permission.
221
+
222
+
The following message shows when you try to save a table permission without any web role associated.
223
+
224
+

225
+
186
226
## Next steps
187
227
188
228
[Tutorial: Configure table permissions using portals Studio](entity-permissions-studio-walkthrough.md)
0 commit comments