扩展使用 Windows 声明身份验证的 Web 应用程序 (SharePoint Server 2010)

 

适用于: SharePoint Server 2010

上一次修改主题: 2016-11-30

本文介绍如何扩展使用 Windows 声明身份验证的 Web 应用程序。

提示

如果要改用 Windows 经典身份验证,请参阅扩展使用 Windows 经典身份验证的 Web 应用程序 (SharePoint Server 2010)

在执行这些过程之前,请确认以下内容:

  • 您的系统运行的是 Microsoft SharePoint Server 2010。

  • 您已经有一个 Web 应用程序可供扩展。

  • 您已经阅读了规划身份验证方法 (SharePoint Server 2010),并知道要使用哪种身份验证方法。

  • 您已阅读有关区域、匿名访问和权限的内容。有关详细信息,请参阅逻辑体系结构组件 (SharePoint Server 2010)

  • 如果您已在 Windows 中启用用户帐户控制 (UAC),并使用 Windows PowerShell 来扩展 Web 应用程序,则必须右键单击“SharePoint 2010 Management Shell”并选择“以管理员身份运行”。

可使用管理中心或 Windows PowerShell 来扩展使用 Windows 声明身份验证的 Web 应用程序。请使用下列过程之一扩展 Web 应用程序。通常情况下,使用管理中心来扩展 Web 应用程序。如果您希望自动完成扩展 Web 应用程序这一任务(这种情况在企业中比较常见),请使用 Windows PowerShell。在完成这一过程之后,您将获得两个向用户公开相同内容的不同 IIS 网站。

