cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
NigelP
Level 8

IS it possible for a user to edit a list via powerapps but not update the list natively

Hi

 

Is it possible to allow a group of users to update a SharePoint  list using powerapps, but not update the SHarePoint list by navigating to the list and updating it.

 

Thanks

 

Nigel

1 ACCEPTED SOLUTION

Accepted Solutions
Highlighted
skylitedave
Level 10

Re: IS it possible for a user to edit a list via powerapps but not update the list natively

Update

 

It IS possible.  You can embed a flow into a PowerApp, then you need to call another workflow within that embedded flow.  The flow you call will operate under the credentials of the author of the workflow you call NOT the current user.  In this way, a user can write to a list they do not have access to using the embedded workflow.  Note the "created by" will be the author of the Flow you called within that embedded flow.  The AUTHOR of that flow you call ( the Flow you use to write to the restricted list) should have edit privledges to the resticted list.

9 REPLIES 9
Super User
Super User

Re: IS it possible for a user to edit a list via powerapps but not update the list natively

Hi NigelP,

 

I haven't come across a reliable method to do this yet.  SharePoint is by it's nature "User interactive" - in order for users to have access to a list, they need acces to it through SharePoint.  If they have access to it, they can browse to it and exercise that access via a browser. 

 

If you need to force users to interact with your data only through PowerApps, then currently the best method (I'm aware of) is to use a non-interactive source like SQL or the CDS.

 

This does seem to be a common question though, so it might be worth upvoting an idea if you can find an existing one, or creating it on the ideas forum.  Something like the ability to set List access methods for user roles or something Smiley Happy

 

 

Kind regards,

 

RT

Community Support Team
Community Support Team

Re: IS it possible for a user to edit a list via powerapps but not update the list natively

Hi @NigelP,

 

Could you please share a bit more about your scenario?

Do you mean that the other users don't have the edit permission to the SP list? Could the other users only update the SP list via the PowerApps app?

 

I suppose that the group of users don't have edit permission to the SP list, and you want to them to edit the SP list via the PowerApps app, is it true?

 

If the group of users don't have edit permission to the SP list (could not edit the list natively) and you want them to edit the SP list via the PowerApps app, I afraid that there is no way to achieve your needs in PowerApps currently.

 

When the group of users run the shared app (shared from the creator/owner), the app would ask them to provide their own credentials to the SP list for running the app. If they don't have edit permission to the SP list, they could not edit the SP list via the PowerApps app.

 

Best regards,

Kris

Community Support Team _ Kris Dai
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
NigelP
Level 8

Re: IS it possible for a user to edit a list via powerapps but not update the list natively

Hi @Anonymous

 

The problem is that some users are “going around the back” of PowerApps and are trying to edit the SharePoint list directly, rather than editing the SharePoint list using PowerApps with all of the safeguards and constraints that PowerApps brings.

 

I hope this explains the situation.  I want to prevent users from editing the SharePoint list directly, so they only edit the SharePoint list using PowerApps.

 

Regards

 

Nigel

 

Community Support Team
Community Support Team

Re: IS it possible for a user to edit a list via powerapps but not update the list natively

Hi @NigelP,

 

If you want to prevent users from editing the SP list directly and only edit the SP list using PowerApps app, I afraid that there is no way to achieve your needs in PowerApps currently.

 

If you would like this feature to be added in PowerApps, please submit an idea to PowerApps Ideas Forum:

https://powerusers.microsoft.com/t5/PowerApps-Ideas/idb-p/PowerAppsIdeas

 

Best regards,

Kris

Community Support Team _ Kris Dai
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
NigelP
Level 8

Re: IS it possible for a user to edit a list via powerapps but not update the list natively

Hi @Anonymous

 

That sort of defeats the role of having PowerApps then does it not.

 

You need users to use PowerApps to update SharePoint lists so that all of the Business rules are adhered to.

 

Otherwise people coming in "under the covers" and editting the list directly, could result in the list(s) becoming corrupt and unuseable.

 

I think this is a serious security flaw in the PowerApps system.

 

Perhaps its time PowerApps supported impersonation so that a differnt account can be used when updating SharePoint lists using PowerApps.

 

Regards

 

Nigel

NigelP
Level 8

Re: IS it possible for a user to edit a list via powerapps but not update the list natively

Hi @Anonymous

 

I have a very unhappy customer because users are going around the back of PowerApps  and edtting SharePoint lists rather than using.PowerApps to edit the lists.  In their eyes this is a very serious security flaw in PowerApps which needs to be fixed as soon as possible.

 

A possible way to resolve the issue is for the Data Sources to run under a specific username which has edit access to the SharePoint lists,  ordinary users would not have edit access to the SharePoint lists..  Is this possible or will the data sources always run under the context of the user ?

 

Thanking you in advance.

 

Nigel

 

Nigel

Super User
Super User

Re: IS it possible for a user to edit a list via powerapps but not update the list natively

Hi Nigel,

 

I can't answer for Microsoft about their roadmap for the connector framework, but in my experience they would only consider ideas that are not on their roadmap if they receive enough votes on uservoice.  That said - if you consider the overall construct that runs through Power BI, PowerApps, Flow and D365, I think it is unlikely impersonation would be "built in" to the official SPO published connector anytime soon - I could be wrong, but that's my opinion.

 

That doesn't mean it's not possible to build your own Smiley Happy

 

You could for example, build your own custom connector for the SharePoint REST API and somehow hard code some form of credential into that process, or build an Azure function webapi to do your SPO calls for you - these approaches might work, but it would require some effort and you would still be panelbeating something to behave in a way it's not really designed to behave, which tends to introduce risk.  

 

In the meantime, you should perhaps consider "Fit for purpose" vs "Fit for use".  Based on your requirements, I would suggest to you that SharePoint, while "Fit for use" in terms of storing data for your app, is not fit for your purpose in terms of the application architecture you're looking for.  SharePoint is just one of many sources your app could use - including Excel - would you be happy using Excel for your app?  Probably not - just because it's possible, doesn't mean it's a good match to your requirement - the same goes for SharePoint.


The security you see as a flaw I see as fit for purpose as far as SharePoint's multiple capabilities are concerned - I would go so far as to say the flaw is in your application architecture design alignment, not the SharePoint access model or PowerApps connector framework, and here's why;

 

 

SharePoint is not a relational database from a user perspective - it's a productivity tool like many of the others that PowerApps can connect to and interact with through a REST API.  While you can build PowerApps that interact with SharePoint very easily, that doesn't mean it's perfect for every application use case...  When you consider the complexities of DLP, access control, foreign key constraints, execution planning and more, when you move into a mode of building architected applications (as opposed to productivity citizen dev), your data source may need to move with you.

 

My 10c opinion - What you really should be doing to meet your requirement is use a fit for purpose data store for your source data, like SQL or the CDS, instead of Lists in SharePoint.

 

This is why I don't think you will have much luck (I stand to be corrected of course) convincing the PowerApps team to build in a potentially risky (and high overhead) impersonation capability for a published connector that potentially undermines the security of the endpoint, especially when the capability exists for you to build your own custom connectors.  Nothing stops you from building your own connector, but then you take on the risks of your own design.

 

Lastly, I'd recommend again that you load an idea on the ideas forum to drive your requirement - if you get enough votes I'm certain the dev team will at least look at it, (I've had great responses to even the oddest requests - they might not always implement them, but they will look at and consider them if hey have enough votes) - but to save you frustration in the meantime I'd really urge you to take a look at the CDS or a database like Azure SQL or something similar for your app. 

 

If you decide to build your own custom connector, it's a great learning experience, but not without it's own frustrations and complexities - I wish you the best of luck whichever route you decide Smiley Happy

 

Kind regards

 

RT

NigelP
Level 8

Re: IS it possible for a user to edit a list via powerapps but not update the list natively

Hi @RusselThomas

 

Thank you for your well argued detailed reply

 

The problem with CDS and SQL is that they cost more money.  My customer has already paid for Office 365 (and hence SharePoint Online) licences.

 

Why should they pay more for a PowerApps P2 licence for CDS and an undefined amount of money for SQL Server (or Azure SQL Server) - the cost of which will depend upon how much it is used.  Then there is the higher maintenance costs of SQL Server and CDS.

 

All I am asking for is a way to prevent users updating lists directly, when they should be using PowerApps.

 

This is already available for dynamics 365 and PowerApps with CDS (https://docs.microsoft.com/en-us/powerapps/administrator/database-security), so why not PowerApps with SharePoint lists?

 

Regards

 

Nigel

Highlighted
skylitedave
Level 10

Re: IS it possible for a user to edit a list via powerapps but not update the list natively

Update

 

It IS possible.  You can embed a flow into a PowerApp, then you need to call another workflow within that embedded flow.  The flow you call will operate under the credentials of the author of the workflow you call NOT the current user.  In this way, a user can write to a list they do not have access to using the embedded workflow.  Note the "created by" will be the author of the Flow you called within that embedded flow.  The AUTHOR of that flow you call ( the Flow you use to write to the restricted list) should have edit privledges to the resticted list.

Helpful resources

Announcements
firstImage

PowerApps Monthly Community Call!

Join us next Wednesday for our Demo Extravaganza, October 16, 2019 8am PDT.

firstImage

Microsoft Business Applications Virtual Launch Event

Join us for an in-depth look at the new innovations across Dynamics 365 and the Microsoft Power Platform.

firstImage

Watch Sessions On Demand!

Continue your learning in our online communities.

Power Platform 2019 release wave 2 plan

Power Platform 2019 release wave 2 plan

Features releasing from October 2019 through March 2020

FirstImage

Power Platform World Tour

Coming to a city near you

thirdimage

PowerApps Community User Group Member Badge

Fill out a quick form to claim your user group badge now!

FourthImage

Join PowerApps User Group!!

Connect, share, and learn with your peers year-round

SecondImage

Power Platform Summit North America

Register by September 5 to save $200

Top Kudoed Authors
Users Online
Currently online: 397 members 4,845 guests
Please welcome our newest community members: