Как обеспечить безопасность Windows SharePoint Services

Служба Windows SharePoint Services, доступная пользователям Windows Server 2003 для бесплатной загрузки, предоставляет богатые функциональные возможности для организации совместной работы сотрудников. В этих возможностях особенно заинтересованы предприятия малого и среднего бизнеса, которым нужны недорогие средства для решения подобных задач. Предприятия SMB часто используют приложения совместной работы для организации общего доступа к данным, обмена информацией и отслеживания хода выполнения проектов. Очень часто мысль о разграничении и обеспечении безопасности совместной работы приходит менеджерам и администраторам систем с большим запозданием, особенно если ответственные сотрудники лишь поверхностно знакомы со службой Windows SharePoint Services.

Видимо, пришло время научиться ограничивать доступ к некоторым разделам информационных систем, построенных на Windows SharePoint Services. Рассмотрим пример предоставления прав доступа к разделам, содержащим конфиденциальную документацию по проектам предприятия. Неплохо было бы также разрешить доступ к календарным планам исполнения некоторых проектов только тем сотрудникам, которые так или иначе в этих проектах участвуют. Windows SharePoint Services имеет встроенные средства разграничения прав доступа, позволяющие детально назначить разрешения и способ доступа к информационным ресурсам. В этой статье речь пойдет о базовых принципах управления доступом в Windows SharePoint Services и некоторых приемах, которые могут значительно облегчить работу.

Основные концепции

Управление доступом в Windows SharePoint Services основывается на учетных записях пользователей (учетные записи пользователей домена Active Directory или собственные учетные записи в Windows SharePoint Services), для которых определяется набор прав доступа к документам и спискам Windows SharePoint Services. Как правило, настройка и применение прав доступа для учетных записей AD эффективнее, но в некоторых случаях можно использовать только собственные учетные записи Windows SharePoint Services, например если корпоративная сеть не задействует домен AD. Конечно, реализация разделения прав с использованием учетных записей пользователей в домене AD имеет значительные преимущества, например, можно управлять разрешениями доступа к ресурсам для групп пользователей, именно поэтому в данной статье основное внимание будет уделено назначению разрешений для пользователей домена AD. При добавлении, или, что то же самое, регистрации пользователя или группы в Windows SharePoint Services, необходимо сделать этого пользователя (или группу) членом группы сайта или группы для нескольких сайтов. Основное отличие группы для нескольких сайтов от группы сайта заключается в том, что группа для нескольких сайтов позволяет предоставить доступ к любому сайту из набора сайтов Windows SharePoint Services, в то время как группа сайта позволяет предоставлять разрешения доступа только к тому сайту, в котором она создана. После регистрации пользователей в группах SharePoint вы можете назначать доступ к ресурсам на уровне сайта. Уместно напомнить, что сайтом SharePoint называется группа связанных Web-страниц SharePoint. Таким образом, пользователям назначаются необходимые разрешения доступа ко всем библиотекам и спискам на уровне сайтов или же непосредственно к библиотекам и спискам. Основные разрешения доступа к библиотекам и спискам SharePoint, которые можно предоставить пользователю, — Add, Edit, Delete, View Items. Дополнительные разрешения — Manage Site Groups, Usage Data, Cancel Check-In и Personalize Views — позволяют управлять доступом к самому сайту.

Группы упрощают администрирование

Как правило, администраторы, впервые столкнувшиеся с Windows SharePoint Services для управления разрешениями пользователей к сайтам SharePoint, просто добавляют учетные записи этих пользователей в соответствующие сайты. Более правильным подходом все же является управление доступом на уровне групп домена AD, а не индивидуальных пользователей Windows. Такой подход позволяет, например, предоставить доступ к ресурсу для всех сотрудников определенного подразделения, задействованного в проекте. Это значительно проще, чем добавлять множество записей индивидуальных пользователей и назначать разрешения каждому из них по отдельности. Затем, когда какой-нибудь пользователь увольняется из организации или переходит на работу в другое подразделение, достаточно просто внести соответствующие изменения в группы AD, и эти изменения автоматически станут известны SharePoint Services — администратору не потребуется выполнять для данного пользователя множество дополнительных настроек в SharePoint.

