Portal web con SSO (beta)
Requisitos y limitaciones clave
Portal Web 2026 con SSO está diseñado para el Creativo tema y utiliza todas las personalizaciones de AdminTool > Web > Personalización del Portal Web. Si el tema seleccionado no es Creativo , el Portal Web no se muestra.
Cuando está habilitado en una granja, todos los servidores deben ejecutar el mismo versión de Remote Access y estar habilitado para Portal Web 2026 con SSO
Esta función es Beta y debería no ser implementado en servidores de producción.
¿Por qué un nuevo portal web?
Comparado con el Portal Web anterior, esta implementación ofrece mayor fiabilidad y mejor rendimiento bajo carga. Además, permite:
-
Capacidades avanzadas de SSO
- Autenticación integrada de Windows (Negociar / Kerberos / NTLM)
- Integración de proveedor de identidad de terceros (actualmente SAML)
-
Controles de seguridad más fuertes
- Protecciones antifalsificación integradas
- Limitación de tasa de endpoint
- Autenticación moderna y controles de cookies/sesiones
Su arquitectura nos permitirá abordar fácilmente cualquier comentario de auditoría de seguridad potencial.
También es un producto más accesible a través de recomendaciones y un mejor contraste.
Flexibilidad del servidor web (Kestrel por defecto)
La aplicación no está vinculada a un único servidor web front-end. Por defecto, se ejecuta en Kestrel Puerto HTTP 81. Puede ser precedido por IIS o Apache como un proxy inverso al cambiar la configuración del servidor web.
Ejemplo: proxy inverso de Apache al servicio del Portal 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"
Esto mantiene la lógica del Portal Web sin cambios mientras Apache maneja la exposición pública de HTTP/HTTPS.
Por favor, contacte al equipo de desarrollo si está interesado, ya que este escenario aún no es accesible desde el programa AdminTool y debe configurarse manualmente.
Habilitar Portal Web 2026 con SSO
- Abrir AdminTool
- Ir a: Web > Servidor web
- Habilitar: Portal web 2026 con SSO
Importante esta opción es Beta. Úselo solo en entornos de prueba.
Modos de inicio de sesión compatibles
Portal Web 2026 con SSO soporta:
- Formulario de inicio de sesión tradicional utilizando credenciales de Windows
- Credenciales web. Ver: https://docs.tsplus.net/tsplus/web-credentials/
- Autenticación integrada de Windows (automática en escenarios de confianza / locales)
- Proveedor de identidad externo a través de SAML como Entra ID (anteriormente Azure AD) o Okta
Nota: Soporte para autenticación externa a través de OIDC planificado más tarde, a pedido
comportamiento de 2FA
2FA se aplica a los flujos de cuentas estándar, incluyendo:
- Formulario de inicio de sesión utilizando credenciales de Windows
- Credenciales web
- Autenticación integrada de Windows
Los proveedores de autenticación externa a menudo imponen su propio MFA / 2FA. Por lo tanto, la configuración de 2FA establecida en el complemento de 2FA de Remote Access no se aplica a este escenario.
El bypass de red local está disponible a través de
CustomSettings:Bypass de 2FA para red local
parámetro ubicado en el archivo:
C:\Program Files (x86)\TSplus\Clients\webportal\appsettings.json
, donde
C:\Program Files (x86)\TSplus
es la carpeta de configuración de TSplus Remote Access. Cuando está habilitado, el bypass ocurre solo si el cliente y la puerta de enlace están en la misma subred privada.
Configurar el flujo de autenticación de Windows
Para los usuarios que inician sesión con autenticación de Windows, se requiere uno de los siguientes:
-
Pre-registre credenciales con el comando TSplus:
AdminTool.exe /windowscredential-agregar o actualizar. Consulte la documentación en https://docs.tsplus.net/tsplus/commands-list/#agregar-o-actualizar-credenciales-en-el-gestor-de-credenciales-de-windows-windowscredential-addorupdate - O deje que el usuario inicie sesión una vez a través del formulario de inicio de sesión del Portal Web con credenciales de Windows.
Para configurar la autenticación integrada de Windows, consulte: Habilitar la autenticación integrada de Windows en un dominio de Active Directory. Dado que este modo de autenticación es arduo de configurar, los clientes a menudo prefieren establecer un proveedor de identidad externo.
Configurar la autenticación externa (SAML)
Configuraciones requeridas en
appsettings.json
El archivo
appsettings.json
se encuentra en
C:\Program Files (x86)\TSplus\Clients\webportal
, donde
C:\Program Files (x86)\TSplus
es la carpeta de configuración de TSplus Remote Access.
Edita el
Saml2
sección:
-
IdPMetadata -
Emisor -
Destino de inicio de sesión únicoopcional si los metadatos lo proporcionan -
Destino de cierre de sesión únicoopcional si los metadatos lo proporcionan - Campos relacionados con el certificado
Disponibilidad de contraseña de Windows para el lanzamiento de sesión
Para la autenticación SAML externa, el lanzamiento de sesiones aún requiere credenciales de Windows utilizables. Utilice uno de:
-
Registrar credenciales de Windows con el comando:
AdminTool.exe /windowscredential-agregar o actualizar. Consulte la documentación en https://docs.tsplus.net/tsplus/commands-list/#agregar-o-actualizar-credenciales-en-el-gestor-de-credenciales-de-windows-windowscredential-addorupdate -
O reenvíe la contraseña de la reclamación de IdP configurando
CustomSettings:UseSamlPasswordClaimal tipo de reclamación que contiene la contraseña de Windows.
Si no hay contraseña disponible en la reclamación o en el almacén de credenciales, la validación del usuario falla.
Referencia completa del archivo de configuración appsettings.json
El archivo
appsettings.json
se encuentra en
C:\Program Files (x86)\TSplus\Clients\webportal
, donde
C:\Program Files (x86)\TSplus
es la carpeta de configuración de TSplus Remote Access.
Registro
| Parámetro | Propósito | Valores posibles | Predeterminado |
|---|---|---|---|
Registro:NivelDeRegistro:Predeterminado
|
Nivel mínimo de registro global. |
Rastro
,
Depurar
,
Información
,
Advertencia
,
Error
,
Crítico
,
Ninguno
|
Información
|
Registro:NivelDeRegistro:Microsoft.AspNetCore
|
Nivel de registro del marco ASP.NET Core. | Igual que arriba |
Advertencia
|
Registro:NivelDeRegistro:Microsoft.AspNetCore.Autenticación
|
Nivel de registro del subsistema de autenticación. | Igual que arriba |
Advertencia
|
Configuración global del host
| Parámetro | Propósito | Valores posibles | Predeterminado |
|---|---|---|---|
HostsPermitidos
|
Filtrado de encabezados de host para la protección del host de ASP.NET Core. |
*
(todos) o lista de hosts separados por punto y coma
|
*
|
Limitación de tasa de IP
| Parámetro | Propósito | Valores posibles | Predeterminado |
|---|---|---|---|
IpRateLimiting: HabilitarLimitaciónDeTasaDePuntoFinal
|
Habilita reglas de limitación específicas para el endpoint. |
verdadero
/
falso
|
verdadero
|
IpRateLimiting:StackBlockedRequests
|
Si
verdadero
, las solicitudes bloqueadas continúan aumentando contadores.
|
verdadero
/
falso
|
falso
|
IpRateLimiting:HttpStatusCode
|
Estado HTTP devuelto cuando la solicitud es bloqueada. |
Código HTTP entero (típicamente
429
)
|
429
|
IpRateLimiting:EncabezadoRealIp
|
Encabezado utilizado para resolver la IP del cliente detrás del proxy. | Nombre del encabezado |
X-Forwarded-For
|
IpRateLimiting:ClientIdHeader
|
Encabezado de client-id opcional para limitación de tasa personalizada. | Nombre del encabezado |
X-ClientId
|
IpRateLimiting:ReglasGenerales
Cada objeto de regla tiene:
| Parámetro | Propósito | Valores posibles | Predeterminado en el archivo enviado |
|---|---|---|---|
Endpoint
|
Ruta/método patrón para proteger. |
Formato
VERBO:/ruta
|
Múltiples valores predeterminados (ver más abajo) |
Período
|
Ventana de tarifas. |
e.j.
1s
,
1m
,
5m
,
1h
,
1d
|
5m
(for all default rules)
|
Límite
|
Máx. solicitudes en el período. | Número entero positivo |
5
(for all default rules)
|
Puntos finales protegidos por defecto:
-
POST:/Cuenta/Iniciar sesión -
POST:/Cuenta/RestablecerContraseña -
POST:/Lanzar -
POST:/RemoteApp -
POST:/2FA/Validate -
POST:/2FA/ReenviarCódigo -
POST:/2FA/Estado
Saml2
| Parámetro | Propósito | Valores posibles | Predeterminado |
|---|---|---|---|
Saml2:IdPMetadata
|
URL de metadatos de IdP utilizada para cargar la configuración del proveedor SAML. | URL HTTPS válida |
""
|
Saml2:Emisor
|
ID de entidad SP (esta identidad del Portal Web). | cadena URI |
""
|
Saml2:DestinoDeInicioDeSesiónÚnico
|
URL del endpoint IdP SSO (se puede resolver automáticamente a partir de los metadatos). | URL HTTPS |
""
|
Saml2:DestinoDeCierreDeSesiónÚnico
|
URL del endpoint SLO de IdP (se puede resolver automáticamente a partir de los metadatos). | URL HTTPS |
""
|
Saml2:SignatureAlgorithm
|
Algoritmo de firma XML. | Valor URI aceptado por la biblioteca SAML |
http://www.w3.org/2001/04/xmldsig-more#rsa-sha256
|
Saml2:ArchivoDelCertificadoDeFirma
|
Archivo de certificado de firma de SP local (relativo a la ruta base de la aplicación). | Nombre/ruta del archivo |
""
|
Saml2:ContraseñaDelCertificadoDeFirma
|
Contraseña para el archivo del certificado de firma. | Cadena |
""
|
Saml2:ArchivoDelCertificadoDeValidaciónDeFirma
|
Archivo de certificado IdP utilizado para validar firmas (opcional si los metadatos proporcionan certificados). | Nombre/ruta del archivo |
""
|
Saml2:ModoDeValidaciónDeCertificado
|
Modo de validación de la cadena de certificados. |
Ninguno
,
PeerTrust
,
ChainTrust
,
Confianza entre pares o cadena
,
CustomRootTrust
|
ChainTrust
|
Saml2:ModoDeRevocación
|
Comportamiento de revocación de certificados. |
NoCheck
,
En línea
,
Sin conexión
|
Sin conexión
|
Saml2:XmlCanonicalizationMethod
|
Algoritmo de canonicalización XML URI. | URI de canonicalización XML-DSig |
http://www.w3.org/2001/10/xml-exc-c14n#
|
ConfiguracionesPersonalizadas
En
appsettings.json
, estos valores se almacenan como cadenas (
true
/
falso
) y mapeado a booleanos mediante la configuración de enlace de .NET.
| Parámetro | Propósito | Valores posibles | Predeterminado |
|---|---|---|---|
CustomSettings:UsarRutaCompletaDeAplicación
|
Controla si se utiliza la ruta completa de la aplicación al listar/iniciar aplicaciones asignadas. |
true
/
falso
|
falso
|
CustomSettings:EnableAutoWindowsAuthenticationOnLocalhost
|
Permite la autenticación automática de Windows en el escenario de localhost/loopback. |
true
/
falso
|
falso
|
CustomSettings:EnablePasswordEncryption
|
Encripta el dominio/nombre de usuario/contraseña en la cadena de conexión de lanzamiento HTML5 utilizando parámetros RSA. |
true
/
falso
|
true
|
CustomSettings:Bypass de 2FA para red local
|
Elimina la autenticación de dos factores del portal web cuando el cliente está en la misma subred privada que el servidor. |
true
/
falso
|
falso
|
CustomSettings:UseSamlPasswordClaim
|
Tipo de reclamación SAML utilizado como contraseña de Windows reenviada para el lanzamiento de sesión. | Tipo de reclamación URI/nombre o cadena vacía |
""
|