I have a tenant on SharePoint Online (the new 2013 version). In that tenant, I have a Project Online site collection. Project Online hosts a very nice OData endpoint at http://sampletenant.sharepoint.com/sites/pwa/_api/ProjectData. I can connect to this OData endpoint via Excel with no problems at all, and pull in whatever tables I would like to view.
On a SharePoint site in my tenant, I would like to create an External Content Type, instantiated as a SharePoint list, connected to one of the tables on the SharePoint list. I am following the steps in the following blog post, which is pretty clear: http://blogs.msdn.com/b/officeapps/archive/2012/10/24/using-an-odata-service-in-apps-for-sharepoint.aspx
- Using Visual Studio 2012, create a new project using the App for SharePoint 2013 template
- Add a Content Type for an External Data Source
- Specify the OData service URL
- Select the table you want to connect to
- Deploy and drink a Margarita
When doing so, Visual Studio connects just fine to the OData data source, and lets me select the table I want. However, when I deploy the app to my SharePoint Developer site and click on the list, I get the following error:
The remote server returned an error: (403) Forbidden.
Within my solution, the authentication mode is the default (PassThrough).
<Property Name="ODataServiceAuthenticationMode" Type="System.String">PassThrough</Property>
Why is SharePoint Online not passing my credentials on to the remote OData endpoint?