Sites e Aliases
Visão Geral
Em uma instalação padrão, App Builder aceita e responde a solicitações HTTP independentemente da URL. Isso é conveniente ao começar, mas pode levar a problemas mais adiante. Problemas surgem dos diferentes tratamentos de URLs.
- Os cookies HTTP podem ser restritos a um caminho específico, por exemplo
/App Builder
. O navegador da web do cliente trata os caminhos de cookies como sensíveis a maiúsculas e minúsculas; o servidor da web, pode não fazer isso. - Da mesma forma, os provedores de autenticação externa podem tratar o caminho como sensível a maiúsculas e minúsculas ao validar URLs de redirecionamento, como
https://example.com/App Builder/signin-SAML
. - Além disso, o navegador do cliente não permitirá que o servidor de aplicativos substitua um cookie inseguro por um cookie seguro.
Para evitar esses e outros problemas, os administradores devem tomar medidas para canonizar a URL. Embora isso possa ser alcançado por meio de regras de reescrita do servidor web, App Builder fornece suporte para canonização de URL por meio do recurso Sites e Aliases.
Sítios
Um site define uma URL canônica. Uma instalação padrão inclui um único site. O site não tem uma URL específica. Em vez disso, a URL é inferida da solicitação HTTP.
É possível definir vários sites e, portanto, vários URLs canônicos. Isso pode ser útil, por exemplo, ao enquadrar an App Builder aplicação. Veja Enquadramento abaixo.
Apenas um site pode ser configurado como o site "padrão". O site padrão é usado ao determinar a URL canônica. Veja Matching abaixo.
Alias
Um site pode ter zero ou mais aliases. Um alias é uma URL alternativa e não canônica que pode ser usada para acessar o App Builder instância.
Por exemplo, o App Builder a instância pode ter sido publicada no endereço interno https://machinename/App Builder
antes de ser publicado no endereço externo https://example.com/App Builder
. O endereço interno pode ser configurado como um alias para o endereço externo. Se a opção Redirect estiver habilitada, App Builder redirecionará automaticamente os navegadores do cliente do endereço interno para o endereço externo.
Configuração
Para gerenciar sites e aliases, comece fazendo login em App Builder como administrador, então:
- Mude para App Builder aplicação IDE.
- No painel Conectar, clique no botão Conectar à sua empresa.
- No menu à esquerda, clique no botão Provedores de segurança.
- No painel Configuração, clique no botão Gerenciar sites.
Os sites são compostos pelas seguintes propriedades:
- URL - URL canônica totalmente qualificada. Exemplo:
https://example.com/App Builder
. - Default - Indica se o site é tratado como o site padrão ao corresponder uma solicitação HTTP a um site. Veja Matching abaixo.
- Redirect - Indica que App Builder deve redirecionar os navegadores do cliente se uma solicitação HTTP corresponder ao site (ou a um dos aliases do site), mas não corresponder à URL canônica. Veja Redirect abaixo.
- Aliases - Lista de URLs alternativas associadas ao site. Elas são usadas para corresponder uma solicitação HTTP a um site. Veja Matching abaixo.
Para tornar um site o site "padrão", clique no botão Make Default. Observe que esse botão só fica visível se o site ainda não for o site padrão.
Canonização
A canonização consiste em duas etapas. Primeiro, App Builder corresponde à solicitação HTTP para um site. Então, App Builder redireciona o navegador do cliente para a URL canônica, se necessário.
Correspondência
Quando App Builder recebe uma solicitação HTTP, ele tenta associar a URL a um site ou alias. App Builder começa realizando uma partida "solta". Uma partida solta considera os seguintes critérios:
- Host - Nome do hospedar HTTP. Exemplo:
example.com
- Porta - Número da porta HTTP. Exemplo:
80
,443
- Caminho - Componente de caminho de URL. Não diferencia maiúsculas de minúsculas. Exemplo:
/App Builder
.
Observe que App Builder não considera o esquema nesta fase.
Para fins de correspondência flexível, os seguintes URLs são considerados equivalentes:
http://example.com/vinyl
- Esquema HTTP, caminho em letras minúsculas.https://example.com/App Builder
- Esquema HTTPS, caminho de caixa mista.
Observe que este algoritmo não permite um App Builder site exista dentro de outro. O seguinte não é suportado:
https://example.com/App Builder
https://example.com/App Builder/App Builder 2
App Builder escolhe a melhor correspondência com a seguinte precedência:
- Se a URL corresponder a um site, o site será selecionado.
- Se a URL corresponder a um alias, o site do alias será selecionado.
- Caso contrário, o site padrão é selecionado.
Redirecionar
Uma vez escolhido o local, App Builder determina se a solicitação deve continuar ou se um redirecionamento deve ser emitido.
- Se a opção Redirecionar estiver desabilitada, a solicitação poderá prosseguir.
- Se a opção Redirecionar estiver habilitada e a URL da solicitação não corresponder à URL do site, App Builder abortará a solicitação e responderá com um redirecionamento HTTP.
Neste estágio, App Builder executa uma correspondência "estrita". Uma correspondência estrita difere da correspondência frouxa em que:
- O caminho é tratado como sensível a maiúsculas e minúsculas.
- O esquema está sendo considerado.
Para fins de correspondência estrita, os seguintes URLs não são considerados equivalentes:
http://example.com/vinyl
- Esquema HTTP, caminho em letras minúsculas.https://example.com/App Builder
- Esquema HTTPS, caminho com maiúsculas e minúsculas.
Se a URL da solicitação HTTP não corresponder à URL do site, App Builder responde com um redirecionamento.
Proxies Reversos e Balanceadores de Carga
App Builder suporta proxies reversos e balanceadores de carga que encerram a conexão SSL antes do servidor web. Esses ambientes exigem configuração adicional. Veja Proxies reversos para mais informações.
Casos de Uso
Exigir HTTPS
Cada instância de App Builder DEVE ser protegido usando HTTPS. A conexão segura pode ser encerrada no servidor web ou em um proxy reverso. Independentemente disso, uma vez configurado, os administradores são fortemente encorajados a exigir que todos os clientes se conectem com HTTPS.
Isso pode ser alcançado com sites e aliases. Defina a URL do site para corresponder à URL segura, por exemplo https://example.com/App Builder
, e habilite a opção Redirect.
Revise as informações sobre Reverse Proxies e Load Balancers ao usar HTTPS
Enquadramento
App Builder depende de cookies HTTP. Os navegadores da Web geralmente bloqueiam cookies de externo. Isso pode causar problemas ao renderizar App Builder em um quadro HTML.
Por exemplo, se o site de enquadramento for publicado na seguinte URL:
https://registration.example.com/
E App Builder é publicado em um domínio diferente:
https://vinyl.example.net/
O navegador da web tratará todos os cookies definidos por App Builder como cookies de externo e bloqueá-los adequadamente. Para contornar esse problema, publique App Builder em um subdomínio do domínio do site de enquadramento.
https://vinyl.registration.example.com/
Criar um site em App Builder com esta URL. Não o torne o site Padrão. Habilite a opção Redirecionar para exigir HTTPS.