Rendimiento y seguridad de WebSlate

Rendimiento

Información general sobre la visualización e interacción con el contenido web

Dado que webSlate es una página web cargada, es importante tener en cuenta las implicaciones de rendimiento:

  • Las escenas suelen tener un rendimiento de 60 fps con hasta 10 WebSlates activos. La degradación general del rendimiento y la velocidad de fotogramas se pueden observar en proporción al número de WebSlates colocados en una escena, independientemente del contenido.

  • El contenido se carga y ejecuta en WebSlate en un subproceso independiente de la actualización y representación de los subprocesos de representación de la escena y, por tanto, es poco probable que afecte directamente a la velocidad de fotogramas. Sin embargo, todavía es importante tener en cuenta el costo de JavaScript que se ejecuta en una página web tanto en términos de complejidad en tiempo de ejecución como de uso de memoria.

  • Para ayudar a ahorrar rendimiento, los WebSlates que están fuera de pantalla para más de 30 se suspenden automáticamente. Se reanudan rápidamente al volver a la pantalla, pero esto puede afectar a los servicios que se ejecutan activamente en la página hospedada. Si se trata de un problema, los desarrolladores pueden deshabilitar la suspensión con la casilla "Impedir suspensión" del objeto prefabricado. Tenga en cuenta que hacerlo puede hacer que la escena consuma más recursos, ya que estos WebSlates permanecen activos en todo momento.

    WebSlate con prevención de suspensión en círculo

  • Dado que WebSlates no tiene ninguna interfaz de usuario de navegación externa de forma predeterminada, el procedimiento recomendado es cargar solo direcciones URL personalizadas, donde la navegación del sitio es cíclica y se puede realizar dentro de la página. Esto se puede hacer con una barra lateral de navegación o vínculos a una página central, por ejemplo.

  • La herramienta Content Analizador de rendimiento (CPA) incluye un analizador de WebSlate que mide el tiempo medio que tarda la canalización de representación de Unity en representar WebSlates en un marco.

    • Las medidas se basan en la grabadora del generador de perfiles de Unity y requieren el modo de reproducción. El analizador mueve la cámara a través de cada WebSlate para recopilar muestras de generador de perfiles suficientes y calcula el tiempo medio de representación.

    • Esto proporciona un análisis de primera fase y de alto nivel de los tiempos de representación de WebSlate en el contexto de la canalización de representación de Unity. No proporciona la velocidad de fotogramas del propio contenido webSlate.

    • Si la canalización de representación de Unity supera el umbral para representar WebSlates (actualmente 10 ms), la herramienta CPA proporciona una advertencia.

    • Las mismas medidas también están disponibles para el Generador de perfiles de rendimiento. El grupo del Generador de perfiles de rendimiento normalmente cambia los colores de verde a rojo cuando se supera la asignación presupuestaria de una categoría. Por ahora, el grupo WebSlate solo se muestra como verde hasta que se racionaliza un presupuesto de tiempo de representación razonable para WebSlates.

    Análisis de rendimiento de WebSlate mediante la herramienta CPA.

Restricciones de seguridad

  • WebSlates están bloqueados en las direcciones URL a las que navegan, lo que impide redirecciones malintencionadas. Todas las navegaciones de hipervínculos no deseadas a dominios externos se bloquean, a menos que se muestren explícitamente como un dominio permitido (consulte a continuación).

  • Los webSlates están restringidos a la navegación dentro del dominio inicial o a las redirecciones del servidor y de la dirección URL especificadas.

  • La navegación dentro de un WebSlate se limita exclusivamente a HTTPS.

  • El acceso del dispositivo a la cámara web, el micrófono y la geolocalización están bloqueados.

WebSlate domain allow-list

Para garantizar la seguridad frente a vectores de ataque no deseados basados en direcciones URL, como la suplantación de identidad (phishing), WebSlates restringe de forma predeterminada la navegación a las direcciones URL que se incluyen en el dominio de la primera página cargada en WebSlate. Por ejemplo, un WebSlate iniciado en https://www.microsoft.com/ solo navegará a páginas cuya dirección URL comience por "www.microsoft.com". Aunque esto garantiza que los usuarios no se desintejan accidentalmente del flujo de navegación previsto, puede ser un valor predeterminado demasiado restrictivo para algunos casos de uso, como la autenticación de usuario, durante el cual puede haber redireccionamientos a subdominios o proveedores de autenticación de terceros.

La forma de adaptarse a estos casos de uso es agregar dominios a la lista de permitidos de WebSlate.

Al trabajar con WebSlates en el editor de Unity, tiene la opción de habilitar "Recopilar dominios permitidos". Esto quitará la restricción de navegación del dominio para que pueda navegar libremente al ejecutarse en modo De reproducción para probar su escenario. Mientras navega en modo de reproducción, WebSlate registrará los dominios que visite en segundo plano.

La casilla Recopilar dominios permitidos está habilitada.

En este caso, vamos a expandir la navegación desde microsoft.com para incluir también video2.skills-academy.com.

Una vez que salga del modo de reproducción, encontrará un recurso denominado "WebViewAllowedDomains.asset" en la carpeta Assets de nivel superior.

Recurso de dominios permitidos de WebSlate.

Al hacer clic en este recurso, se le proporcionará la lista de dominios adicionales que visitó más allá del dominio de la dirección URL inicial. Puede hacer clic con el botón derecho, copiar y, a continuación, pegar los valores en el campo "Dominios permitidos" del componente WebSlate.

Copie los dominios permitidos.Pegue los dominios permitidos.

Nota: Esta opción es imposible habilitar en escenas cargadas. Si se deja habilitada la opción "Recopilar dominios permitidos", NO se quitará la restricción en la escena final. Sin embargo, la lista de dominios permitidos se conservará y permitirá la navegación siempre que los dominios se agreguen al WebSlate.

Agregar dominios manualmente

Si ya sabe qué dominios necesitará, puede agregarlos manualmente a WebSlate expandiendo la lista desplegable "Dominios permitidos" y agregando los dominios complementarios a la lista en la GUI de Unity.

Adición manual de dominios permitidos con el botón más

Pasos siguientes