Чтобы предоставить доступ к сайту SharePoint, следует зарегистрироваться в системе с разрешениями локального администратора и открыть нужный сайт в браузере Windows. В строке меню домашней страницы сайта требуется щелкнуть на ссылке Site Settings, затем Site Administrator. На странице Site Administrator нужно перейти по ссылке Manage Users, на странице Manage Users щелкнуть на Add Users и ввести имя группы Windows (вы можете ввести сразу список групп, разделителем списка будет точка с запятой). Выбранные группы Windows появятся на странице в разделе Domain Groups, как показано на экране 1.

Экран 1. Управление группами и пользователями сайта

Когда впервые выполняется добавление группы Windows в Windows Share Point Services, необходимо выбрать хотя бы один сайт SharePoint или группу для нескольких сайтов, к которой будет принадлежать данная группа Windows. Группы сайта — это единица управления, существующая исключительно в Windows SharePoint Services. Каждая группа сайта должна иметь по крайней мере разрешение на просмотр (View) ресурсов сайта. Для просмотра списка групп, заданных для данного сайта SharePoint, следует вернуться на страницу Site Administration и щелкнуть на ссылке Manage Site Groups. При создании сайта Windows SharePoint Services автоматически формирует следующие стандартные группы сайта: Guest, Reader, Contributor, Web Designer и Administrator. Можно просмотреть разрешения доступа, определенные для каждой группы. Для этого необходимо щелкнуть на имени группы, при этом происходит переход на страницу Members, со списком членов группы, с которой по ссылке Edit Site Group Permissions открывается страница разрешений группы. Например, группа Contributor предоставляет своим членам разрешения Add, Edit, Delete, View Items, Browse Directories, View Pages и все четыре персональных разрешения (т. е. Manage Personal Views, Add/Remove Private Web Parts, Update Personal Web Parts и Create Cross-Site Groups). При добавлении новой группы сайта все члены группы, являющиеся пользователями домена Windows, автоматически получают доступ к ресурсам данного сайта SharePoint. Как показано на экране 2, Windows-группа marketingstaff является членом группы сайта Contributors. Благодаря этому все члены группы marketingstaff обладают всеми разрешениями, определенными для группы сайта Contributors, так что в управлении индивидуальными разрешениями членов данной группы Windows необходимости нет. Если группа Windows будет включена в несколько групп сайта, члены этой группы будут обладать разрешениями, которые являются суммой разрешений указанных групп сайта. Для управления разрешениями группы сайта и членством в ней следует перейти на страницу Manage Site Groups, щелкнуть имя группы сайта, а затем перейти на страницу Edit Site Group. На открывшейся странице имеется список членов группы сайта и возможность добавлять и удалять членов группы сайта. На этой же странице можно создать собственную группу сайта, которая может использоваться вместе со встроенными группами сайта.

Экран 2. Редактирование членства в группе сайта

Делим на части

