Pergunta

É possível tornar os recursos do SharePoint 2013 acessíveis via Internet usando API de REST?Digamos que eu quero fazer coalhada com uma lista de fora do SharePoint.Como podemos gerenciar credenciais para esta situação?Eu vi alguns sites (Yammer) usa o SSO redirecionando os usuários ao site da empresa e recebemos credenciais de lá.Podemos usar a mesma abordagem com a API de descanso para credenciais?Se sim, por favor, explique como?(Apenas a parte de credenciais)

Foi útil?

Solução

Assuming you have SharePoint on-premise and not 365.

Making a client-side only solution is easy if you use apps (SharePoint hosted), but you would have to deploy the app to SharePoint to be able to do cross-domain request.
Microsoft introduced two main solutions for querying cross-domain, SP.RequestExecutor.js for JSOM and /_api/SP.AppContextSite for REST, but as far as I know both of these require that you have an app hosted in a SharePoint environment. Here you don't need to think about authentication, as long as the app deploys that is handled for you.
If you have a stand-alone web site and you want client-side only communication with SharePoint I'm afraid that OOTB this is not possible. I can think of some solutions, as you can enable cross-domain, get access token for OAuth (might be 365 only) server-side or make your own service on SharePoint which supports CORS or JSONP - but this would be far from OOTB.

If you instead do the communication server-side everything will be much easier. I suggest you try making a Provider-hosted app, you will find this option in Visual Studio when creating apps for SharePoint. Then you set up High trust (S2S) which will let your app use CSOM to communiate with your on-premise SharePoint, authenticated as a user.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a sharepoint.stackexchange
scroll top