Обрезка безопасности в поисковой веб-службе

У меня есть веб-приложение, которое использует поисковую веб-службу SharePoint 2007 (http://localhost/_vti_bin/search.asmx). Моя область содержит несколько источников контента, все они содержат бизнес-данные (контент просматривается с помощью SQL-запросов во внешних базах данных). Мне нужен один из этих источников контента, чтобы предоставлять результаты с ограниченной безопасностью. Проще говоря, у меня есть две таблицы:

  • Таблица A с содержанием: NodeId, Title, Content
  • Таблица B с разрешениями: NodeId, имя пользователя

Теперь поисковый робот индексирует таблицу A без проблем. Однако моя проблема в том, что при выполнении поиска с помощью веб-службы запросов я не могу найти решение для обрезки результатов с точки зрения безопасности. Веб-служба используется с учетной записью службы, без олицетворения вошедшего в систему пользователя. Есть ли возможность каким-то образом передать имя пользователя объекту querypacket или любым другим способом, который бы проверил Таблицу B, имеет ли имя пользователя доступ к NodeId?

Поскольку я планирую перейти на SP2013, возможно, некоторые из вас также знают решение для этой версии Sharepoint, если в MOSS2007 этого нет?


person lukasz    schedule 19.04.2013    source источник


Ответы (1)


Есть несколько трех основных вариантов выполнения обрезки результатов поиска SharePoint с учетом требований безопасности. Они включают:

  1. ISecurityTrimmerPre - новое в SharePoint 2013. Позволяет добавлять дополнительные утверждения для пользователя перед выполнением поискового запроса.
  2. ISecurityTrimmerPost - также известный как ISecurityTrimmer2 в более ранних версиях SharePoint. Позволяет обрезать результаты поиска 1 к 1 после выполнения поискового запроса.
  3. Соединители индексирования Business Connectivity Services - позволяют предоставлять списки ACL поисковому индексатору при обходе источника контента.

Существует множество статей блога, в которых показано, как реализовать каждый вариант.

Кроме того, вот отличное видео сеанса SharePoint Conference 2012 по настраиваемой обрезке безопасности.

HTH

-Евджин

person Eugene Rosenfeld    schedule 22.08.2013