0

使用 MS PowerApps 我怎样才能使用户可以创建记录,但只能查看/编辑/删除他们自己创建的记录,即看不到其他用户创建的任何记录。

此外,这可以基于组吗?那么属于同一组的两个用户可以查看/编辑/删除同一组中的用户创建的记录吗?

没有很多关于此的文档,我找到的唯一文档指定了用户对实体的访问权限,但我需要比这更精细的访问权限。

4

3 回答 3

0

它不取决于您的数据源吗?我正在使用 SharePoint 列表,并且已经能够成功地将 BrowseGallery 过滤器更改为仅显示当前用户创建的列表项。

  1. Screen.OnVisible = UpdateContext({UserEmail: User().Email})
  2. 然后我更改了 BrowseGallery.Items 以包含Author.Email = UserEmail的过滤器(是的,我们必须使用 Author 而不是 CreatedBy)
于 2018-03-12T23:10:52.383 回答
0

我创建了一个假期应用程序,它使用 SharePoint 作为数据源并允许用户创建假期请求,但只能查看\编辑他们创建的待处理请求和直接下属的请求。它的创建方式:

  1. 主页有带有视图标签的按钮:新请求、我的请求和直接报告请求

  2. 每个按钮执行两个操作: 1. 为选项设置一个可变数值。2 导航到列表视图

  3. 列表页面的元素根据变量值变化: 排序过滤器:"If(variable=1,SortByColumns(Filter(VacationRequests, Author.DisplayName = User().FullName),"ID", If(SortDescending1, Descending, Ascending)), variable=2,SortByColumns(Filter(VacationRequests, Vacation_x0020_Request_x0020_Sta = "approve"),"ID", If(SortDescending1, Descending, Ascending)), variable=3,SortByColumns(Filter(VacationRequests, Approving_x0020_Manager.DisplayName = User().FullName),"ID", If(SortDescending1, Descending, Ascending)))"

标签根据值更改:

"If(variable=1,"My Requests",variable=2,"Approved Vacations",variable=3,"Direct Reports")"; background fill color of top rectangle also change based on values: "If(variable=1,RGBA(246, 88, 16, 1),variable=2,RGBA(99, 139, 44, 1),variable=3,RGBA(0, 121, 187, 1))";

最终结果是用户只能查看\编辑\删除他们可以看到的视图\过滤器中的项目。

于 2017-09-08T18:29:34.077 回答
0

今天不支持此功能。我们正在考虑这样的场景。请将您的请求添加到https://aka.ms/powerapps-ideas

根据您使用的后端,您可以通过确保后端返回属于当前用户的行并在用户没有权限时拒绝编辑来解决此限制。但是,这可能非常复杂,并且对于 SharePoint 等服务来说是不可能的。

于 2017-01-05T20:06:28.673 回答