SharePoint 2013+ Sqlserver 2014 Kerberos 配置传奇, 最终的解决方案 验证。
SharePoint 2013+ Sqlserver 2014 Kerberos 配置传奇。
2,建立DNS,假设没有DNSserver 在本地改动hosts吧。
3。Configure Claims to Windows Token Service Account.(呵呵 中文 是声明为windows令牌服务)
Create an AD account to be used by the Claims to Windows Token Service Account e.g. SP_C2WTS
Open a SharePoint PowerShell prompt as Administrator and run the following command:
$w = Get-SPWebApplication -Identity http://bi.blue.com (Put the URL of your web application)
$w.GrantAccessToProcessIdentity("blue\sp_c2wts") (Put your service account name)
验证一下啊
图例告诉我们OK
Change the account in the SharePoint UI running the Claims to Windows token Service
- Navigate to Security in Central Admin,
- Click on managed Accounts and add the new C2WTS account as a Managed Account,
- Click Security again and Click on Service Accounts,
- Click the Drop Down and Select Claims to Windows Token Service,
- Select the new Managed Account SP_C2WTS and click OK. (Wait a few minutes for it to complete)
- Set the following permissions on all SharePoint servers in the farm (All must be done) – this is completed under Local Security Policy on each server
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZHVhbmNodWFudHRhbw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
下一步是到SPfarm server上配置,
- Grant Log on as a service (this should have happened automatically)
- Impersonate a User (this should have happened automatically)
- Act as part of the operating system (If its greyed out then your domain admin will need to update the group policy to allow it)
下图
既然配置到这里了 把其它几个也配置了吧。 如图 单击身份验证后模拟client--加入用户或组 把kerberos 账号加进去。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZHVhbmNodWFudHRhbw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
以操作系统方式执行。加入kerberos 账号。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZHVhbmNodWFudHRhbw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
- Local admin on all SharePoint servers
- STOP and START the Claims to Windows Token Service (From SharePoint UI) on all servers in the Farm. Simply navigate to Services in Farm and select each server from the link in the top right corner and Stop and Start
each one individually waiting for them to finish
以下 就有意思了。 给应用连接池授权。这个须要灵活。假设个别的账号找不到,或者授权比較麻烦。 你就在这个连接池使用管理员账号, 再把那个权限复制给 管理员账号。
也能够全然依照步骤来做。例如以下;
Grant permission for the account running the application pool for the Service Application
e.g. Excel Services Service Application, Reporting Services Service Application, etc.
- For Analysis services this User must be Granted SQL Analysis Services Administrator access (Unfortunately this is required as Read permission is insufficient for the delegation of credentials)
- Check which account is being used by navigating to Central Admin Security and then select Service Accounts and from the drop down list validate each service or application pool.
- In my example I have an account SP_Services and that account is granted Admin permissions on Analysis Services and granted “SP_DataAccess” on SQL to the SharePoint web application content database(s).
- Validate that the account has the following permissions on each SharePoint server
(This should be completed automatically but should be validated under the Local Security Policy)- Grant Log on as a service
- Impersonate a User
- Grant process identity access to the Service account
$w = Get-SPWebApplication -Identity http://bi.blue.com (Put the
URL of your web application)
$w.GrantAccessToProcessIdentity("blue\sp_Services") (Put your service account name)
这个是可配置的。
配置一下SQL server 2014 Analysis server 的属性 打开数据库--使用实例登录 Analysis 数据库 右键单击 属性加入刚才的 ExcelService 账号,假设没有管理账号的话 也顺便加上吧。以下几个抓图 也把 管理加进去。
运行例如以下命令 结果如图
- Grant process identity access to the Service account
$w = Get-SPWebApplication -Identity http://bi.blue.com (Put the
URL of your web application)
$w.GrantAccessToProcessIdentity("blue\sp_Services") (Put your service account name)
Change the account running the PowerPivot browser service to use an AD Account
(This is completed through the SQL Server Configuration manager) and restart the service (This will take a few minutes and it will not be accessible during this time).
- Check for existing Service Principal Name
(check each account prior to configuring as some may already exist and duplicates / misconfiguration break Kerberos)
This also impacts SQL connectivity as misconfiguration of Kerberos will throw invalid SSPI context errors in SQL as SQL will automatically use Kerberos if SPN’s are registered. It also self-registers the SPN’s if Local System is used.
SPN’s have to be set for the NetBIOS (Short name) and FQDN (Fully qualified name)
e.g. SETSPN –S HTTP/bi.blue.com blue\sp_webapp, SETSPN –S HTTP/bi blue\sp_webapp - Configure SPN's
- CONFIGURE SPN'S (SHAREPOINT SQL SERVER)
[REQUIRED FOR SQL SERVER FOR SHAREPOINT DATABASES - NOT REQUIRED FOR SQL ALWAYS ON AVAILABILITY GROUPS]
Details required: SQL Instance name, Static Port and SQL Service account
e.g. My SQL instance is SQL01\SQL2012 and my service account is SP_SQL and my port is 40000 (Replace the red with your server and account details).
The 1st one is on my instance name
setspn -s MSSQLSvc/SQL01:SQL2012 SP_SQL
setspn -s MSSQLSvc/SQL01.blue.com:SQL2012 SP_SQL
and the 2nd one is on port
setspn -s MSSQLSvc/SQL01:40000 SP_SQL
setspn -s MSSQLSvc/SQL01.blue.com:40000 SP_SQL
[REQUIRED FOR SQL 2014 ALWAYS ON AVAILABILITY GROUPS ONLY - this is required as a Listener registers in DNS exactly the
same as a server name]
This section Details required: Listener name only
e.g. My Listener is SQLSYNCLISTEN and my service account is SP_SQL and my port is 1433 (This must be 1433 or you will need to
use a SQL Alias as a SQL Listener does not use SQL Browser).
The 1st one is the SQL Listener without a port
setspn -s MSSQLSvc/SQLSYNCLISTEN SP_SQL
setspn -s MSSQLSvc/SQLSYNCLISTEN.blue.com SP_SQL
and the 2nd one is with the port [If you use a SQL Alias then any port can be used but then replace 1433 below with the new port number]
setspn -s MSSQLSvc/SQLSYNCLISTEN SP:1433 SP_SQL
setspn -s MSSQLSvc/SQLSYNCLISTEN SP.blue.com:1433 SP_SQL
- CONFIGURE SPN'S (SQL Analysis Services Multidimensional) (Server name and Instance required)
e.g. SQLAS01\Multi
setspn -s MSOLAPSvc.3/SQLAS01:MULTI SQL_AS
setspn -s MSOLAPSvc.3/SQLAS01.blue.com:MULTI SQL_AS
setspn -s MSOLAPDisco.3/SQLAS01 SQL_AS
setspn -s MSOLAPDisco.3/SQLAS01.blue.com SQL_AS - CONFIGURE SPN'S (SQL Analysis Services Tabular)
(Server name and Instance required)
e.g. SQLAS01\Tabular
setspn -s MSOLAPSvc.3/SQLAS01:Tabular SQL_AS
setspn -s MSOLAPSvc.3/SQLAS01.blue.com:Tabular SQL_AS - CONFIGURE SPN'S (SQL Analysis Services PowerPivot)
(Server name and Instance required - POWERPIVOT)
e.g. APP01\POWERPIVOT
setspn -s MSOLAPSvc.3/APP01:POWERPIVOT SQL_AS
setspn -s MSOLAPSvc.3/APP01.blue.com:POWERPIVOT SQL_AS
setspn -s MSOLAPDisco.3/APP01 SQL_AS
setspn -s MSOLAPDisco.3/APP01.blue.com SQL_AS - CONFIGURE SPN'S (SQL Server - DataWarehouse)
(Server name, Instance and Port is required)
e.g. SQLAS01\SQL_SQLDW and my port is 41000
setspn -s MSSQLSvc/SQLAS01:SQLDW SQL_SQLDW
setspn -s MSSQLSvc/SQLAS01.blue.com:SQLDW SQL_SQLDW
setspn -s MSSQLSvc/SQLAS01:41000 SQL_SQLDW
setspn -s MSSQLSvc/SQLAS01.blue.com:41000 SQL_SQLDW - HOST HEADER / AAM
This is the same DNS entry you already configured)
e.g. http://bi.blue.com and my account is sp_webapp (This is the account that is running the application pool in IIS that requires Kerberos)
setspn -s HTTP/bi.blue.com sp_webapp
setspn -s HTTP/bi sp_webapp - FAKE SPN
(These are the accounts configured to run the Service Application app pools and the Claims to Windows Token Service)
FAKE SPN’s are used just to enable the delegation tab in Active Directory. (It doesn't matter what you use for the service name here - only the accounts matter)
e.g. sp_services and sp_c2wts
setspn -s SP/EXCEL sp_services
setspn -s SP/C2WTS sp_c2wts
- CONFIGURE SPN'S (SHAREPOINT SQL SERVER)
參考抓图
- Set Constrained Delegation
(Constrained delegation must be set for any account running the Service Application pools for the services that require Kerberos as well as the Claims to Windows Token Service account and the Account running PowerPivot SQL Service)
In my case this is SP_Services and SP_C2WTS and SQL_AS (only
for PowerPivot Data Sources - this is a change with Excel 2013 as the connection refreshes with the worksheet)
The Domain Admin is required here and must log in to a Domain Controller.- Find the SP_Services(Replace with your account name) account and click on the Delegation tab
- Click on “Trust this user for delegation to specified services only”

- Use any authentication protocol
- This is where it can get confusing and you need to make sure you have all your service accounts ready that you setup previously.
(These are the ones you ran SETSPN for)

- Start with your first Data Source and type in your service account name (NOT SERVER NAMES) e.g. SP_SQL , SQL_AS, SQLDW_SQL and click OK.

- You will then be prompted with all the SPN’s and you need to select only the ones you need here i.e. the ones that are noted above.
- The worst case scenario here is if the account you use is utilized for many services and you will see many SPN's.
- Select the required SPN’s (The ones you added above) and click ok.
- Click “Apply” button after each add i.e. when you want to select another account otherwise you will get an error.

- Repeat this process selecting each account that you need to delegate to i.e. all the data sources and the web application. It’s all about where you want to allow it to delegate to.
- Now select the Claims to Windows Token Service Account e.g. SP_C2WTS (Replace with your account) and repeat the exact steps you did for the SP_Services account. (Technically
for the SP_C2WTS you can exclude the Web Application but for simplicity sake I made the process the same) - For my PowerPivot Service account SQL_AS I was connecting to a SQL Data Warehouse and my Analysis Services so you only set constrained for the destination
data source so in my case I looked up SQL_SQLDW and "selected all", clicked ok and applied constrained delegation.
- Click on “Trust this user for delegation to specified services only”
- Find the SP_Services(Replace with your account name) account and click on the Delegation tab
配置思路 參考地址http://blogs.technet.com/b/scottstewart/archive/2014/04/10/kerberos-sharepoint-2013-sql-2012-for-business-intelligence.aspx
- Set Constrained Delegation
(Constrained delegation must be set for any account running the Service Application pools for the services that require Kerberos as well as the Claims to Windows Token Service account and the Account running PowerPivot SQL Service)
In my case this is SP_Services and SP_C2WTS and SQL_AS (only
for PowerPivot Data Sources - this is a change with Excel 2013 as the connection refreshes with the worksheet)
The Domain Admin is required here and must log in to a Domain Controller.- Find the SP_Services(Replace with your account name) account and click on the Delegation tab
- Click on “Trust this user for delegation to specified services only”

- Use any authentication protocol
- This is where it can get confusing and you need to make sure you have all your service accounts ready that you setup previously.
(These are the ones you ran SETSPN for)

- Start with your first Data Source and type in your service account name (NOT SERVER NAMES) e.g. SP_SQL , SQL_AS, SQLDW_SQL and click OK.

- You will then be prompted with all the SPN’s and you need to select only the ones you need here i.e. the ones that are noted above.
- The worst case scenario here is if the account you use is utilized for many services and you will see many SPN's.
- Select the required SPN’s (The ones you added above) and click ok.
- Click “Apply” button after each add i.e. when you want to select another account otherwise you will get an error.

- Repeat this process selecting each account that you need to delegate to i.e. all the data sources and the web application. It’s all about where you want to allow it to delegate to.
- Now select the Claims to Windows Token Service Account e.g. SP_C2WTS (Replace with your account) and repeat the exact steps you did for the SP_Services account. (Technically
for the SP_C2WTS you can exclude the Web Application but for simplicity sake I made the process the same) - For my PowerPivot Service account SQL_AS I was connecting to a SQL Data Warehouse and my Analysis Services so you only set constrained for the destination
data source so in my case I looked up SQL_SQLDW and "selected all", clicked ok and applied constrained delegation.
- Click on “Trust this user for delegation to specified services only”
- Find the SP_Services(Replace with your account name) account and click on the Delegation tab
- Navigate to Central Admin,
- Select web applications,
- Highlight the Web application (Do not click on the link – click next to it to highlight it and select it),
- Select Authentication providers and click Windows,
- Scroll down and change NTLM and select Kerberos
- Open a Command Prompt as Administrator and run IISRESET (USERS WILL LOSE CONNECTIVITY AND THEIR CURRENT SESSIONS SO DO THIS DURING SCHEDULED DOWNTIME)
SharePoint 2013+ Sqlserver 2014 Kerberos 配置传奇, 最终的解决方案 验证。的更多相关文章
- [转载]SharePoint 2013测试环境安装配置指南
软件版本 Windows Server 2012 标准版 SQL Server 2012 标准版 SharePoint Server 2013 企业版 Office Web Apps 2013 备注: ...
- 【FBA】SharePoint 2013自定义Providers在基于表单的身份验证(Forms-Based-Authentication)中的应用
//http://www.cnblogs.com/OceanEyes/p/custom-provider-in-sharepoint-2013-fba-authentication.html 由于项目 ...
- [FBA]SharePoint 2013自定义Providers在基于表单的身份验证(Forms-Based-Authentication)中的应用
//http://tech.ddvip.com/2014-05/1401197453210723.html 由于项目的需要,登录SharePoint Application的用户将从一个统一平台中获取 ...
- SharePoint 2013自定义Providers在基于表单的身份验证(Forms-Based-Authentication)中的应用
由于项目的需要,登录SharePoint Application的用户将从一个统一平台中获取,而不是从Domain中获取,所以需要对SharePoint Application的身份验证(Claims ...
- SharePoint 2013 使用JavaScript对象模型配置智能提示
前言 默认在VS2012/2013中编写SharePoint JavaScript 客户端对象模型,都没有智能感知的功能,用起来非常麻烦:其实,我们可以手动配置一下,让JavaScript可以进行智能 ...
- SharePoint 2013 开发——获取用户配置文件属性内容(User Profile)
博客地址:http://blog.csdn.net/FoxDave 本篇我们应用SharePoint CSOM(.NET)来读取用户配置文件的信息,个人开始逐渐倾向于客户端模型,因为不用远程登录到 ...
- Sharepoint 2013 开启App和配置App
在任何站点中,点Add App,然后点Sharepoint Store,如果没有Enable apps,打开app store的时候出出现错误: Sorry, apps are turned off. ...
- SharePoint 2013 WebPart属性面板配置
为WebPart添加右侧的属性面板,方便将来对于WebPart的配置,我们只需要在CustomWebPart.cs文件里面,声明一下变量即可: private string url = string. ...
- [转载]Windows 2012 R2安装SharePoint 2013 手动安装工具软件
之前介绍过在window 2012中安装SharePoint 2013,这次,借着SharePoint 2013 sp1补丁发布之际,介绍下在window 2012 r2中安装SharePoint 2 ...
随机推荐
- knockout 绑定 jquery ui datepicker (转)
ko.bindingHandlers.datepicker = { init: function(element, valueAccessor, allBindingsAccessor) { //in ...
- [swustoj 1021] Submissions of online judge
Submissions of online judge(1021) 问题描述 An online judge is a system to test programs in programming c ...
- POJ 2728 Desert King ★(01分数规划介绍 && 应用の最优比率生成树)
[题意]每条路径有一个 cost 和 dist,求图中 sigma(cost) / sigma(dist) 最小的生成树. 标准的最优比率生成树,楼教主当年开场随手1YES然后把别人带错方向的题Orz ...
- acdream LCM Challenge (最小公倍数)
LCM Challenge Time Limit: 2000/1000MS (Java/Others) Memory Limit: 128000/64000KB (Java/Others) Su ...
- 移植mysql到嵌入式ARM平台
移植MySQL到嵌入式ARM平台 MySQL没有专门针对ARM的版本,移植到ARM没有官方文档可参考,因此,暂时参考这样一篇文档: http://blog.chinaunix.net/space.p ...
- 【转】Windows搭建Eclipse+JDK+SDK的Android
原文网址:http://blog.csdn.net/sunboy_2050/article/details/6336480 一 相关下载 (1) Java JDK下载: 进入该网页: http://j ...
- 一个可能是pip的一个BUG
今天重新安装了Python,把Python的安装位置改为 D:\Program Files\Python\Python34\ 用pip 安装 Django 的时候出现一下错误 >pip inst ...
- POJ 2243 Knight Moves
Knight Moves Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 13222 Accepted: 7418 Des ...
- 2、Android应用程序基本特性
1. apk是android应用程序安装格式,.dex是Android二进制执行文件格式. 2.Android操作系统是基于Linux的多用户操作系统,每一个应用程序都是使用的不同的用户. 3. 默认 ...
- 十款PHP开发框架对比
PHP开发框架近来在PHP社区中成为讨论的热点,几乎每天都在推出新的框架.面对市面上超过四十种的开发框架,你很难判断究竟哪一款最适合你,尤其是在这些框架所提供的功能不尽相同的时候. 本文将引导你 ...