带有SSO(测试版)的Web门户
关键前提和限制
Web Portal 2026与SSO设计用于 创意 主题和使用来自 AdminTool > Web > Web Portal Customization 的所有自定义。如果选择的主题不是 创意 网页门户不显示。
当在一个农场中启用时,所有服务器必须运行该 相同的远程访问版本 并启用 Web Portal 2026与SSO
此功能是 测试版 并且应该 不 在生产服务器上部署。
为什么要一个新的网络门户?
与之前的Web门户相比,此实现提供了更高的可靠性和更好的负载性能。此外,它允许:
-
高级SSO功能
- Windows集成认证(协商/ Kerberos / NTLM)
- 第三方身份提供者集成(当前为SAML)
-
更强的安全控制
- 内置反伪造保护
- 端点速率限制
- 现代身份验证和cookie/会话控制
它的架构将使我们能够轻松应对任何潜在的安全审计反馈。
它也是一个 更易获取的产品 通过推荐和改善对比。
Web 服务器灵活性(默认使用 Kestrel)
该应用程序不绑定到一个前端Web服务器。默认情况下,它运行在 海雀 (HTTP 端口 81)。它可以由...前置 IIS 或 阿帕奇 作为反向代理,通过更改Web服务器配置。
示例:Apache 反向代理到 Web 门户服务
# Apache VirtualHost exampleProxyPreserveHost OnProxyPass / http://127.0.0.1:81/ProxyPassReverse / http://127.0.0.1:81/
RequestHeader set X-Forwarded-Proto "https"RequestHeader set X-Forwarded-For "%{REMOTE_ADDR}s"
这保持了Web Portal逻辑不变,而Apache处理公共HTTP/HTTPS暴露。
如果您感兴趣,请联系开发团队,因为此场景尚无法通过AdminTool程序访问,必须手动配置。
启用带SSO的Web门户2026
- 打开 管理工具
- 前往:Web > Web 服务器
- 启用: 2026年带有单点登录的网络门户
重要 此选项为测试版。仅在测试环境中使用。
支持的登录模式
Web Portal 2026 支持 SSO:
- 使用Windows凭据的传统登录表单
- 网络凭据。请参阅: https://docs.tsplus.net/tsplus/web-credentials/
- Windows集成认证(在受信任/本地场景中自动)
- 外部身份提供者通过 SAML 例如 Entra ID(前称 Azure AD)或 Okta
注意:通过外部身份验证的支持 OIDC 稍后计划,根据请求
2FA行为
2FA 应用于标准账户流程,包括:
- 使用Windows凭据的登录表单
- 网络凭证
- Windows集成认证
外部身份验证提供商通常会强制执行他们自己的多因素身份验证 / 双因素身份验证。因此,在Remote Access 2FA附加组件中设置的双因素身份验证配置不适用于此场景。
本地网络绕过可通过
自定义设置:本地网络的两因素认证绕过
参数位于文件中:
C:\Program Files (x86)\TSplus\Clients\webportal\appsettings.json
,哪里
C:\Program Files (x86)\TSplus
这是 TSplus Remote Access 设置文件夹。当启用时,仅在客户端和网关位于同一私有子网时发生绕过。
配置Windows身份验证流程
对于使用 Windows 身份验证登录的用户,以下之一是必需的:
-
预注册凭据与TSplus命令:
AdminTool.exe /windowscredential-addorupdate请参阅文档。 https://docs.tsplus.net/tsplus/commands-list/#add-or-update-credentials-to-the-windows-credentials-manager-windowscredential-addorupdate - 或者让用户通过Web门户登录表单使用Windows凭据一次性登录。
要配置 Windows 集成身份验证,请参见:在 Active Directory 域上启用 Windows 集成身份验证。由于此身份验证模式配置起来比较繁琐,客户通常更倾向于设置外部身份提供者。
配置外部身份验证(SAML)
所需设置在
appsettings.json
文件
appsettings.json
位于
C:\Program Files (x86)\TSplus\Clients\webportal
,哪里
C:\Program Files (x86)\TSplus
是 TSplus Remote Access 设置文件夹。
编辑
Saml2
部分:
-
IdP元数据 -
发行人 -
单点登录目标可选(如果元数据提供) -
单一注销目的地可选(如果元数据提供) - 证书相关字段
Windows密码可用性以启动会话
对于外部 SAML 身份验证,启动会话仍然需要可用的 Windows 凭据。使用以下之一:
-
注册 Windows 凭据命令:
AdminTool.exe /windowscredential-addorupdate请参阅文档。 https://docs.tsplus.net/tsplus/commands-list/#add-or-update-credentials-to-the-windows-credentials-manager-windowscredential-addorupdate -
或通过设置从 IdP 声明转发密码
自定义设置:使用Saml密码声明到包含Windows密码的索赔类型。
如果从索赔或凭证存储中没有可用的密码,则用户验证失败。
完整的 appsettings.json 配置文件参考
文件
appsettings.json
位于
C:\Program Files (x86)\TSplus\Clients\webportal
,哪里
C:\Program Files (x86)\TSplus
是 TSplus Remote Access 设置文件夹。
记录
| 参数 | 目的 | 可能的值 | 默认 |
|---|---|---|---|
日志:日志级别:默认
|
全局最低日志级别。 |
追踪
,
调试
,
信息
,
警告
,
错误
,
关键
,
无
|
信息
|
日志:日志级别:Microsoft.AspNetCore
|
ASP.NET Core 框架日志级别。 | 与上述相同 |
警告
|
日志:日志级别:Microsoft.AspNetCore.Authentication
|
身份验证子系统日志级别。 | 与上述相同 |
警告
|
全局主机设置
| 参数 | 目的 | 可能的值 | 默认 |
|---|---|---|---|
允许的主机
|
ASP.NET Core 主机保护的主机头过滤。 |
*
(所有)或以分号分隔的主机列表
|
*
|
IP速率限制
| 参数 | 目的 | 可能的值 | 默认 |
|---|---|---|---|
IpRateLimiting:启用端点速率限制
|
启用特定于端点的限流规则。 |
真实
/
错误
|
真实
|
IpRateLimiting:StackBlockedRequests
|
如果
真实
被阻止的请求继续增加计数器。
|
真实
/
错误
|
错误
|
IpRateLimiting:HttpStatusCode
|
请求被阻止时返回的HTTP状态。 |
整数HTTP代码(通常
429
)
|
429
|
IpRateLimiting:RealIpHeader
|
用于解析代理后客户端IP的标题。 | 标题名称 |
X-Forwarded-For
|
IpRateLimiting:ClientIdHeader
|
可选的客户端ID头用于自定义速率限制。 | 标题名称 |
X-ClientId
|
IpRateLimiting:GeneralRules
每个规则对象都有:
| 参数 | 目的 | 可能的值 | 发货文件中的默认值 |
|---|---|---|---|
端点
|
保护的路线/方法模式。 |
格式
动词:/路径
|
多个默认设置(见下文) |
周期
|
评分窗口。 |
例如
1秒
,
1分钟
,
5分钟
,
1小时
,
1天
|
5分钟
(适用于所有默认规则)
|
限制
|
在此期间的最大请求数。 | 正整数 |
5
(适用于所有默认规则)
|
默认受保护的端点:
-
POST:/Account/Login -
POST:/Account/ResetPassword -
POST:/Launch -
POST:/远程应用 -
POST:/2FA/验证 -
POST:/2FA/ResendCode -
POST:/2FA/状态
Saml2
| 参数 | 目的 | 可能的值 | 默认 |
|---|---|---|---|
Saml2:IdPMetadata
|
用于加载 SAML 提供程序配置的 IdP 元数据 URL。 | 有效的 HTTPS URL |
""
|
Saml2:Issuer
|
SP 实体 ID(此 Web 门户身份)。 | URI 字符串 |
""
|
Saml2:单点登录目标
|
IdP SSO 端点 URL(可以从元数据自动解析)。 | HTTPS URL |
""
|
Saml2:单点注销目的地
|
IdP SLO 端点 URL(可以从元数据自动解析)。 | HTTPS URL |
""
|
Saml2:签名算法
|
XML签名算法。 | SAML库接受的URI值 |
http://www.w3.org/2001/04/xmldsig-more#rsa-sha256
|
Saml2:签名证书文件
|
本地 SP 签名证书文件(相对于应用程序基础路径)。 | 文件名/路径 |
""
|
Saml2:签名证书密码
|
签名证书文件的密码。 | 字符串 |
""
|
Saml2:签名验证证书文件
|
用于验证签名的 IdP 证书文件(如果元数据提供证书,则为可选)。 | 文件名/路径 |
""
|
Saml2:证书验证模式
|
证书链验证模式。 |
无
,
PeerTrust
,
链信
,
对等或链信任
,
自定义根信任
|
链信
|
Saml2:撤销模式
|
证书撤销行为。 |
不检查
,
在线
,
离线
|
离线
|
Saml2:XmlCanonicalizationMethod
|
XML 规范化算法 URI。 | XML-DSig 规范化 URI |
http://www.w3.org/2001/10/xml-exc-c14n#
|
自定义设置
在
appsettings.json
这些值被存储为字符串
真
/
false
) 并通过 .NET 配置绑定映射到布尔值。
| 参数 | 目的 | 可能的值 | 默认 |
|---|---|---|---|
自定义设置:使用应用程序完整路径
|
控制在列出/启动分配的应用程序时是否使用应用程序的完整路径。 |
真
/
false
|
false
|
自定义设置:在本地主机上启用自动Windows身份验证
|
允许在本地主机/回环场景中自动进行Windows身份验证。 |
真
/
false
|
false
|
自定义设置:启用密码加密
|
使用RSA参数在HTML5启动连接字符串中加密域名/用户名/密码。 |
真
/
false
|
真
|
自定义设置:本地网络的两因素认证绕过
|
当客户端与服务器在同一私有子网时,绕过Web门户的两因素身份验证。 |
真
/
false
|
false
|
自定义设置:使用Saml密码声明
|
用于会话启动的转发Windows密码的SAML声明类型。 | 索赔类型 URI/名称或空字符串 |
""
|