Cómo las herramientas de Auth0 ayudan a automatizar la implementación de inquilinos.
Además de adoptar las prácticas recomendadas para la gestión de cambios y QA, los clientes que tienen éxito también integran la gestión de recursos de Auth0 como parte de un proceso de implementación automatizado. Como se explica en la sección de Arquitectura, en compatibilidad con SDLC, le conviene configurar inquilinos de Auth0 independientes para los entornos de desarrollo, pruebas y producción, y procurar que la configuración sea casi idéntica en el inquilino de cada entorno. Usar automatización de implementaciones ayuda a garantizarlo, ya que permite que el inquilino de cada entorno se configure de la misma manera y reduce la probabilidad de que aparezcan errores como resultado de configuraciones distintas entre entornos.
Independientemente de cómo configure la automatización de implementaciones, le recomendamos realizar pruebas unitarias de sus Rules, scripts personalizados de base de datos y Hooks antes de la implementación, y ejecutar también algunas pruebas de integración en su inquilino después de implementarla. Para obtener más información, consulte la guía de Aseguramiento de la calidad.
Auth0 admite un par de opciones distintas para los enfoques de automatización de implementaciones que puede usar, y, si lo desea, ambas pueden utilizarse conjuntamente:
La herramienta Auth0 Deploy CLI le proporciona un script fácil de usar que puede ayudarle a integrarse con su canalización actual de Integración continua/Implementación continua (CI/CD).
Si no puede integrarse directamente con una canalización de CI/CD, o por algún motivo no dispone de una, las Source Control Extensions de Auth0 pueden proporcionarle un proceso básico de automatización, fácil de configurar y con muy poco mantenimiento.
Tenga en cuenta que tanto la herramienta Deploy CLI como las extensiones de control de código fuente pueden provocar cambios destructivos; los cambios manuales realizados directamente en el dashboard entre implementaciones automatizadas podrían perderse. Por este motivo, si se usa cualquiera de las dos, todos los cambios deben implementarse desde el subsistema de control de código fuente al que hace referencia la herramienta, y no realizarse manualmente.
Cada entorno también puede requerir cierta configuración específica; por ejemplo, los y los de la aplicación serán distintos entre los inquilinos de Auth0, por lo que le convendrá contar con alguna forma de hacer referencia a ellos dinámicamente en lugar de usar valores codificados de forma fija. Auth0 ofrece compatibilidad para manejar la información de configuración específica del entorno mediante uno de estos dos enfoques:
Auth0 le permite configurar variables disponibles desde la extensibilidad; pueden considerarse variables de entorno para su inquilino de Auth0. En lugar de codificar de forma fija referencias que cambian al mover código entre entornos de desarrollo, pruebas y producción, puede usar un nombre de variable configurado en el inquilino al que haga referencia el código de extensibilidad personalizado. Esto facilita que el mismo código personalizado funcione, sin cambios, en distintos inquilinos, ya que puede hacer referencia a variables que se completarán con valores específicos del inquilino en el momento de la ejecución:
Para usar variables en Actions, lea Write Your First Action para aprender a configurar secretos en el editor
Se recomienda usar variables para almacenar valores específicos del inquilino, así como cualquier secreto confidencial que no deba exponerse en el código personalizado. Si su código personalizado se implementa en GitHub/Gitlab/Bitbucket/VSTS, usar una variable específica del inquilino ayuda a evitar la exposición de valores confidenciales a través del repositorio.
Ofrecemos una guía de planificación en formato PDF que puede descargar y consultar para conocer en detalle nuestras estrategias recomendadas.Guía de planificación del proyecto de B2B IAM
Arquitectura con múltiples organizaciones (multitenencia)
Muchas plataformas B2B implementan algún tipo de aislamiento o marca para las organizaciones de sus clientes, y esto puede añadir complejidad a cualquier sistema de gestión de identidades y accesos (IAM). Si este es su caso, le recomendamos dedicar algo de tiempo a revisar nuestra guía y las prácticas recomendadas para este tipo de entorno.Arquitectura con múltiples organizaciones