По умолчанию Windows SharePoint Services использует модель управления доступом на уровне сайтов, а не на уровне индивидуальных объектов, при этом все ресурсы сайта SharePoint наследуют разрешения доступа, заданные на уровне сайта. При создании подсайта в рамках существующего главного сайта созданный подсайт по умолчанию наследует разрешения доступа к главному сайту, аналогично тому, как происходит наследование прав доступа к каталогам в файловой системе Windows. При создании подсайта в SharePoint по умолчанию предлагается параметр Use same permissions as parent site («Наследовать разрешения доступа родительского сайта»), при этом можно выбрать вариант Use unique permissions («Использовать собственные разрешения доступа»). Параметры наследования прав доступа могут быть изменены на странице Site Administration данного подсайта, для этого следует перейти по ссылке Manage permission inheritance и выбрать нужный вариант наследования. Следует заметить, что если подсайт наследует разрешения доступа от родительского сайта, то на странице управления подсайтом отсутствуют ссылки Manage Users и Manage Site Groups, поскольку в этом случае вы не можете управлять индивидуальными разрешениями доступа к подсайту. Управление доступом на уровне сайтов подходит для многих задач в случае небольших коллективов пользователей и простой модели доступа. Можно назначить для подсайтов и ресурсов разрешения доступа, отличные от прав доступа родительского сайта. Следует иметь в виду, что в таком случае данный подсайт или ресурс помечаются как Use unique permissions, и с этого момента изменения прав доступа к родительскому сайту — добавление пользователей, отзыв прав и т. п. — уже не будут оказывать влияния на доступ к данному подсайту или ресурсу.

Что следует сделать для того, чтобы задать уникальные разрешения доступа к определенному ресурсу SharePoint? Во-первых, требуется изменить настройки этого ресурса таким образом, чтобы прекратить наследование разрешений доступа сайта. Для просмотра разрешений доступа к ресурсу следует открыть ресурс сайта (т. е. список или библиотеку документов) и щелкнуть на ссылке Modify Settings and Columns. Например, можно открыть домашнюю страницу сайта, созданного на основе шаблона Team (шаблон сайта представляет собой предварительно настроенный для определенной цели сайт, для создания сайта на основе шаблона достаточно просто скопировать выбранный шаблон), щелкнуть на ссылке Events list и в открывшемся списке щелкнуть ссылку Modify Settings and Columns. Windows SharePoint Services открывает страницу Customize Events; щелкните по ссылке Change permissions for this link. Открывшаяся страница Change Permissions: Events, как показано на экране 3, содержит список пользователей и групп, обладающих разрешениями доступа к данному ресурсу, а также разрешения этих пользователей и групп. Изначально эти разрешения совпадают с общими разрешениями для всего сайта. Допустим, вы собираетесь создать группу сайта с именем Viewers и предоставить этой группе разрешение на просмотр View Items (это можно сделать на странице Site AdministrationManage Site Groups). После этого на странице Change Permissions: Events появится новый элемент, указывающий, что группа Viewers обладает разрешениями View Items. Для отключения наследования разрешений доступа от сайта к объекту достаточно просто выполнить какое-нибудь изменение разрешений доступа к ресурсу — добавить/удалить пользователя или группу, изменить разрешения доступа для пользователя/группы и т. п. При первом же изменении разрешений доступа Windows SharePoint Services удалит для данного ресурса наследование разрешений доступа от родительского сайта. Если необходимо создать разрешения доступа к ресурсу с нуля, следует просто удалить из списка доступа к ресурсу все встроенные группы. В этом случае доступ к ресурсу останется только у членов группы Administrators, значит, важно предварительно убедиться, что необходимые административные разрешения имеются. Затем следует добавить к ресурсу группы и пользователей Windows, группы сайта или группы для нескольких сайтов, которым будет предоставлен доступ к ресурсу. При этом, поскольку наследование разрешений доступа от родительского сайта разорвано, можно не опасаться, что к ресурсу получат доступ пользователи, обладающие доступом к остальной части сайта.

Экран 3. Редактирование резрешений при доступе к ресурсу SharePoint

От теории к практике

