SharePoint 2013 Web 服务和 SSO C#

SharePoint 2013 WebService and SSO C#

我有一个 SharePoint 2013 Web 服务并想使用 SSO(单点登录)。服务已部署到IIS 15 hive中并转换为应用程序。

IIS

然后我配置了web.config

<authentication mode="Windows" />
<identity impersonate="false" />

Web 服务是一个 asmx 文件

[ScriptService]
public class Services : WebService
{
  [WebMethod]
  public void DoAction() {
  ...
  }
}

所以……现在我以用户身份登录 windows(比方说 sp\user1)。当我 运行 Internet Explorer (IE) 时,IE 应该 运行 在相同的用户凭据下,并且当访问 Web 服务时,这也应该作为 sp\user1 执行,但总是会出现一个登录需要身份验证 window.

如何实现单点登录,防止额外登录?

环境 Win2008R2、IIS 7.5、SP2013、C#

Asked same question on sharepoint.stackexchange

您需要配置 SharePoint 2013 身份验证提供程序来处理 kerberos 令牌。这可以从 SharePoint 的中央管理员完成。此外,您的站点必须在 SHarePoint 请求时在身份验证期间发送 kerberos 令牌。

link 将提供有关 SHarePoint 的 Windows 身份验证 (kerberos) 的高级概念。

另请参阅http://blog.blksthl.com/2012/09/26/the-first-kerberos-guide-for-sharepoint-2013-technicians/