cancel
Showing results for 
Search instead for 
Did you mean: 

Importing Managed Solutions with Connections

It would be really helpful to be able to able import a solution that contains a canvas app with SQL Server or some other connections. Right now, one has to import an unmanaged solution and then manually go in to the app and add the connections from the target environment. I have attached the error you get if you try to import such solution. If you have a managed solution, there is no way to fix that error. 

 

It would be nice if it worked like importing a package where it asks you to connect your resources during your solution import. 

 

Currently, with this limitation, one cannot sell/distribute their solutions with such apps because it requires the solution to be unmanaged as you have to manually edit the app. This is bad because you do not want unmanaged solutions for production. 

Status: Completed

Handling of connections such as SQL are now supported. https://powerapps.microsoft.com/en-us/blog/announcing-the-new-solution-import-experience-with-connec...

 

There are also other enhancements coming soon to handle the data source parameters that need to change across environments. 

Comments
Super User II

Would be great to have the ability to configure with a service account (or SPN) so users wouldn't have to consent for those connectors using the service accounts. In other words, users would only need to consent to connectors using their own account.

Frequent Visitor

THIS!

THIS!
THIS!

Power Apps
Status changed to: Started

This will be available shortly. You can see a demo of what's coming in this Microsoft Build session (11:20). https://mybuild.microsoft.com/sessions/0cd53db8-0688-4e4f-9926-cd4a56c12070?source=sessions

 

Also note you can edit and re-publish apps if they're in a managed solution. This validation was lifted a while back. 

Continued Contributor

@caburk Thank you for you comment, and I am happy to see PowerApps team is working on this. However, I do not understand the decision to lift the validation. Our team wants to create a canvas and sell it to our customers and we do not want them to edit or see the code logic etc. But with the validation lifted, we cannot sell a solution that requires canvas app. There's no protection for our IP. 

 

Should I start a new idea for this? 

Advocate III

@caburk I've watch the ALM video and I don't see any reference to solving this problem with connections between environments. Would you point me at the specific time in the video please?

Power Apps

@ZabiBabar that validation was temporary to prevent breakage. Managed != cannot edit. Technically speaking, Canvas apps are client applications and as is such with client code on any platform - it gets exposed when you hit F12. However, as a product we can make it more difficult to copy and export client logic like formulas.

Locking the ability to edit is handled in the platform using managed properties. That's on the backlog for canvas apps and you'll be able to lock things so that only you, the application publisher, have permission to make edits. 

 

@DavePotts_BritE which connector(s) are being used in your app? The demo shows how to maintain separation of connections. Connections are simply the authentication and vary depending on the connector. For example, you can point to two distinct SQL DB's with different credentials.

 

The part we're working on (which is not in the demo) is input parameters required by a given connector. Examples are the CDS environment URL, a SharePoint site/list, etc. This will serve use cases such as an app connecting to different CDS environment(s) than the app is deployed in or modifying the SharePoint site/list as you migrate your app between dev/test/prod environments. 

Continued Contributor

@caburk  That's great to hear that it is in the backlog. I had one more question regarding this validation. Currently, if we have a canvas app inside managed solutions and then we publish that app to appSource, can the people who download the app, edit the canvas app? Thank you for your help!

Power Apps

@ZabiBabar yes they can be edited currently, but supporting managed properties is in our near-term backlog. For you, what would be the ideal behavior? For example, blocking the ability to re-publish the app? Blocking the ability to open the app designer entirely so that no one can see how it's built or make any modification? Blocking the ability to edit component libraries, but allowing the app to be edited?

Continued Contributor

@caburk 

My company's goal is to protect our IP. We would like to sell the product but we do not want the person who buys it to sell it to others. It would be nice if they are not able to edit parts of the app - but that is not a requirements - the primary requirement is for it to function like ISV software - so we can resell it.
 
So, If we stop them for re-publishing only and let them open the designer, they can create a new app by copying the logic and then publish the new app. 
 
Blocking the ability to edit components and not the app itself is nice but it makes developing power apps really difficult if we have to protect our IP by putting everything inside components. We would have to end up creating components that are not really re-usable and if they are they would have to have tons of inputs. 
 
It feels like the only way to protect our IP is by "blocking the ability to re-publish the app" and by"locking the ability to open the app designer entirely so that no one can see how it's built or make any modification".
Regular Visitor

Hi, how can we share a canvas app deployed as part of a managed solution with just flows and Canvas apps?