cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Oskarkuus
Post Prodigy
Post Prodigy

Explain Datasources - Common Data Services and other datasources?

Hey

 

I need some help to explain how datasoruces in powerapps works.

I have so far only used sharepoint lists as datasources for my apps.

 

I have tho started to be a bit annoyed over the fact that i need to give a person read and write permissions to the list and that is not 100% good in all situations... even tho it is not very likely the user will find the list....

 

So what other options are there?

What is common data services... i have just breifly tried it out and cant wrap my head around it. How does it work... it seems like all data from all my future common data service apps would just land in a big pile.... and there is no way to filter out the data and remove it. just a mess for some weird reason... i dont get it 🙂

 

what other options do i have.... using an excel in my onedrive as datasource.... but then the user still needs access to read/write i guess....

what else are "shareable connections" so the user dont need access to the datasource, rather using the app gives that access and the app fixes the reading/writing to the datasource.

1 ACCEPTED SOLUTION

Accepted Solutions
Pstork1
Dual Super User III
Dual Super User III

1) Some people have one production and multiple developer environments.  Others groups apps by environments.  There is no one right way to do it.

2) Yes you can export apps from one environment and import into another

3) Again, the key is to make meaningful Entities to hold the data.  Then you can share the data between different apps. Data that is unique to an App will have its own Entities.  That way the data is kept seperate.

4) Downside to CDS is the premium licensing it requires. Upside is that a lot of entities are pre-created making using data easier.  It also lets you right apps that leverage existing data in Dynamics if you use Dynamics apps like CRM

5) that's true, and that's why data governance is important.  But that's no different than sharing a SQL server.

6) Depending on licensing you can create new environments.  But you can't change the existing default environment.



-------------------------------------------------------------------------
If I have answered your question, please mark your post as Solved.
If you like my response, please give it a Thumbs Up.

View solution in original post

5 REPLIES 5
Pstork1
Dual Super User III
Dual Super User III

1) Unless the connector is built to use a connection account, like SQL, PowerApps always requires that users have permissions to accomplish whatever the App accomplishes in the backend data source. PowerApps is for building a UI, not for enforcing permissions. SharePoint is the common model, not the exception.

2) Common Data Services - CDS is an Entity based relational database in the cloud.  If you are a Dynamics user then CDS is where the data used by your Dynamics application is stored. PowerApps can access that data or you can create your own Entites and Data in CDS.

3) As I mentioned SQL uses a connection account to the actual database, so the user will get whatever permissions that account has to the SQL database, but the user doesn't need any actual permissions to the data.  The downside of this is that the user gets the same permissions as every other user when going through the connection. Using SharePoint the user can only view data if they have view rights and edit data if they have edit rights.  They get the same rights in the app that they have on the list. In SQL they get whatever permissions are available to the connection account, no matter what permissions they have in SQL.



-------------------------------------------------------------------------
If I have answered your question, please mark your post as Solved.
If you like my response, please give it a Thumbs Up.

Great thanks.

 

But if i would start using CDS in my now only enviroment....

Then i start testing this out and create one or five apps... push in lots of test data into my database.

 

1. How to know what data is connected to each app?

2. How to delete a few test rows in one app that is stored in CDS?

3. How to find and collect data from one app when i need to manage/delete or move it?

 

When i build an app today using SP lists, i usualy have something like this setup.

1. SP list as datasource, give all users read and write permissions.

2. Give all users permission to use the app (share app)

3. Build in-app permission functions to hide/show or activate/inactivate controlls based on who the user is.

 

But if an user would find the SP list somehow... they would have full access to the data and it would be exposed...

 

Pstork1
Dual Super User III
Dual Super User III

  1. Data isn't really stored in rows.  It is stored as records in an entity.  You can look at a connector and see which Entities you are using. But there is no seperation inside the entity from one app to another.  That's one of the reasons to use Entites, have differnt apps that share data.
  2. As I said Data is shared, so deleting it for one deletes it for all.
  3. See 1 & 2

I understand the complaint about PowerApps not being a security layer. Its a common complaint.  But its just not the way PowerApps is designed and I don't see that changing.



-------------------------------------------------------------------------
If I have answered your question, please mark your post as Solved.
If you like my response, please give it a Thumbs Up.

Aha, interesting.... im slowly starting to get it (i think).

 

Just a few questions more 🙂

 

1. Currently i am the only one in my tenant working with Powerapps. I have about 8 apps thare are regulary used by other users. I have more or less 20 other apps that are not used, test-apps, old projects etc. My tenant only have enviroment setup, so all apps are in one enviroment.

What would your recommendation be regarding enviroments and starting to use CDS... create one enviroment for each "app" or app-project-area-theme.... keep apps that are touching the same subject in one enviroment?

2. Can i move apps between enviroments?

3. What are the downsides of keeping one enviroment and lots of different apps using CDS and after a few years there are tons of data spread out in the CDS... feels like it could end up with a big mess....

4. Is there more upsides by using CDS over separated datasources?

one upside is that data can be shared between apps and have pre-built forms and rules that can be used in all power-services in MS/O365...

5. What if i stay with my 1 enviroment. suddenly i have other ppl in my tenant starting to work with powerapps... since we only have one enviroment they would end up in the enviroment that i am using.... then they would start using the same CDS as i might be using.

6. Can i create a new enviroment and set it as the default enviroment?

 

 

Pstork1
Dual Super User III
Dual Super User III

1) Some people have one production and multiple developer environments.  Others groups apps by environments.  There is no one right way to do it.

2) Yes you can export apps from one environment and import into another

3) Again, the key is to make meaningful Entities to hold the data.  Then you can share the data between different apps. Data that is unique to an App will have its own Entities.  That way the data is kept seperate.

4) Downside to CDS is the premium licensing it requires. Upside is that a lot of entities are pre-created making using data easier.  It also lets you right apps that leverage existing data in Dynamics if you use Dynamics apps like CRM

5) that's true, and that's why data governance is important.  But that's no different than sharing a SQL server.

6) Depending on licensing you can create new environments.  But you can't change the existing default environment.



-------------------------------------------------------------------------
If I have answered your question, please mark your post as Solved.
If you like my response, please give it a Thumbs Up.

View solution in original post

Helpful resources

Announcements
PA User Group

Welcome to the User Group Public Preview

Check out new user group experience and if you are a leader please create your group

MBAS Attendee Badge

Claim Your Badge & Digital Swag!

Check out how to claim yours today!

secondImage

Are Your Ready?

Test your skills now with the Cloud Skill Challenge.

Top Solution Authors
Top Kudoed Authors
Users online (56,173)