Ёмкое определение ещё одной сущности SharePoint носящей название Личные сайты (My Sites) можно найти в документе Компоненты логической архитектуры (SharePoint Server 2010)
Личные сайты — это особые сайты SharePoint, персонализированные для каждого пользователя. Создание личных сайтов включено по умолчанию как часть службы профилей пользователей, и каждый пользователь организации может создать свой уникальный личный сайт.
Как понятно из этого определения, перед развертыванием ещё одной общей службы, расширяющей функциональность фермы SharePoint – Службы профилей (User Profile Service) нам желательно уже иметь развернутое семейство сайтов для узлов Личных сайтов, чем мы и займёмся в данной части нашего цикла заметок об установке и базовой настройке SharePoint Server 2013 SP1
Описание архитектурных особенностей и полного порядка настройки выделенного Семейства сайтов для узлов Личных сайтов изложено на русском языке в документах:
- Обзор личных сайтов в SharePoint Server 2013
- Планирование личных сайтов в SharePoint Server 2013
- Настройка личных сайтов в SharePoint Server 2013
Для развертывания нового семейства сайтов для узлов Личных сайтов нам нужно выполнить цепочку действий аналогичную той, что уже была ранее описана в заметке Часть 3 – Создание семейства сайтов, а именно:
1. Создание управляемой учетной записи SharePoint (Managed Account)
2. Создание веб-приложения SharePoint (Web Application)
3. Выполнение базовых настроек веб-приложения
4. Создание семейства сайтов (Site collection)
5. Регистрация записи в DNS для Host Header корневого сайта семейства сайтов
6. Регистрация Service Principal Name (SPN) для Host Header корневого сайта семейства сайтов для обеспечения аутентификации Kerberos
7. Проверка доступности корневого сайта семейства сайтов
Поэтому, чтобы не повторяться с точки зрения демонстрации этих действий с использованием графического интерфейса SharePoint (через веб-узел Центра администрирования (ЦА)), в этот раз мы рассмотрим пример, того как все эти действия можно выполнить с помощью SharePoint 2013 Management Shell.
1. Создаем управляемую учетную запись
Эта учетная запись будет использоваться для запуска пула приложений (IIS Application Pool) с которым будет ассоциировано создаваемое в дальнейшем веб-приложение SharePoint (Web Application). Чтобы создать новую управляемую учетную запись в SharePoint 2013 Management Shell либо в Windows PowerShell предварительно подгрузив PSSnapin SharePoint, выполним:
Add-PSSnapin Microsoft.SharePoint.PowerShell $User = "KOM\s-KOM-AD01-SP-AP-MYS" $Pass = ConvertTo-SecureString "Pa$sW0Rd" -AsPlainText -Force $Cred = New-Object Management.Automation.PSCredential ($User, $Pass) New-SPManagedAccount -Credential $Cred
Результат создания учетной записи можно проверить в ЦА по ссылкам: Central Administration > Security > General Security > Configure managed accounts
2. Создаем веб-приложение
С помощью PowerShell создадим новое веб-приложение со следующими параметрами:
Имя приложения (оно же имя сайта в IIS) - SharePoint Site KOM-AD01-SP-MYS;
TCP порт – 80;
Host Header - KOM-AD01-SP-MYS.holding.com;
Путь корневого каталога IIS - C:\inetpub\wwwroot\wss\VirtualDirectories\KOM-AD01-SP-MYS;
Анонимный доступ выключен;
Шифрование не используется;
Аутентификация с помощью Kerberos;
URL веб-приложения (URL будущего корневого сайта) - http://KOM-AD01-SP-MYS.holding.com:80;
Имя сервера БД (SQL-Alias) – KOM-AD01-SQLSP;
Имя контентной БД веб-приложения - WSS_Content_MYS;
Имя пула приложений IIS - SharePoint AppPool KOM-AD01-SP-MYS;
Управляемая учетная запись для запуска пула приложений IIS - KOM\s-KOM-AD01-SP-AP-MYS
Пример PS-скрипта для создания веб-приложения SharePoint с перечисленными параметрами:
Add-PSSnapin Microsoft.SharePoint.PowerShell $Auth = New-SPAuthenticationProvider -UseWindowsIntegratedAuthentication $Auth.DisableKerberos = $False New-SPWebApplication -Name "SharePoint Site KOM-AD01-SP-MYS" ` -Port 80 ` -HostHeader "KOM-AD01-SP-MYS.holding.com" ` -Path "C:\inetpub\wwwroot\wss\VirtualDirectories\KOM-AD01-SP-MYS" ` -AllowAnonymousAccess:$False ` -SecureSocketsLayer:$False ` -AuthenticationProvider $Auth ` -AuthenticationMethod "Kerberos" ` -Url "http://KOM-AD01-SP-MYS.holding.com:80/" ` -DatabaseServer "KOM-AD01-SQLSP" ` -DatabaseName "WSS_Content_MYS" ` -ApplicationPool "SharePoint AppPool KOM-AD01-SP-MYS" ` -ApplicationPoolAccount (Get-SPManagedAccount "KOM\s-KOM-AD01-SP-AP-MYS")
3. Выполняем проверку и настройку веб-приложения
После того как скрипт создания веб-приложения отработал без ошибок и вернул нам созданный объект нового веб-приложения, просматриваем это веб-приложение и при необходимости меняем его свойства в ЦА по ссылкам:
Central Administration > Application Management > Web Applications > Manage web applications
Например здесь мы можем проверить то, что тип аутентификации для созданного веб-приложения действительно установлен Kerberos. Для этого, выбрав наше веб-приложение, на ленте на вкладке Web Applications нажмём кнопку Authentication Providers…
Выберем зону Default…
и в блоке Claims Authentication Types убедимся в том, что выбрана аутентификация Kerberos
Помимо этого, дополнительно можем визуально проверить в IIS наличие созданного пула приложений и связанного с ним сайта, а также убедиться в появлении новой контентной БД на сервере SQL Server.
4. Создаем семейство сайтов
При создании семейства сайтов с помощью Powershell наряду с прочими параметрами нам потребуется указать внутреннее имя шаблона сайта SharePoint, поэтому сначала мы должны получить полный список этих имён и понять какое из них нам нужно использовать:
Add-PSSnapin Microsoft.SharePoint.PowerShell Get-SPWebTemplate -CompatibilityLevel 15 | Where Name -Like "SPSMSITEHOST*" | ft -AutoSize
Как видим, в нашей ферме SharePoint зарегистрировано два шаблона сайтов для узлов Личных сайтов с одинаковым именем, но отличаются они между собой языком.
Так как мы хотим развернуть русифицированный шаблон сайта Личных сайтов, то соответственно будем использовать в качестве параметров шаблона значения SPSMSITEHOST#0 для определения имени шаблона сайта и 1049 для определения его языка. В конечном итоге получится примерно следующий скрипт для создания новой коллекции сайтов на базе шаблона Личные сайты:
Add-PSSnapin Microsoft.SharePoint.PowerShell $SiteTemplate = Get-SPWebTemplate "SPSMSITEHOST#0" New-SPSite -Url "http://kom-ad01-sp-mys.holding.com/" ` -Name "Мой сайт" ` -Description "Корневой сайт коллекции Личных сайтов" ` -CompatibilityLevel 15 ` -Language 1049 ` -Template $SiteTemplate ` -OwnerAlias "KOM\sp-admin1" ` -OwnerEmail "sp-admin1@holding.com"` -SecondaryOwnerAlias "KOM\sp-admin2" ` -SecondaryEmail "sp-admin2@holding.com"
Результат можно проверить в ЦА по ссылкам:
Central Administration > Application Management > Site Collections > View all site collections
Так как для сайта выбрана аутентификация Kerberos чтобы указанный URL корневого сайта начал работать, нам нужно выполнить ещё пару манипуляций с DNS и SPN.
5. Регистрируем запись в DNS для Host Header
Как Вы помните, реальное имя сервера SharePoint в нашем случае KOM-AD01-WEB03, однако в качестве параметра Host Header при создании веб-приложения SharePoint мы указали FQDN имя KOM-AD01-SP-MYS.holding.com. Для того, чтобы наши клиенты могли разрешить это имя в IP адрес нашего сервера SharePoint, нам нужно создать соответствующею запись в DNS.
Создадим в DNS A-запись c IP адресом нашего SharePoint сервера и именем Host Header с помощью командлетов PowerShell, описание которых можно найти по ссылке Domain Name System (DNS) Server Cmdlets in Windows PowerShell
Import-Module DnsServer Add-DnsServerResourceRecordA -ZoneName "holding.com" -ComputerName "DNSSErver" -Name "KOM-AD01-SP-MYS" -IPv4Address "10.160.0.16" -AllowUpdateAny:$False -CreatePtr:$False -TimeToLive 01:00:00
6. Регистрируем SPN для Host Header
Для обеспечения аутентификации Kerberos нам также необходимо выполнить регистрацию записей SPN для учетной записи, от имени которой выполняется пул приложений веб-приложения SharePoint.
Для того, чтобы просмотреть все записи SPN, зарегистрированные в домене для интересующей нас учетной записи выполним команду:
setspn -L KOM\s-KOM-AD01-SP-AP-MYS
Для того, чтобы выполнить регистрацию новых записей SPN, необходимых для связки SharePoint+Kerberos в нашем случае выполним команды:
setspn -S HTTP/KOM-AD01-SP-MYS KOM\s-KOM-AD01-SP-AP-MYS setspn -S HTTP/KOM-AD01-SP-MYS.holding.com KOM\s-KOM-AD01-SP-AP-MYS
7. Проверяем доступность корневого сайта семейства сайтов
Самое главное на данном этапе убедиться в том, что при попытке открытия URL корневого сайта созданного семейства сайтов не появляется никаких запросов авторизации и успешно отрабатывает аутентификация Kerberos.
После успешной аутентификации при попытке получить доступ к URL корневого узла семейства сайтов (в нашем случае это http://KOM-AD01-SP-MYS.holding.com) мы получим ошибку…
Это связано с тем, что нами ещё пока не развернута общая Служба управления профилями (User Profile Service). Рассмотрим развертывание этой службы в следующей части нашего цикла заметок об установке и базовой настройке SharePoint Server 2013 SP1
Предыдущие заметки цикла можно найти по ссылкам:
Добрый день! Скажите пожалуйта, на личных сайтах есть ссылки в левой панели на доступ к каналу новостей, сведениям, блогу, и.т.д.. Вопрос, можно ли централизованно всем пользователям в этой панели опубликовать ссылку для перехода на основной сайт?
SharePoint 2013 — Кастомизируем содержимое Suite Bar
Добрый день! Алексей Огрмоное спасибо за этот цикл статей!!
Вопрос появился. Я использую NTLM для авторизации. С керберосом пока не очень охота возиться(но все возможно).. при создании персональных сайтов запуске сервиса появляется лента новостей и "обо мне" как вы и описывали но при щелкании по ссылке появляется диалог авторзации и чтобы не вводилось - не пускает... куда капнуть можно на эту тему?
делаю строго все по вашей статье. за исключением кербероса
ухты!! наконец то пустило! оказывается надо было чуток подождать! даже вдоменной струтуре запрашивает пароль - это вероятно как раз из-за не используемого керберос... его же можно позже включить и прописать везде спн на всех службах?
Спасибо за статью.
Маленькое уточнение от меня, может для кого пригодится, если не внимательно читали теорию - сайты личных сайтов SP создаются в корне веб приложения по явному включению, а потом прописывается управляемый путь, по которому они будут открываться по типу - http://webapp/path/usersites. Если личные сайты созданы c использованием подстановочных знаков, ничего работать не будет ) - http://webapp/sites/profiles/usersites
Обратная ссылка: Установка и базовая настройка SharePoint Server 2013 SP1 на Windows Server 2012 R2 (в топологии Two-tier farm). Часть 8 – Настройка Службы поиска и создание сайта цент /
Добрый день! Пытаюсь настроить Sharepoint 2016 на основе Ваших статей.
На пункте
7.Проверяем доступность корневого сайта семейства сайтов
Ошибка 404 К сожалению у вас нет доступа к этому сайту.
Где я мог промахнуться?
Здравствуйте, Иван.
Ничего не могу сказать по поводу SharePoint 2016, так как пока не имел с ним дела.
На сколько я понял, настройка Sharepoint 2013 и 2016 похожи.
В третьей части Установка и базовая настройка SharePoint Server 2013 SP1 на Windows Server 2012 R2 (в топологии Two-tier farm). Часть 3 – Создание семейства сайтов мы давали права на сайт:
Чтобы предоставить доступ к сайту в верхнем правом углу нажмём на изображение “шестерёнки” и в выпадающем меню выберем пункт Параметры сайта. На странице параметров сайта в группе Пользователи и разрешения выберем ссылку Разрешения для сайта
Здесь этого нет. В 2013 права записаны в шаблоне семейства сайтов?