Aumento de la seguridad de las aplicaciones siguiendo los principios de Confianza cero
Ya no puede asumir un perímetro de red seguro alrededor de las aplicaciones que cree. Casi todas las aplicaciones que cree serán, por diseño, accesibles desde fuera del perímetro de red. Tampoco puede garantizar que las aplicaciones que cree sean seguras o que lo seguirán siendo después de implementarlas. Por tanto, como desarrollador de la aplicación, es su responsabilidad no solo maximizar la seguridad de la aplicación, sino que también debe minimizar el daño que esta puede causar si está en riesgo.
Además, es responsable de dar respuesta a las necesidades cambiantes de sus clientes y usuarios, que esperan que la aplicación cumpla con los requisitos de seguridad de Confianza cero. Conozca los principios de Confianza cero y adopte las prácticas. Al aprender y adoptar los principios, se pueden desarrollar aplicaciones que sean más seguras y que minimicen los daños que podrían causar si falla la seguridad.
El modelo de Confianza cero prescribe una referencia cultural de verificación explícita en lugar de confianza implícita. El modelo está delimitado por tres principios rectores clave:
- Comprobación explícita
- Uso del acceso con privilegios mínimos
- Asunción de que hay brechas
Procedimientos recomendados de Confianza cero
Siga estos procedimientos recomendados para crear aplicaciones Confianza cero con la Plataforma de identidad de Microsoft y sus herramientas.
Comprobación explícita
El Plataforma de identidad de Microsoft ofrece mecanismos de autenticación para comprobar la identidad de la persona o servicio que accede a un recurso. Aplique los procedimientos recomendados que se describen a continuación para asegurarse de que comprueba explícitamente las entidades que necesitan acceder a datos o recursos.
Práctica recomendada | Ventajas de la seguridad de aplicaciones |
---|---|
Uso de la Biblioteca de autenticación de Microsoft (MSAL) | MSAL es un conjunto de bibliotecas de autenticación de Microsoft para desarrolladores. MSAL permite autenticar a los usuarios y las aplicaciones, así como adquirir tokens para acceder a recursos corporativos con solo unas pocas líneas de código. MSAL usa protocolos modernos (OpenID Connect y OAuth 2.0) que eliminan la necesidad de que las aplicaciones controlen directamente las credenciales de un usuario. De esta forma, mejora de forma considerable la seguridad de los usuarios y las aplicaciones, ya que el proveedor de identidades se convierte en el perímetro de seguridad. Además, estos protocolos evolucionan continuamente para abordar nuevos paradigmas, oportunidades y desafíos en la seguridad de las identidades. |
Adopte extensiones de seguridad mejoradas como la Evaluación continua de acceso (CAE) y el contexto de autenticación de acceso condicional cuando corresponda. | En Microsoft Entra ID, algunas de las extensiones más utilizadas son acceso condicional, contexto de autenticación de acceso condicional y CAE. Las aplicaciones que usan características de seguridad mejoradas, como CAE y el contexto de autenticación de acceso condicional, deben estar codificadas para controlar los desafíos de las notificaciones. Los protocolos abiertos permiten usar los desafíos y las solicitudes de notificaciones para invocar funciones de cliente adicionales. Las funciones podrían consistir en continuar la interacción con Microsoft Entra ID, por ejemplo, cuando se produce una anomalía o si cambian las condiciones de autenticación del usuario. Estas extensiones se pueden codificar en una aplicación sin alterar los flujos de código principales para la autenticación. |
Use el flujo de autenticación correcto según el tipo de aplicación para la autenticación. Para las aplicaciones web, trate de usar siempre flujos de cliente confidenciales. Para las aplicaciones móviles, debe usar agentes o el explorador del sistema para la autenticación. | Los flujos de aplicaciones web que pueden contener un secreto (clientes confidenciales) se consideran más seguros que los clientes públicos (por ejemplo, aplicaciones de escritorio y consola). Cuando se usa el explorador web del sistema para autenticar las aplicaciones móviles, se obtiene una experiencia segura de inicio de sesión único (SSO) que admite directivas de protección de aplicaciones. |
Uso del acceso con privilegios mínimos
Con la Plataforma de identidad de Microsoft, puede conceder permisos (ámbitos) y comprobar que se le ha concedido el permiso adecuado al autor de la llamada antes de permitir el acceso. Para aplicar el acceso con privilegios mínimos en las aplicaciones, habilite permisos específicos que le permitan conceder la menor cantidad de acceso necesaria. Tenga en cuenta los procedimientos siguientes para asegurarse de que cumple el principio de privilegios mínimos:
- Evalúe los permisos que solicite para asegurarse de que el privilegio mínimo absoluto está establecido para realizar el trabajo. Cree permisos de tipo "catch-all" con acceso a toda la superficie de la API.
- Al diseñar las API, proporcione permisos pormenorizados para permitir el acceso con privilegios mínimos. Comience por dividir la funcionalidad y el acceso a datos en secciones que se pueden controlar a través de ámbitos y roles de aplicación. No agregue las API a los permisos existentes de forma que cambie la semántica del permiso.
- Ofrezca permisos de solo lectura. El acceso
Write
, incluye privilegios para las operaciones de creación, actualización y eliminación. Un cliente nunca debe requerir acceso de escritura solo para leer datos. - Ofrezca ambos permisos delegados y de aplicación. La omisión de permisos de aplicación puede crear requisitos difíciles para que los clientes logren escenarios comunes, como la automatización, los microservicios y demás.
- Considere los permisos de acceso "estándar" y "completo" si trabaja con datos confidenciales. Restrinja las propiedades confidenciales para que no se pueda acceder a ellas mediante un permiso de acceso "estándar", por ejemplo,
Resource.Read
. A continuación, implemente un permiso de acceso "completo" (por ejemploResource.ReadFull
) que devuelva todas las propiedades disponibles, como la información confidencial.
Asunción de que hay brechas
El portal de registro de aplicaciones de la Plataforma de identidad de Microsoft es el punto de entrada principal para las aplicaciones que pretendan usar la plataforma para la autenticación y otras necesidades asociadas. Al registrar y configurar las aplicaciones, siga las prácticas que se describen a continuación para minimizar los daños que podrían suceder si hay una vulneración de seguridad. Para obtener más información, consulte Mejores prácticas de seguridad para el registro de aplicaciones de Microsoft Entra.
Tenga en cuenta las siguientes acciones para evitar vulneraciones de seguridad:
- Defina correctamente los URI de redireccionamiento de la aplicación. No use el mismo registro de aplicaciones en varias aplicaciones.
- Compruebe los URI de redireccionamiento que se usan en el registro de la aplicación para la propiedad y evitar la toma de control de dominio. No cree la aplicación como multiinquilino, a menos que esté previsto. |
- Asegúrese de que los propietarios de la aplicación y de la entidad de servicio siempre se definen y mantienen en las aplicaciones registradas en el inquilino.
Consulte también
- Centro de guía de Confianza cero
- Procedimientos recomendados y recomendaciones de la Plataforma de identidad de Microsoft