3

This may sound a little bit very basic but I would like to know what Sharepoint Provider app is? Is it a component that resides in any server and gets its data from SharePoint? or is it a component that do not use SharePoint at all or if it uses what and how?

EDIT:- Wanted to check if a SharePoint app can work without SharePoint?

Any help in understanding it would be much appreciated.

Thanks in advance.

6

Here's some links that might help you understand better and get started: https://msdn.microsoft.com/en-us/library/office/fp142381.aspx and https://msdn.microsoft.com/EN-US/library/office/fp179923.aspx

And to better answer the question, provider hosted apps are applications that run in a server that is external to SharePoint's. It has its own infrastructure and the Provider is responsible for keeping it running. They allow you to use Server Side code and uses the .NET CSOM (not the Microsoft.SharePoint.dll [technically you can host a Provider hosted app in the same server as sharepoint with an app pool that has the security requirements to access SharePoint's server side components {but you should probably avoid doing this}]

Compared to SharePoint Hosted Apps, they are much more powerful as they can leverage resources the a Client-Side only app simply cannot use.

In an on premises environment, you also have the alternative of developing High Trust Provider Hosted Apps, this model allows the App to tell SharePoint WHO the app is acting as and can effectively Impersonate users and do things that the app or the user running the app does not have permission to do (thus the name High Trust).

A Provider Hosted app can still have it's SharePoint Hosted counterpart, earning itself an AppWeb and running client side code that has support from SharePoint like the ListView Controls and owning content that are "isolated" from the rest of the site collection.

Hope I've described this clearly, feel free to point out htings that might've come out confusing.

  • Hi Thanks for the detailed explanation. I wanted to check one more thing. The term you used is "applications that run in a server that is external to SharePoint's" would it mean that if I have a non sharepoint environment still I can use my app? and will it mean that the app that we have will have its own site and it will work as an independent app which doesn't need sharepoint in any way? – Sree Kuttan Feb 9 '15 at 7:24
  • 1
    I could've sworn I replied to this. The application runs in a server that isn't SharePoint's. It can be running on an apache, in a Linux environment, in php, wherever you want. It can get its own site as part of the deployment, and that site, in this case, is inside SharePoint's content database. Your app has full control on it, but needs to make remote calls the access the information there. – Choggo Feb 11 '15 at 11:37
  • Hi , could you please give me an example or link telling how can one impersonate a USER in high trust App. – Godwin Nov 26 '15 at 16:14
  • 1
    @Godwin Try: msdn.microsoft.com/EN-US/library/office/fp179901.aspx and msdn.microsoft.com/EN-US/library/office/dn762439.aspx also: dotnetcurry.com/sharepoint/1132/sharepoint-high-trust-apps and where it says this.LogonUserIdentity, provide a different user login. – Choggo Nov 26 '15 at 19:47
3

Provider-hosted apps

Provider-hosted apps for SharePoint include components that are deployed and hosted outside the SharePoint farm. They are installed to the host web, but their remote components are hosted on another server.

Provider-hosted app architecture

Choose patterns for developing and hosting your app for SharePoint

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.