Теперь, когда мы познакомились с основными концепциями управления разрешениями доступа в Windows SharePoint Services, рассмотрим практическое приложение, которое требует применения другого подхода. Допустим, у нас имеется сайт SharePoint, содержащий совсем немного ресурсов. Этот сайт используется небольшим количеством участников проекта, которые должны обладать одинаковыми разрешениями на доступ к ресурсам сайта. Допустим, что потребовалось предоставить ограниченный доступ к библиотеке документов проекта и обеспечить возможность участия в дискуссиях (форумах) проекта более широкому кругу участников. При этом данная расширенная группа не должна иметь доступа к другим материалам проекта. Для реализации такой схемы создадим новую группу Windows, назовем ее ExtendedTeamAccess и добавим в нее учетные записи пользователей. Пока все просто, но вот первое затруднение. Невозможно просто предоставить группе ExtendedTeamAccess доступ к сайту, поскольку тогда группа получит доступ с разрешениями View («Просмотр») ко всему сайту, а это противоречит условию, что доступ предоставляется только к библиотеке и форуму. Вместе с тем предоставление индивидуальных прав доступа на уровне отдельных объектов потребует слишком значительных трудозатрат и усложнит управление доступом.

Для преодоления подобных затруднений существует группа сайта Guests. Как уже упоминалось ранее, при добавлении группы Windows к сайту необходимо включить добавляемую группу хотя бы в одну из групп сайта. Созданная по умолчанию группа Guests не обладает никакими разрешениями доступа к объектам сайта. Вы не можете редактировать членство в группе Guests — членство в этой группе автоматически поддерживает Windows SharePoint Services. Чтобы добавить группу ExtendedTeamAccess в группу сайта Guests, нужно выполнить изменение разрешений доступа к одному из тех ресурсов, которые предполагается предоставить членам новой группы. Например, можно предоставить группе ExtendedTeamAccess доступ к библиотеке документов. Когда вы это сделаете, будут сформированы соответствующие разрешения на доступ к ресурсу, а группа ExtendedTeamServices автоматически будет добавлена в группу сайта Guests. После этого вы можете предоставить группе Guests разрешение на доступ View Items к библиотеке документов проекта. Эту же процедуру следует повторить для форума проекта.

Рассмотрим еще один пример. Допустим, требуется настроить ограничение на доступ к календарю событий (Events calendar) таким образом, чтобы только руководители команд и менеджеры могли просматривать календарь. У нас уже имеется две группы домена AD — Team Leaders и Management. Откройте страницу Change Permissions: Events («Изменить доступ: события») и удалите имена созданных по умолчанию групп сайта. Щелкните Add Users и на странице Add Users: Events укажите имена Windows-групп Team Leaders и Management (разделенные символом точка с запятой). Укажите необходимые разрешения для добавленных групп — в данном случае View Items, как показано на экране 4. Щелкните Next, затем Finish. Теперь на странице Change Permissions: Events заголовок указывает Domain Groups и перечислены значения Team Leaders и Management, причем обе группы имеют разрешения доступа View Items.

Просто, надежно и безопасно

Защита доступа к Windows SharePoint Services оказывается достаточно простой, если разобраться, каким образом разрешения доступа уровня сайта и уровня ресурса используют группы Windows, сайты SharePoint и группы. Воспользуйтесь тем, что защита Windows SharePoint Services интегрирована с моделью безопасности Windows — это позволяет избежать необходимости выполнять повторно одну и ту же работу (например, добавлять к сайту SharePoint множество пользователей и настраивать для них разрешения доступа). Часто источником опечаток и ошибок является выполнение именно таких повторяющихся рутинных задач. Поскольку для управления доступом в Windows используются группы AD, можно будет задействовать существующие группы Windows и для управления доступом к ресурсам сайтов SharePoint. Предоставляйте уникальные разрешения на уровне доступа к ресурсу для более детального управления доступом к защищенным ресурсам с ограниченным доступом — это позволит сэкономить время для поддержки и совершенствования инфраструктуры Active Directory сети.


Рэнди Франклин Смит - Редактор Windows IT Pro и ведущий инструктор и разработчик курсов для программы по безопасности Windows NT/2000 института MIS Training. Его компания, Monterey Technology Group,занимается консалтингом в области информационной безопасности. Связаться с ним можно по адресу: rsmith@monterey techgroup.com