Portal Web com SSO (beta)
Pré-requisitos e limitações principais
Portal Web 2026 com SSO é projetado para o Criativo tema e usa todas as personalizações do AdminTool > Web > Personalização do Portal Web. Se o tema selecionado não Criativo , o Portal da Web não exibe.
Quando ativado em uma fazenda, todos os servidores devem executar o mesma versão de Remote Access e ser ativado para Portal Web 2026 com SSO
Este recurso é Beta e deve não ser implantado em servidores de produção.
Por que um novo Portal Web?
Comparado com o Portal Web anterior, esta implementação oferece maior confiabilidade e melhor desempenho sob carga. Além disso, permite:
-
Capacidades avançadas de SSO
- Autenticação Integrada do Windows (Negociar / Kerberos / NTLM)
- Integração de provedor de identidade de terceiros (atualmente SAML)
-
Controles de segurança mais robustos
- Proteções anti-falsificação integradas
- Limitação de taxa de endpoint
- Autenticação moderna e controles de cookie/sessão
Sua arquitetura nos permitirá abordar facilmente qualquer feedback de auditoria de segurança potencial.
Também é uma produto mais acessível por meio de recomendações e contraste aprimorado.
Flexibilidade do servidor web (Kestrel por padrão)
A aplicação não está vinculada a um único servidor web front-end. Por padrão, ela é executada em Kestrel (Porta HTTP 81). Pode ser precedido por IIS ou Apache como um proxy reverso alterando a configuração do servidor web.
Exemplo: proxy reverso Apache para o serviço Web Portal
# 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"
Isso mantém a lógica do Portal Web inalterada enquanto o Apache lida com a exposição pública de HTTP/HTTPS.
Por favor, entre em contato com a equipe de desenvolvimento se estiver interessado, pois este cenário ainda não está acessível pelo programa AdminTool e deve ser configurado manualmente.
Ativar Portal Web 2026 com SSO
- Abrir AdminTool
- Vá para: Web > Servidor web
- Ativar: Portal web 2026 com SSO
Importante esta opção é Beta. Use apenas em ambientes de teste.
Modos de entrada suportados
Portal Web 2026 com SSO suporta:
- Formulário de login tradicional usando credenciais do Windows
- Credenciais da web. Veja: https://docs.tsplus.net/tsplus/web-credentials/
- Autenticação Integrada do Windows (automática em cenários de confiança / locais)
- Provedor de identidade externo via SAML como Entra ID (anteriormente Azure AD) ou Okta
Nota: Suporte para autenticação externa via OIDC planejado posteriormente, sob solicitação
comportamento de 2FA
2FA é aplicado aos fluxos de conta padrão, incluindo:
- Formulário de login usando credenciais do Windows
- Credenciais da Web
- Autenticação Integrada do Windows
Provedores de autenticação externa frequentemente impõem seu próprio MFA / 2FA. Portanto, a configuração de 2FA definida no complemento 2FA do Remote Access não se aplica a este cenário.
O bypass de rede local está disponível através de
CustomSettings:Bypass2FAParaRedeLocal
parâmetro localizado no arquivo:
C:\Program Files (x86)\TSplus\Clients\webportal\appsettings.json
, onde
C:\Program Files (x86)\TSplus
é a pasta de configuração do TSplus Remote Access. Quando ativado, o bypass ocorre apenas se o cliente e o gateway estiverem na mesma sub-rede privada.
Configurar o fluxo de autenticação do Windows
Para usuários que fazem login com autenticação do Windows, um dos seguintes é necessário:
-
Pré-registre credenciais com o comando TSplus:
AdminTool.exe /windowscredential-addorupdateVeja a documentação em https://docs.tsplus.net/tsplus/commands-list/#adicionar-ou-atualizar-credenciais-no-gerenciador-de-credenciais-do-windows-windowscredential-addorupdate - Ou deixe o usuário fazer login uma vez através do formulário de login do Portal Web com credenciais do Windows.
Para configurar a autenticação integrada do Windows, consulte: Ativar a autenticação integrada do Windows em um domínio do Active Directory. Como esse modo de autenticação é difícil de configurar, os clientes costumam preferir configurar um provedor de identidade externo.
Configurar autenticação externa (SAML)
Configurações necessárias em
appsettings.json
O arquivo
appsettings.json
está localizado em
C:\Program Files (x86)\TSplus\Clients\webportal
, onde
C:\Program Files (x86)\TSplus
é a pasta de configuração do TSplus Remote Access.
Edite o
Saml2
seção:
-
IdPMetadata -
Emissor -
DestinoSingleSignOnopcional se os metadados fornecerem isso -
DestinoLogoutÚnicoopcional se os metadados fornecerem isso - Campos relacionados ao certificado
Disponibilidade da senha do Windows para lançamento de sessão
Para autenticação SAML externa, o lançamento de sessões ainda requer credenciais do Windows utilizáveis. Use um dos:
-
Registrar credenciais do Windows com o comando:
AdminTool.exe /windowscredential-addorupdateVeja a documentação em https://docs.tsplus.net/tsplus/commands-list/#adicionar-ou-atualizar-credenciais-no-gerenciador-de-credenciais-do-windows-windowscredential-addorupdate -
Ou encaminhe a senha da reivindicação do IdP configurando
CustomSettings:UseSamlPasswordClaimao tipo de reclamação que contém a senha do Windows.
Se nenhuma senha estiver disponível no repositório de reivindicações ou credenciais, a validação do usuário falha.
Referência completa do arquivo de configuração appsettings.json
O arquivo
appsettings.json
está localizado em
C:\Program Files (x86)\TSplus\Clients\webportal
, onde
C:\Program Files (x86)\TSplus
é a pasta de configuração do TSplus Remote Access.
Registro
| Parâmetro | Propósito | Valores possíveis | Padrão |
|---|---|---|---|
Registro:NívelDeLog:Padrão
|
Nível mínimo de log global. |
Rastrear
,
Depuração
,
Informação
,
Atenção
,
Erro
,
Crítico
,
Nenhum
|
Informação
|
Logging:LogLevel:Microsoft.AspNetCore
|
Nível de log do framework ASP.NET Core. | Mesmo que acima |
Atenção
|
Logging:LogLevel:Microsoft.AspNetCore.Authentication
|
Nível de log do subsistema de autenticação. | Mesmo que acima |
Atenção
|
Configuração global do host
| Parâmetro | Propósito | Valores possíveis | Padrão |
|---|---|---|---|
Hosts Permitidos
|
Filtragem de cabeçalho do host para proteção de host ASP.NET Core. |
*
(todos) ou lista de hosts separada por ponto e vírgula
|
*
|
Limitação de Taxa de IP
| Parâmetro | Propósito | Valores possíveis | Padrão |
|---|---|---|---|
IpRateLimiting:AtivarLimitaçãoDeTaxaDeEndpoint
|
Habilita regras de limitação específicas para endpoints. |
verdadeiro
/
falso
|
verdadeiro
|
IpRateLimiting:StackBlockedRequests
|
Se
verdadeiro
, solicitações bloqueadas continuam aumentando contadores.
|
verdadeiro
/
falso
|
falso
|
IpRateLimiting:HttpStatusCode
|
Status HTTP retornado quando a solicitação é bloqueada. |
Código HTTP inteiro (tipicamente
429
)
|
429
|
IpRateLimiting:RealIpHeader
|
Cabeçalho usado para resolver o IP do cliente atrás do proxy. | Nome do cabeçalho |
X-Forwarded-For
|
IpRateLimiting:ClientIdHeader
|
Cabeçalho opcional de client-id para limitação de taxa personalizada. | Nome do cabeçalho |
X-ClientId
|
IpRateLimiting:Regras Gerais
Cada objeto de regra possui:
| Parâmetro | Propósito | Valores possíveis | Padrão no arquivo enviado |
|---|---|---|---|
Endpoint
|
Rota/padrão de método para proteger. |
Formato
VERBO:/caminho
|
Múltiplas configurações padrão (veja abaixo) |
Período
|
Janela de taxa. |
e.g.
1s
,
1m
,
5m
,
1h
,
1d
|
5m
(para todas as regras padrão)
|
Limite
|
Máximo de solicitações no período. | Número inteiro positivo |
5
(para todas as regras padrão)
|
Endpoints protegidos por padrão:
-
POST:/Conta/Login -
POST:/Conta/RedefinirSenha -
POST:/Lançamento -
POST:/RemoteApp -
POST:/2FA/Validate -
POST:/2FA/ReenviarCódigo -
POST:/2FA/Status
Saml2
| Parâmetro | Propósito | Valores possíveis | Padrão |
|---|---|---|---|
Saml2:IdPMetadata
|
URL de metadados do IdP usada para carregar a configuração do provedor SAML. | URL HTTPS Válido |
""
|
Saml2:Issuer
|
ID da entidade SP (esta identidade do Portal Web). | string URI |
""
|
Saml2:DestinoDeAutenticaçãoÚnica
|
URL do endpoint SSO do IdP (pode ser resolvido automaticamente a partir dos metadados). | URL HTTPS |
""
|
Saml2:SingleLogoutDestination
|
URL do endpoint SLO do IdP (pode ser resolvido automaticamente a partir dos metadados). | URL HTTPS |
""
|
Saml2:SignatureAlgorithm
|
Algoritmo de assinatura XML. | Valor URI aceito pela biblioteca SAML |
http://www.w3.org/2001/04/xmldsig-more#rsa-sha256
|
Saml2:ArquivoDoCertificadoDeAssinatura
|
Arquivo de certificado de assinatura local SP (relativo ao caminho base do aplicativo). | Nome/caminho do arquivo |
""
|
Saml2:SenhaDoCertificadoDeAssinatura
|
Senha para o arquivo de certificado de assinatura. | String |
""
|
Saml2:ArquivoDeCertificadoDeValidaçãoDeAssinatura
|
Arquivo de certificado IdP usado para validar assinaturas (opcional se os metadados fornecerem certificados). | Nome/caminho do arquivo |
""
|
Saml2:ModoDeValidaçãoDoCertificado
|
Modo de validação da cadeia de certificados. |
Nenhum
,
PeerTrust
,
ChainTrust
,
Confiança de Parceria ou Cadeia
,
CustomRootTrust
|
ChainTrust
|
Saml2:ModoDeRevogação
|
Comportamento de revogação de certificado. |
NoCheck
,
Online
,
Offline
|
Offline
|
Saml2:XmlCanonicalizationMethod
|
URI do algoritmo de canonização XML. | URI de canonização XML-DSig |
http://www.w3.org/2001/10/xml-exc-c14n#
|
ConfiguraçõesPersonalizadas
Em
appsettings.json
, esses valores são armazenados como strings (
true
/
falso
) e mapeado para booleanos por vinculação de configuração .NET.
| Parâmetro | Propósito | Valores possíveis | Padrão |
|---|---|---|---|
CustomSettings:UsarCaminhoCompletoDoAplicativo
|
Controla se o caminho completo do aplicativo é usado ao listar/iniciar aplicativos atribuídos. |
true
/
falso
|
falso
|
CustomSettings:AtivarAutenticaçãoAutomáticaWindowsNoLocalhost
|
Permite autenticação automática do Windows no cenário localhost/loopback. |
true
/
falso
|
falso
|
CustomSettings:AtivarCriptografiaDeSenha
|
Criptografa domínio/nome de usuário/senha na string de conexão de lançamento HTML5 usando parâmetros RSA. |
true
/
falso
|
true
|
CustomSettings:Bypass2FAParaRedeLocal
|
Ignora o 2FA do Portal Web quando o cliente está na mesma sub-rede privada que o servidor. |
true
/
falso
|
falso
|
CustomSettings:UseSamlPasswordClaim
|
Tipo de reivindicação SAML usado como senha do Windows encaminhada para o lançamento da sessão. | Tipo de reivindicação URI/nome ou string vazia |
""
|