关于 Web 发布中的身份验证
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
应注意以下安全问题:
配置基于窗体的身份验证的超时时,建议将超时时间设置为短于已发布服务器强制的时间。 如果已发布的服 务器在 Forefront TMG 之前超时,用户可能会错误地认为该会话已结束。 这就为攻击者使用会话提供了机 会,在用户主动关闭或 Forefront TMG 按照窗体设置配置实施超时之前,会话会一直保持开启状态。
FPCRuleElements.UserAgentMappings
有关详细信息,请参阅管理用户代理映射(英文)(http://go.microsoft.com/fwlink/?LinkId=106693)。
移动客户端的窗体 Forefront TMG 提供用于各种移动客户端的窗体。 这些窗体均位于 CHTML 和 XHTML(代表 XHTML-MP 窗体) 文件夹中,可以在以下位置找到这些文件夹:
没有身份验证(允许内部服务器处理身份验证)
Windows Active Directory LDAP 服务器 RADIUS RADIUS 一次性密码 SecurID
可以在 Web 侦听器上为发布规则配置客户端凭据的接收和验证。 使用特定凭据验证形式的 Web 侦听器的发布规 则必须使用与该验证形式一致的用户集。 例如,如果发布规则含有使用 LDAP 凭据验证的 Web 侦听器,则还必须 使用由 LDAP 用户组成的用户集。 它不能包括 AD DS 用户。
无委派,客户端无法直接进行身份验证 在此选项中,Forefront TMG 不委派凭据。 这是为了防止无意中将凭据委派到组织,在组织中凭据可能会被窃取。 这是某些 Forefront TMG 发布向导中的默认设置,因此如果要委派凭据,必须更改默认设置。
无委派,但客户端可以直接进行身份验证 选择“无委派,但是客户端可以直接进行身份验证”这一委派方法时,Forefront TMG 会将用户的凭据传递给目标 服务器,但不会在 Forefront TMG 上执行任何其他操作。 客户端和目标服务器然后协商身份验证。
注意: 必须将 Web 服务器配置为使用与 Forefront TMG 所用的委派方法相匹配的身份验证方案。 步骤 5,服务器响应 - Outlook Web Access 服务器向客户端发送响应,Forefront TMG 会拦截该响应。
步骤 6,转发响应 - Forefront TMG 将响应转发到客户端。
NTLM/Kerberos(协商) 选择“协商”作为委派方法时,Forefront TMG 将首先尝试从域控制器获取客户端的 Kerberos 票证。 如果 Forefront TMG 未收到 Kerberos 票证,它将通过 NTLM 使用协商方案委派凭据。 如果 Forefront TMG 收到 Kerberos 票证,它将借助于 Kerberos,使用协商方案来委派凭据。 如果身份验证失败,则 Forefront TMG 会向客 户端提供服务器的失败通知。 如果服务器需要其他类型的凭据,Forefront TMG 将触发警报。
接收客户端凭据的客户端身份验证方法
Forefront TMG Web 侦听器接受来自客户端的以下类型的身份验证:
没有身份验证。
基于窗体的身份验证
HTTP 身份验证(在 HTTP 头中接收)
客户端证书身份验证
没有身份验证 可以选择让 Forefront TMG 不要求身份验证。 如果执行此操作,则无法对使用此 Web 侦听器的规则配置委派方 法。
步骤 4,身份验证委派 - Forefront TMG 将客户端的请求转发到 Outlook Web Access 服务器,并使用客户端的凭据向 Outlook Web Access 服务器进行身份验证。 Outlook Web Access 服务器通常使用相同的身份验证提供程序重新验证这 些凭据。
HTTP 身份验证 Forefront TMG 支持以下类型的 HTTP 身份验证:
基本身份验证 - 使用基本身份验证,系统会提示请求客户端提供凭据。 Forefront TMG 将验证该凭据,并在将 请求传递到 Web 服务器时按照配置的委派方法使用该凭据,以便进行 Web 服务器身份验证。 必须将 Web 服 务器配置为使用与 Forefront TMG 所用的委派方法匹配的身份验证方案。 有关基本身份验证的详细信息,请参 阅关于身份验证方法。
要点: 使用相同的 Web 侦听器在同一域中发布多个应用程序时,即使未启用单一登录 (SSO),通过其中某一应用程 序身份验证的用户也可以访问其他应用程序。
身份验证委派
验证完凭据之后,可以将发布规则配置为使用下列方法之一将凭据委派到发布的服务器:
无委派,客户端无法直接进行身份验证
无委派,但客户端可以直接进行身份验证
在使用 Forefront TMG 发布 Web 应用程序之前,应确保将该应用程序设计为可抵抗会话跨站攻击(也称作 跨站点提交、跨站点请求伪造,或引诱攻击)。 这对于通过 Forefront TMG 发布的 Web 服务器非常重要, 因为客户端必须对通过发布 Forefront TMG 防火墙来访问的所有网站使用相同的信任级别。
基本
NTLM NTLM/Kerberos(协商) SecurID Kerberos 约束委派
配置身份验证委派 客户端凭据的委派在发布规则上进行配置。 在“发布规则”向导中,在“身份验证委派”页上配置客户端凭据的委 派。 在发布规则属性中,身份验证设置位于“身份验证委派”选项卡上。
2
摘要和 WDigest 身份验证 - 使用摘要或 WDigest 身份验证,客户端会发出请求。 Forefront TMG 将拒绝请求 并要求客户端提供身份验证信息。 凭据将被发送到域控制器进行验证。 有关详细信息,请参阅关于身份验证方 法。
集成 Windows 身份验证(NTLM) - 使用 NTLM、Kerberos 和协商身份验证机制。 客户端计算机中的当前 Windows 信息将用于身份验证。 如果身份验证交换失败,则浏览器会不断发出提示,直到用户输入有效凭据或 关闭提示对话框。 有关此身份验证方法的详细信息,请参阅关于身份验证方法。
基于窗体的身份验证 可以使用 Forefront TMG 中基于窗体的身份验证来发布任何 Web 服务器。 Forefront TMG 提供了三种基于窗体的 身份验证:
密码窗体 - 用户在窗体中输入用户名和密码。 这是 AD DS、LDAP 和 RADIUS 凭据验证所需的凭据类型。
1
通行码窗体 - 用户在窗体中输入用户名和通行码。 这是 SecurID 和 RADIUS 一次性密码验证所需的凭据类 型。
Forefront TMG 安装目录\Templates\CookieAuthTemplates
Forefront TMG 使用移动客户端提供的用户代理头,以便确定要提供的窗体类型。
基于窗体的身份验证中的密码管理 使用基于窗体的身份验证时,Forefront TMG 允许您向用户发出有关密码将要(在配置的天数后)过期的警告,并 允许用户更改其密码。 可以单独或组合使用这两个功能。 例如,可以警告用户其密码将要过期,但不允许用户更 改其密码。 或者,也可以允许用户更改密码,但不提供有关密码将要过期的警告。
注意: 如果您未将访问权限限制到通过身份验证的用户,则与将允许访问规则应用于所有用户的情况一样,Forefront
TMG 将不验证用户的凭据。 Forefront TMG 将依照所配置的委派方法,使用用户的凭据向 Web 服务器进行身份 验证。
建议将每个发布规则应用于所有通过身份验证的用户或特定用户集,而不是选择“要求 Web 侦听器上的所有用 户进行身份验证”,该选项要求通过侦听器连接的所有用户都进行身份验证。
允许用户更改其密码时,该选项在登录窗体上将可用。 将 Forefront TMG 配置为向用户发出有关密码将要过期的 警告时,用户将收到一个独立的警告页,用户在该页上可以选择是否更改其密码。 有关如何配置更改密码功能的说 明,请参阅配置更改密码功能。
注意: 可以全面自定义基于窗体的身份验证的 HTML 窗体。
将身份验证委派给 Forefront TMG 后面的 Web 服务器,如运行 SharePoint Portal Server 2007 的服务器。 注意:
前两部分在接收客户端请求的 Web 侦听器上进行配置。 第三个部分在发布规则上进行配置。 这意味着可以针对 不同的规则使用相同的侦听器,并可以进行不同类型的委派。
3
基本 在基本委派中,Forefront TMG 以纯文本形式将凭据转发到要求凭据的服务器。 如果身份验证失败,Forefront TMG 会根据 Web 侦听器上配置的身份验证类型提示用户进行身份验证。 如果服务器需要其他类型的凭据,Forefront TMG 将触发警报。
NTLM 在 NTLM 委派中,Forefront TMG 通过使用 NTLM 质询/响应身份验证协议委派凭据。 如果身份验证失败, Forefront TMG 会将该委派替换为 Web 侦听器所使用的身份验证类型。 如果服务器需要其他类型的凭据, Forefront TMG 将触发警报。
如果将 ForefrFra Baidu biblioteknt TMG 配置为要求身份验证,在发布规则应用于特定用户集或“所有通过身份验证的用户” 时,或 Web 侦听器配置为“要求所有用户进行身份验证”时,Forefront TMG 会在转发请求之前验证凭据。
默认情况下,客户端浏览器的语言设置将决定 Forefront TMG 提供的窗体的语言。 Forefront TMG 提供 26 种语言的窗体。 也可以不考虑浏览器的语言,将 Forefront TMG 配置为提供特定语言的窗体。
在要求提供客户端证书而用户拒绝提供证书的基于窗体的身份验证方案中,用户可以访问登录窗体。 此时, Forefront TMG 会拒绝登录,因为缺少客户端证书。
窗体自定义涉及修改 Strings.txt 文件。 如果将 Strings.txt 文件提供给第三方进行修改,请验证未在文 件中添加非文本内容,因为添加此类内容可能会为网络攻击提供途径。
通行码/密码窗体 - 用户输入用户名和通行码以及用户名和密码。 用户名和通行码用于进行 Forefront TMG 身 份验证,方法是应用 SecurID 或 RADIUS 一次性密码身份验证方法。 用户名和密码用于委派。
退回到基本身份验证 默认情况下,当基于窗体的身份验证无法用于特定客户端时,Forefront TMG 将要求改用基本身份验证。 这将在用 户代理映射集合中的 Forefront TMG COM 中进行配置:
关于 Web 发布中的身份验证
相关主题
当客户端请求访问已发布的内部 Web 服务器时,Forefront TMG 的身份验证过程包括以下三个部分:
接收客户端凭据。
依据身份验证提供程序(如 Active Directory 域服务 (AD DS)、RADIUS 或 SecurID 身份验证管理器)验证客户端凭 据。
下图演示了基于窗体的身份验证的身份验证过程。 请注意,这是简化的过程描述,用于介绍涉及的主要步骤。
步骤 1,接收客户端凭据 - 客户端发送与“内部网络”中公司 Outlook Web Access 服务器建立连接的请求。 客户端以 HTML 格式提供凭据。
步骤 2 和 3,发送凭据 - Forefront TMG 将凭据发送到身份验证提供程序(例如,用于 AD DS 身份验证的域控制器或 RADIUS 服务器),然后接收来自身份验证提供程序的、关于已对用户进行身份验证的确认。
客户端证书身份验证 在客户端证书方案中,客户端提供一个证书,然后 Forefront TMG 基于该证书对客户端进行身份验证。 这可能是 一个嵌入在智能卡中的证书,也可能是移动设备用于连接到 Microsoft ActiveSync 时使用的证书。
验证客户端凭据的方法
Forefront TMG 支持以下用于验证客户端凭据的服务器类型:
配置基于窗体的身份验证的超时时,建议将超时时间设置为短于已发布服务器强制的时间。 如果已发布的服 务器在 Forefront TMG 之前超时,用户可能会错误地认为该会话已结束。 这就为攻击者使用会话提供了机 会,在用户主动关闭或 Forefront TMG 按照窗体设置配置实施超时之前,会话会一直保持开启状态。
FPCRuleElements.UserAgentMappings
有关详细信息,请参阅管理用户代理映射(英文)(http://go.microsoft.com/fwlink/?LinkId=106693)。
移动客户端的窗体 Forefront TMG 提供用于各种移动客户端的窗体。 这些窗体均位于 CHTML 和 XHTML(代表 XHTML-MP 窗体) 文件夹中,可以在以下位置找到这些文件夹:
没有身份验证(允许内部服务器处理身份验证)
Windows Active Directory LDAP 服务器 RADIUS RADIUS 一次性密码 SecurID
可以在 Web 侦听器上为发布规则配置客户端凭据的接收和验证。 使用特定凭据验证形式的 Web 侦听器的发布规 则必须使用与该验证形式一致的用户集。 例如,如果发布规则含有使用 LDAP 凭据验证的 Web 侦听器,则还必须 使用由 LDAP 用户组成的用户集。 它不能包括 AD DS 用户。
无委派,客户端无法直接进行身份验证 在此选项中,Forefront TMG 不委派凭据。 这是为了防止无意中将凭据委派到组织,在组织中凭据可能会被窃取。 这是某些 Forefront TMG 发布向导中的默认设置,因此如果要委派凭据,必须更改默认设置。
无委派,但客户端可以直接进行身份验证 选择“无委派,但是客户端可以直接进行身份验证”这一委派方法时,Forefront TMG 会将用户的凭据传递给目标 服务器,但不会在 Forefront TMG 上执行任何其他操作。 客户端和目标服务器然后协商身份验证。
注意: 必须将 Web 服务器配置为使用与 Forefront TMG 所用的委派方法相匹配的身份验证方案。 步骤 5,服务器响应 - Outlook Web Access 服务器向客户端发送响应,Forefront TMG 会拦截该响应。
步骤 6,转发响应 - Forefront TMG 将响应转发到客户端。
NTLM/Kerberos(协商) 选择“协商”作为委派方法时,Forefront TMG 将首先尝试从域控制器获取客户端的 Kerberos 票证。 如果 Forefront TMG 未收到 Kerberos 票证,它将通过 NTLM 使用协商方案委派凭据。 如果 Forefront TMG 收到 Kerberos 票证,它将借助于 Kerberos,使用协商方案来委派凭据。 如果身份验证失败,则 Forefront TMG 会向客 户端提供服务器的失败通知。 如果服务器需要其他类型的凭据,Forefront TMG 将触发警报。
接收客户端凭据的客户端身份验证方法
Forefront TMG Web 侦听器接受来自客户端的以下类型的身份验证:
没有身份验证。
基于窗体的身份验证
HTTP 身份验证(在 HTTP 头中接收)
客户端证书身份验证
没有身份验证 可以选择让 Forefront TMG 不要求身份验证。 如果执行此操作,则无法对使用此 Web 侦听器的规则配置委派方 法。
步骤 4,身份验证委派 - Forefront TMG 将客户端的请求转发到 Outlook Web Access 服务器,并使用客户端的凭据向 Outlook Web Access 服务器进行身份验证。 Outlook Web Access 服务器通常使用相同的身份验证提供程序重新验证这 些凭据。
HTTP 身份验证 Forefront TMG 支持以下类型的 HTTP 身份验证:
基本身份验证 - 使用基本身份验证,系统会提示请求客户端提供凭据。 Forefront TMG 将验证该凭据,并在将 请求传递到 Web 服务器时按照配置的委派方法使用该凭据,以便进行 Web 服务器身份验证。 必须将 Web 服 务器配置为使用与 Forefront TMG 所用的委派方法匹配的身份验证方案。 有关基本身份验证的详细信息,请参 阅关于身份验证方法。
要点: 使用相同的 Web 侦听器在同一域中发布多个应用程序时,即使未启用单一登录 (SSO),通过其中某一应用程 序身份验证的用户也可以访问其他应用程序。
身份验证委派
验证完凭据之后,可以将发布规则配置为使用下列方法之一将凭据委派到发布的服务器:
无委派,客户端无法直接进行身份验证
无委派,但客户端可以直接进行身份验证
在使用 Forefront TMG 发布 Web 应用程序之前,应确保将该应用程序设计为可抵抗会话跨站攻击(也称作 跨站点提交、跨站点请求伪造,或引诱攻击)。 这对于通过 Forefront TMG 发布的 Web 服务器非常重要, 因为客户端必须对通过发布 Forefront TMG 防火墙来访问的所有网站使用相同的信任级别。
基本
NTLM NTLM/Kerberos(协商) SecurID Kerberos 约束委派
配置身份验证委派 客户端凭据的委派在发布规则上进行配置。 在“发布规则”向导中,在“身份验证委派”页上配置客户端凭据的委 派。 在发布规则属性中,身份验证设置位于“身份验证委派”选项卡上。
2
摘要和 WDigest 身份验证 - 使用摘要或 WDigest 身份验证,客户端会发出请求。 Forefront TMG 将拒绝请求 并要求客户端提供身份验证信息。 凭据将被发送到域控制器进行验证。 有关详细信息,请参阅关于身份验证方 法。
集成 Windows 身份验证(NTLM) - 使用 NTLM、Kerberos 和协商身份验证机制。 客户端计算机中的当前 Windows 信息将用于身份验证。 如果身份验证交换失败,则浏览器会不断发出提示,直到用户输入有效凭据或 关闭提示对话框。 有关此身份验证方法的详细信息,请参阅关于身份验证方法。
基于窗体的身份验证 可以使用 Forefront TMG 中基于窗体的身份验证来发布任何 Web 服务器。 Forefront TMG 提供了三种基于窗体的 身份验证:
密码窗体 - 用户在窗体中输入用户名和密码。 这是 AD DS、LDAP 和 RADIUS 凭据验证所需的凭据类型。
1
通行码窗体 - 用户在窗体中输入用户名和通行码。 这是 SecurID 和 RADIUS 一次性密码验证所需的凭据类 型。
Forefront TMG 安装目录\Templates\CookieAuthTemplates
Forefront TMG 使用移动客户端提供的用户代理头,以便确定要提供的窗体类型。
基于窗体的身份验证中的密码管理 使用基于窗体的身份验证时,Forefront TMG 允许您向用户发出有关密码将要(在配置的天数后)过期的警告,并 允许用户更改其密码。 可以单独或组合使用这两个功能。 例如,可以警告用户其密码将要过期,但不允许用户更 改其密码。 或者,也可以允许用户更改密码,但不提供有关密码将要过期的警告。
注意: 如果您未将访问权限限制到通过身份验证的用户,则与将允许访问规则应用于所有用户的情况一样,Forefront
TMG 将不验证用户的凭据。 Forefront TMG 将依照所配置的委派方法,使用用户的凭据向 Web 服务器进行身份 验证。
建议将每个发布规则应用于所有通过身份验证的用户或特定用户集,而不是选择“要求 Web 侦听器上的所有用 户进行身份验证”,该选项要求通过侦听器连接的所有用户都进行身份验证。
允许用户更改其密码时,该选项在登录窗体上将可用。 将 Forefront TMG 配置为向用户发出有关密码将要过期的 警告时,用户将收到一个独立的警告页,用户在该页上可以选择是否更改其密码。 有关如何配置更改密码功能的说 明,请参阅配置更改密码功能。
注意: 可以全面自定义基于窗体的身份验证的 HTML 窗体。
将身份验证委派给 Forefront TMG 后面的 Web 服务器,如运行 SharePoint Portal Server 2007 的服务器。 注意:
前两部分在接收客户端请求的 Web 侦听器上进行配置。 第三个部分在发布规则上进行配置。 这意味着可以针对 不同的规则使用相同的侦听器,并可以进行不同类型的委派。
3
基本 在基本委派中,Forefront TMG 以纯文本形式将凭据转发到要求凭据的服务器。 如果身份验证失败,Forefront TMG 会根据 Web 侦听器上配置的身份验证类型提示用户进行身份验证。 如果服务器需要其他类型的凭据,Forefront TMG 将触发警报。
NTLM 在 NTLM 委派中,Forefront TMG 通过使用 NTLM 质询/响应身份验证协议委派凭据。 如果身份验证失败, Forefront TMG 会将该委派替换为 Web 侦听器所使用的身份验证类型。 如果服务器需要其他类型的凭据, Forefront TMG 将触发警报。
如果将 ForefrFra Baidu biblioteknt TMG 配置为要求身份验证,在发布规则应用于特定用户集或“所有通过身份验证的用户” 时,或 Web 侦听器配置为“要求所有用户进行身份验证”时,Forefront TMG 会在转发请求之前验证凭据。
默认情况下,客户端浏览器的语言设置将决定 Forefront TMG 提供的窗体的语言。 Forefront TMG 提供 26 种语言的窗体。 也可以不考虑浏览器的语言,将 Forefront TMG 配置为提供特定语言的窗体。
在要求提供客户端证书而用户拒绝提供证书的基于窗体的身份验证方案中,用户可以访问登录窗体。 此时, Forefront TMG 会拒绝登录,因为缺少客户端证书。
窗体自定义涉及修改 Strings.txt 文件。 如果将 Strings.txt 文件提供给第三方进行修改,请验证未在文 件中添加非文本内容,因为添加此类内容可能会为网络攻击提供途径。
通行码/密码窗体 - 用户输入用户名和通行码以及用户名和密码。 用户名和通行码用于进行 Forefront TMG 身 份验证,方法是应用 SecurID 或 RADIUS 一次性密码身份验证方法。 用户名和密码用于委派。
退回到基本身份验证 默认情况下,当基于窗体的身份验证无法用于特定客户端时,Forefront TMG 将要求改用基本身份验证。 这将在用 户代理映射集合中的 Forefront TMG COM 中进行配置:
关于 Web 发布中的身份验证
相关主题
当客户端请求访问已发布的内部 Web 服务器时,Forefront TMG 的身份验证过程包括以下三个部分:
接收客户端凭据。
依据身份验证提供程序(如 Active Directory 域服务 (AD DS)、RADIUS 或 SecurID 身份验证管理器)验证客户端凭 据。
下图演示了基于窗体的身份验证的身份验证过程。 请注意,这是简化的过程描述,用于介绍涉及的主要步骤。
步骤 1,接收客户端凭据 - 客户端发送与“内部网络”中公司 Outlook Web Access 服务器建立连接的请求。 客户端以 HTML 格式提供凭据。
步骤 2 和 3,发送凭据 - Forefront TMG 将凭据发送到身份验证提供程序(例如,用于 AD DS 身份验证的域控制器或 RADIUS 服务器),然后接收来自身份验证提供程序的、关于已对用户进行身份验证的确认。
客户端证书身份验证 在客户端证书方案中,客户端提供一个证书,然后 Forefront TMG 基于该证书对客户端进行身份验证。 这可能是 一个嵌入在智能卡中的证书,也可能是移动设备用于连接到 Microsoft ActiveSync 时使用的证书。
验证客户端凭据的方法
Forefront TMG 支持以下用于验证客户端凭据的服务器类型: