Primeros pasos con Seguridad web Lightning
Objetivos de aprendizaje
Después de completar esta unidad, podrá:
- Describir Seguridad web Lightning.
- Enumerar las ventajas de Seguridad web Lightning.
¿Qué es Lightning Web Security?
Cuando los administradores y desarrolladores agregan nuevas funciones a sus organizaciones, la prioridad principal es la seguridad de la organización. Los componentes predefinidos (de Salesforce o AppExchange) y los componentes personalizados pueden introducir riesgos, por lo que una organización puede verse comprometida por código peligroso.
Pero la seguridad no debería lograrse a expensas de restricciones de las funciones y del desempeño. Por eso, Salesforce creó Seguridad web Lightning para ayudarlo a mantener a su organización segura. Seguridad web Lightning agrega un grado mayor de funcionalidad mediante nuevos casos de uso de componentes Lightning. Antes de aprender más acerca de Seguridad web Lightning, echemos un breve vistazo a su predecesor, Lightning Locker.
Lightning Locker
Si ya utiliza los componentes Lightning, está familiarizado con Lightning Locker. Lightning Locker fue la opción estándar para mantener sus componentes web Lightning y Aura seguros al aislar los espacios de nombres del componente Lightning en sus propios contenedores y reforzar las prácticas recomendadas de codificación. Por ejemplo, un componente denominado c-editor
corresponde al espacio de nombres c y está aislado de los componentes en el espacio de nombres ltngmu
.
Lightning Locker no va a desaparecer inmediatamente. Seguridad web Lightning para componente web Lightning (GA) y Seguridad web Lightning para Aura (beta) están habilitados de forma predeterminada para las organizaciones que no cuentan con componente web Lightning ni componentes Aura personalizados. Esta habilitación es una continuación del lanzamiento gradual de la arquitectura de Seguridad web Lightning anunciada en la primavera de 2022. Seguridad web Lightning es el futuro de la seguridad y el desempeño de los componentes, así que cuanto antes pueda pasar a Seguridad web Lightning, más segura y rápida será su organización.
La siguiente generación: Lightning Web Security
Seguridad web Lightning es la novedad para los componentes Lightning. Si utiliza los componentes Lightning, sabe que sus páginas de Salesforce pueden contener componentes de muchas otras compañías. Además, sus componentes personalizados se combinan con los componentes que creó Salesforce y en aplicaciones en AppExchange que usted desarrolla o utiliza.
Tener muchos componentes de diferentes orígenes en su entorno, incluidas bibliotecas de terceros cargadas de recursos estadísticos, abre la puerta a posibles amenazas. Un código malintencionado en un componente puede acceder a objetos globales (como una ventana, un documento o un elemento), obtener sus recursos o datos y causar estragos en su organización.
Seguridad a través de entornos sandbox de JavaScript
La arquitectura de Seguridad web Lightning funciona en su entorno aislando cada componente en un entorno sandbox de JavaScript dedicado a su espacio de nombres. El código peligroso de un componente no puede acceder a los recursos de cualquier otro componente fuera de su espacio de nombres.
Casos de uso de Lightning Web Security
Si bien Lightning Locker y Seguridad web Lightning bloquean o modifican el comportamiento de las API que no son seguras, Seguridad web Lightning ofrece los siguientes usos adicionales que mejoran el desempeño y la seguridad.
Uso de componente de espacio de nombres cruzado
Los componentes web Lightning pueden importar componentes o módulos desde diferentes espacios de nombres y utilizarlos a través de composiciones o extensiones. Los componentes están aislados de forma transparente en su propio entorno sandbox de JavaScript del espacio de nombres. Ni siquiera se enterará de lo que sucede.
Interacciones con objetos globales
Lightning Locker requiere contenedores seguros para aislar componentes, lo que limita el rendimiento y prohíbe el uso de algunas bibliotecas de terceros. Seguridad web Lightning elimina la necesidad de contenedores seguros al bloquear o modificar el comportamiento de componentes donde se detecta código inseguro. Esto lo hace en los entornos sandbox donde se encuentra el código, de modo que este no puede causar problemas. Así tiene mayor libertad y flexibilidad para utilizar bibliotecas de terceros en sus componentes.
Acceso al contenido e identidad de iFrame
Seguridad web Lightning permite que los componentes web Lightning accedan al contenido de los elementos de iFrame, por lo que se pueden utilizar otras funciones de desarrollo web que estaban bloqueadas por Lightning Locker.
Rendimiento mejorado
Sin la necesidad de contenedores seguros, el código en los entornos sandbox de JavaScript del espacio de nombres se ejecuta más rápido.
Mejor asistencia de las bibliotecas JavaScript de terceros
En Seguridad web Lightning, las bibliotecas pueden, por ejemplo, manipular objetos globales porque se ejecutan en sus propios entornos sandbox de JavaScript del espacio de nombres. Estos cambios en los objetos globales no afectan los componentes en otros espacios de nombres.
Seguridad web Lightning evoluciona a la par de JavaScript
Seguridad web Lightning está diseñado según los últimos estándares TC39 que evolucionan con las plataformas de navegador; esto significa que no queda obsoleto a medida que la tecnología cambia.
En la próxima unidad, profundizaremos acerca de cómo funciona Seguridad web Lightning, cómo saber si tiene componentes que se verán afectados por Seguridad web Lightning y cómo activar Seguridad web Lightning en su organización.