У меня есть сайт ASP.NET с открытым доступом, который не имеет аутентификации/авторизации. Это строго внешний сайт, который имеет информацию для анонимных пользователей. Я пытаюсь вызвать данные списка/библиотеки на защищенном сайте SP2013 и отображать элементы списка/библиотеки на сайте ASP.NET. Веб-приложение SP2013 находится на том же сервере и домене, что и сайт ASP.NET, и оба сайта работают под одним и тем же экземпляром IIS.
Из того, что я понимаю, мне нужно использовать междоменную библиотеку для этого, так как я хочу использовать код на стороне клиента (например, JavaScript/JQuery) с использованием анонимного пользователя. Я признаю, что использование объектной модели на стороне сервера - это еще один подход, и я использую С# для определенных функций. Во всяком случае, у меня возникают проблемы, когда SP.RequestExecutor говорит, что у меня нет URL-адреса веб-приложения. Я изо всех сил пытаюсь найти документацию о том, как это сделать. И проблема заключается также в том, что я действительно не хочу иметь appweburl и hosturl в строке запроса (если это возможно). Если есть еще один способ сделать это, я открыт для него. Я просто хочу использовать API REST и выполнять JS-код, используя сервисную учетную запись (теоретически).
Вы используете правильный подход с использованием кода на стороне клиента, однако есть дополнительные шаги, требуемые из-за модели безопасности SharePoint 2013. То, что вы создаете, рассматривается SharePoint как внешнее размещение приложения SharePoint. Приложение не может аутентифицироваться на SharePoint 2013 анонимно; он должен иметь идентификатор, которому SharePoint может назначать разрешения.
Для доступа к любому списку на "защищенном сайте SP2013" ваш код должен будет предоставить приложение (которое будет находиться в URL-адресе приложения), с помощью которого SharePoint может обменивать маркеры безопасности. У вас есть возможность использовать Azure в качестве поставщика контроля доступа или создания доверия STS с вашим приложением. После того, как он настроен, для приложения потребуется предоставить разрешения, требуемые ему (в этом случае доступ для чтения к списку) лицом, устанавливающим его в SharePoint, и его может установить только тот, кто обладает, по крайней мере, уровнем разрешений на список, который требуется для приложения.
Для пошагового пошагового руководства по модели безопасности я рекомендую книгу Скотта Хиллера о разработке приложений SharePoint 2013. Разработка приложений для Microsoft SharePoint 2013 (ссылка для разработчиков).