Sitios y Alias
Descripción General
En una instalación predeterminada, App Builder acepta y responde a solicitudes HTTP independientemente de la URL. Esto es conveniente al principio, pero puede generar problemas en el futuro. Los problemas surgen de los diferentes tratamientos de las URLs.
- Las cookies HTTP se pueden restringir a una ruta específica, por ejemplo
/App Builder
El navegador web del cliente trata las rutas de las cookies como sensibles a mayúsculas y minúsculas; el servidor web puede no hacerlo. - De manera similar, los proveedores de autenticación externa pueden tratar la ruta como sensible a mayúsculas y minúsculas al validar URLs de redireccionamiento como
https://example.com/App Builder/signin-SAML
. - Además, el navegador web del cliente no permitirá que el servidor de aplicaciones sobrescriba una cookie insegura con una cookie segura.
Para evitar estos y otros problemas, los administradores deben tomar medidas para canonizar la URL. Aunque esto se puede lograr mediante reglas de reescritura del servidor web, App Builder proporciona soporte para la canonización de URL a través de la función Sitios y Alias.
Sitios
Un sitio define una URL canónica. Una instalación predeterminada incluye un solo sitio. El sitio no tiene una URL específica. En cambio, la URL se infiere de la solicitud HTTP.
Es posible definir varios sitios y, por lo tanto, varias URLs canónicas. Esto puede resultar útil, por ejemplo, al enmarcar an App Builder aplicación. Ver Enmarcado más abajo.
Solo se puede configurar un sitio como el sitio "predeterminado". El sitio predeterminado se utiliza para determinar la URL canónica. Consulte Coincidencia a continuación.
Alias
Un sitio puede tener cero o más alias. Un alias es una URL alternativa, no canónica, que se puede utilizar para acceder al sitio. App Builder ejemplo.
Por ejemplo, el App Builder es posible que la instancia se haya publicado en la dirección interna https://machinename/App Builder
Antes de que se publicara en la dirección externa https://example.com/App Builder
La dirección interna se puede configurar como un alias para la dirección externa. Si la opción Redireccionar está habilitada, App Builder redireccionará automáticamente los navegadores del cliente desde la dirección interna a la dirección externa.
Configuración
Para administrar sitios y alias, comience iniciando sesión en App Builder como administrador, entonces:
- Cambie a App Builder aplicación IDE.
- En el panel Conectar, haga clic en el botón Conectar a su empresa.
- En el menú de la izquierda, haga clic en el botón Proveedores de seguridad.
- En el panel Configuración, haga clic en el botón Administrar sitios.
Los sitios se componen de las siguientes propiedades:
- URL - URL canónica y completa. Ejemplo:
https://example.com/App Builder
. - Predeterminado: indica si el sitio se trata como el sitio predeterminado cuando se hace coincidir una solicitud HTTP con un sitio. Consulte Coincidencia a continuación.
- Redireccionamiento: indica que App Builder debe redirigir los navegadores de los clientes si una solicitud HTTP coincide con el sitio (o uno de los alias del sitio) pero no con la URL canónica. Consulte Redireccionar a continuación.
- Alias - Lista de URLs alternativas asociadas con el sitio. Se utilizan para hacer coincidir una solicitud HTTP con un sitio. Consulte Coincidencia a continuación.
Para que un sitio sea el sitio "predeterminado", haga clic en el botón Establecer como predeterminado. Tenga en cuenta que este botón solo está visible si el sitio aún no es el sitio predeterminado.
Canonicalización
La canonización consta de dos pasos. Primero, App Builder coincide con la solicitud HTTP de un sitio. Luego, App Builder redirige el navegador web del cliente a la URL canónica si es necesario.
Coincidencia
Cuando App Builder recibe una solicitud HTTP, intenta hacer coincidir la URL con un sitio o alias. App Builder comienza realizando un partido "suelto". Un partido suelto considera los siguientes criterios:
- Host - Nombre de alojar HTTP. Ejemplo:
example.com
- Puerto - Número de puerto HTTP. Ejemplo:
80
,443
- Ruta: componente de ruta URL. No distingue entre mayúsculas y minúsculas. Ejemplo:
/App Builder
.
Tenga en cuenta que App Builder no considera el plan en esta etapa.
A los efectos de una coincidencia flexible, las siguientes URLs se consideran equivalentes:
http://example.com/vinyl
- Esquema HTTP, ruta en minúsculas.https://example.com/App Builder
- Esquema HTTPS, ruta con mayúsculas y minúsculas.
Tenga en cuenta que este algoritmo no permite una App Builder sitio que existe dentro de otro. No se admiten los siguientes casos:
https://example.com/App Builder
-https://example.com/App Builder/App Builder 2
App Builder elige la mejor coincidencia con la siguiente precedencia:
- Si la URL coincide con un sitio, se selecciona el sitio.
- Si la URL coincide con un alias, se selecciona el sitio del alias.
- De lo contrario, se selecciona el sitio predeterminado.
Redirigir
Una vez elegido el sitio, App Builder determina si se debe permitir que la solicitud continúe o si se debe emitir una redirección en su lugar.
- Si la opción Redirigir está deshabilitada, se permite que la solicitud continúe.
- Si la opción Redirigir está habilitada y la URL de solicitud no coincide con la URL del sitio, App Builder cancelará la solicitud y responderá con una redirección HTTP.
En esta etapa, App Builder realiza una coincidencia "estricta". Una coincidencia estricta se diferencia de una coincidencia flexible en que:
- La ruta se trata como sensible a mayúsculas y minúsculas.
- Se considera el esquema.
A los efectos de una coincidencia estricta, las siguientes URLs no se consideran equivalentes:
http://example.com/vinyl
- Esquema HTTP, ruta en minúsculas.https://example.com/App Builder
- Esquema HTTPS, ruta con mayúsculas y minúsculas.
Si la URL de la solicitud HTTP no coincide con la URL del sitio, App Builder responde con una redirección.
Proxies Inversos y Balanceadores de Carga
App Builder admite servidores proxy inversos y balanceadores de carga que finalizan la conexión SSL antes que el servidor web. Estos ambientes requieren una configuración adicional. Consulte Servidores proxy inversos para obtener más información.
Casos de Uso
Requerir HTTPS
Cada instancia de App Builder DEBE estar protegida mediante HTTPS. La conexión segura puede finalizarse en el servidor web o en un proxy inverso. De todas formas, una vez configurada, se recomienda encarecidamente a los administradores que exijan a todos los clientes que se conecten con HTTPS.
Esto se puede lograr con sitios y alias. Establezca la URL del sitio para que coincida con la URL segura, por ejemplo https://example.com/App Builder
y habilite la opción Redireccionar.
Revise la información sobre servidores proxy inversos y balanceadores de carga al usar HTTPS
Enmarcado
App Builder depende de cookies HTTP. Los navegadores web normalmente bloquean las cookies de externo. Esto puede causar problemas al procesar App Builder en un marco HTML.
Por ejemplo, si el sitio de encuadre se publica en la siguiente URL:
https://registration.example.com/
Y App Builder se publica en un dominio diferente:
https://vinyl.example.net/
El navegador web tratará cualquier cookie establecida por App Builder como cookies de externo y bloquearlas en consecuencia. Para solucionar este problema, publique App Builder en un subdominio del dominio del sitio de encuadre.
https://vinyl.registration.example.com/
Crear un sitio en App Builder con esta URL. No la convierta en el sitio predeterminado. Habilite la opción Redireccionar para requerir HTTPS.