使用管理中心来扩展使用 Windows 声明身份验证的 Web 应用程序

  1. 确认您拥有以下管理凭据:

    • 若要创建 Web 应用程序,您必须是运行管理中心的计算机上 SharePoint 组“Farm Administrators”和本地 Administrator 组的成员。
  2. 在管理中心主页上的“应用程序管理”部分,单击“管理 Web 应用程序”。

  3. 在功能区上,单击“扩展”。

  4. 在“将 Web 应用程序扩展到其他 IIS 网站”页上的“IIS 网站”部分,可通过选择以下两个选项之一配置扩展后的 Web 应用程序的设置:

    • 单击“使用现有 IIS 网站”,然后选择要扩展的现有 Web 应用程序的网站。

    • 单击“新建 IIS 网站”,然后在“名称”框中键入网站名称。

  5. 在“IIS 网站”部分的“端口”框中,键入要用于访问 Web 应用程序的端口号。如果新建网站,则会用建议的端口号填充该字段。如果使用现有的网站,则会用当前端口号填充该字段。

    备注

    HTTP 访问的默认端口号是 80,而 HTTPS 访问的默认端口号是 443。如果您希望用户无需键入端口号即可访问 Web 应用程序,则用户应使用适当的默认端口号。

  6. 可选:在“IIS 网站”部分的“主机标头”框中,键入要用于访问 Web 应用程序的主机名称(例如,www.contoso.com)。

    备注

    除非希望将两个或更多 IIS 网站配置为使用同一台服务器上的端口 80,并且 DNS 已配置为将多个服务器名称指向同一台服务器,否则通常不设置该字段。

  7. 在“IIS 网站”部分的“路径”框中,键入服务器上的网站目录的路径。如果新建网站,则会用建议的路径填充该字段。如果使用现有的网站,则会用该网站的当前路径填充该字段。

  8. 在“安全性配置”部分,选择是否允许匿名访问以及是否使用安全套接字层 (SSL)。

    1. 在“允许匿名访问”下,单击“是”或“否”。如果选择允许匿名访问,将允许使用特定于计算机的匿名访问帐户(即 IIS_IUSRS)来匿名访问网站。

      备注

      如果您希望用户能够匿名访问任何网站内容,则必须在启用 SharePoint 网站级别的匿名访问之前,为整个 Web 应用程序区域启用匿名访问;之后,网站所有者便可以配置如何在其网站中使用匿名访问。如果未在 Web 应用程序级别启用匿名访问,则以后将不能在网站级别启用匿名访问。有关详细信息,请参阅选择安全组 (SharePoint Server 2010)

    2. 在“使用安全套接字层(SSL)”下,单击“是”或“否”。如果选择为网站启用 SSL,则必须通过请求和安装 SSL 证书来配置 SSL。有关设置 SSL 的详细信息,请参阅如何在 IIS 7.0 上设置 SSL(该链接可能指向英文页面) (https://go.microsoft.com/fwlink/?linkid=187887&clcid=0x804)(该链接可能指向英文页面)。

  9. 在“声明身份验证类型”部分,选择要用于 Web 应用程序的身份验证。

    1. 如果要启用 Windows 身份验证,则选择“启用 Windows 身份验证”,然后在下拉菜单中选择“协商(Kerberos)”或“NTLM”。有关详细信息,请参阅规划 Kerberos 身份验证 (SharePoint Server 2010)

      如果您不想使用集成 Windows 身份验证,请清除“集成 Windows 身份验证”。

      如果要通过网络以不加密的形式传送用户的凭据,则选择“基本身份验证(使用明文发送密码)”。

      备注

      可以选择基本身份验证或集成 Windows 身份验证,或者同时选择两者。如果两者都选,则 SharePoint Server 2010 将为客户端 Web 浏览器提供以上两种身份验证类型。然后,由客户端 Web 浏览器来确定使用哪种身份验证类型。如果仅选择基本身份验证,请确保启用 SSL;否则,恶意用户可能会截取凭据。

    2. 如果要启用基于表单的身份验证,则选择“启用基于窗体的身份验证(FBA)”,然后在相应的框中输入成员资格提供程序名称和角色管理器名称。

      有关详细信息,请参阅为基于声明的 Web 应用程序配置基于表单的身份验证 (SharePoint Server 2010)

      备注

      如果选择此选项,则确保启用 SSL;否则,恶意用户可能会截取凭据。

    3. 如果您已在 Windows PowerShell 中设置了“信任的身份提供程序”身份验证,则“信任的身份提供程序”复选框将处于选中状态。

      有关详细信息,请参阅使用 SAML 安全令牌配置身份验证 (SharePoint Server 2010)

    可以使用一个或多个声明身份验证类型。有关详细信息,请参阅规划身份验证方法 (SharePoint Server 2010)

  10. 在“登录页 URL”部分,选择以下选项之一登录到 SharePoint Server 2010。

    • 如果您希望将用户重定向到默认登录网站以进行基于声明的身份验证,则选择“默认登录页的 URL”。

    • 如果您希望将用户重定向到自定义登录网站以进行基于声明的身份验证,请选择“自定义登录页 URL”,然后键入登录 URL。

  11. 在“公用 URL”部分,键入用户将在此 Web 应用程序中访问的所有网站的域名的 URL。此 URL 将在此 Web 应用程序的网页上显示的所有链接中使用。默认的 URL 为当前的服务器名称和端口。

  12. 在“公用 URL”部分,从下拉菜单中选择用于 Web 应用程序的区域。

    备注

    一个 Web 应用程序中最多可以创建五个区域。

  13. 单击“确定”以扩展现有 Web 应用程序。

使用 Windows PowerShell 来扩展使用 Windows 声明身份验证的现有 Web 应用程序

  1. 确认您满足以下最低要求:请参阅 Add-SPShellAdmin。 您还需要是运行 Windows PowerShell 的计算机上的本地管理员。

  2. 在“开始”菜单上,单击“所有程序”。

  3. 单击“Microsoft SharePoint 2010 产品”。

  4. 单击“SharePoint 2010 Management Shell”。

  5. 若要将身份验证从 Windows 声明身份验证更改为基于表单的身份验证,请在 Windows PowerShell 命令提示符处键入以下命令:

    $ap = New-SPAuthenticationProvider -ASPNETRoleProviderName <RoleProviderName> -ASPNETMembershipProvider <MembershipProviderName>
    

    若要将 Web 应用程序扩展到同一个端口,但使用不同的主机标头,请在 Windows PowerShell 命令提示符处键入以下命令:

    Get-SPWebApplication -Identity http://sitename | New-SPWebApplicationExtension -Name <Name> -HostHeader <HostHeader> -Zone <Zone> -URL <URL> -Port <Port> -AuthenticationProvider $ap
    

    其中:

    • <RoleProviderName> 是角色提供程序的名称。

    • <MembershipProviderName> 是成员资格提供程序的名称。

    • <Identity> 是要扩展的 Web 应用程序。

    • <Name> 是 Web 应用程序中新 IIS 网站的名称。

    • <HostHeader> 是分配到 Web 应用程序的此区域的主机名称。

    • <Zone> 是此新扩展将与之关联的区域。

    • <URL> 是此 Web 应用程序区域的公用 URL。

    • <Port> 是可用于访问 Web 应用程序的此区域的端口。

    示例

    $ap = New-SPAuthenticationProvider -ASPNETRoleProviderName roleprovidername -ASPNETMembershipProvider membershipprovidername
    
    Get-SPWebApplication -Identity http://sitename | New-SPWebApplicationExtension -Name IntranetSite -HostHeader www.contoso.com -Zone Intranet -URL http://intranet.sitename.com -Port 9876 -AuthenticationProvider $ap
    

有关详细信息,请参阅 New-SPWebApplicationExtension

备注

将使用 Windows 声明身份验证的现有 Web 应用程序扩展为使用基于表单的身份验证的 Web 应用程序之后,必须执行额外的配置。有关基于表单的身份验证的详细信息,请参阅为基于声明的 Web 应用程序配置基于表单的身份验证 (SharePoint Server 2010)

备注

我们建议您在执行命令行管理任务时使用 Windows PowerShell。Stsadm 命令行工具已被弃用,仍然包含该工具是为了支持与之前产品版本的兼容性。

See Also

Concepts

创建使用 Windows 声明身份验证的 Web 应用程序 (SharePoint Server 2010)
扩展使用 Windows 经典身份验证的 Web 应用程序 (SharePoint Server 2010)