Administración del acceso, los permisos y la gobernanza de la empresa
En la unidad anterior, ha explorado cómo funcionan los permisos de repositorio y equipo en GitHub y cómo se concede acceso a los usuarios en esos niveles. En esta unidad, aprenderá a administrar permisos y acceso a una escala más amplia entre organizaciones y empresas:
- Permisos de organización
- Permisos de empresa
- Colaboradores internos frente a externos
- Estrategias de privilegios mínimos
- Procedimientos recomendados de seguridad y gobernanza
Niveles de permisos de organización
Las organizaciones de GitHub proporcionan una manera centralizada de que los equipos colaboren en proyectos al tiempo que mantienen el acceso controlado a repositorios y datos confidenciales. Los permisos de la organización determinan qué miembros y equipos pueden hacer dentro de la organización, lo que garantiza que cada usuario tenga el nivel de acceso adecuado.
Hay varios niveles de permisos en el nivel de organización:
| Nivel de permisos | Descripción |
|---|---|
| Propietario | Los propietarios de la organización pueden hacer lo mismo que los miembros de la organización y pueden agregar o quitar otros usuarios de la organización. Este rol debe limitarse a no menos de dos personas de su organización. |
| Miembro | Los miembros de la organización pueden crear y administrar repositorios y equipos de la organización. |
| Moderador | Los moderadores de la organización pueden bloquear y desbloquear colaboradores que no son miembros, establecer límites de interacción y ocultar comentarios en repositorios públicos que posee la organización. |
| Administrador de facturación | Los administradores de facturación de la organización pueden ver y editar la información de facturación. |
| Administradores de seguridad | Los administradores de seguridad de la organización pueden administrar alertas y configuraciones de seguridad en toda la organización. También pueden leer permisos para todos los repositorios de la organización. |
| Colaborador externo | Los colaboradores externos, como un consultor o un empleado temporal, pueden acceder a uno o varios repositorios de la organización. No son miembros explícitos de la organización. |
Además de estos tres niveles, también puede establecer permisos predeterminados para todos los miembros de la organización:
Para mejorar la administración y la seguridad, también puede considerar la posibilidad de conceder permisos de lectura predeterminados a todos los miembros de la organización y ajustar su acceso a los repositorios caso por caso. Si tiene una organización relativamente pequeña con un número bajo de usuarios, un número bajo de repositorios o una combinación de los dos, este nivel de restricción podría ser innecesario. Si confía en todos los usuarios con la inserción de cambios en cualquier repositorio, es posible que prefiera conceder permisos de escritura de forma predeterminada a todos los miembros.
Niveles de permisos de empresa
Como ya ha visto anteriormente, las cuentas de empresa son recopilaciones de organizaciones. Por extensión, cada cuenta de usuario individual que sea miembro de una organización también es miembro de la empresa. Puede controlar varias opciones de configuración relacionadas con la autenticación desde este nivel superior.
Hay tres niveles de permisos en el nivel de empresa:
| Nivel de permisos | Descripción |
|---|---|
| Propietario | Los propietarios de empresas tienen control total sobre la empresa y pueden realizar todas las acciones, entre las que se incluyen: - Gestionar administradores. - Agregar y eliminar organizaciones hacia y desde la empresa. - Administrar configuraciones empresariales. - Aplicar políticas en toda la organización. - Administrar parámetros de facturación. |
| Miembro | Los miembros de la empresa tienen el mismo conjunto de capacidades que los miembros de la organización. |
| Administrador de facturación | Los administradores de facturación de la empresa solo pueden ver y editar la información de facturación de la empresa y agregar o quitar otros administradores de facturación. |
| Colaborador invitado | Se puede conceder acceso a repositorios u organizaciones, pero tiene acceso limitado de forma predeterminada (solo usuarios administrados de empresa) |
Además de estos tres niveles, también puede establecer una directiva de permisos de repositorio predeterminados en todas las organizaciones:
Para mejorar la administración y la seguridad, es posible que quiera conceder permisos de lectura a todos los miembros de la empresa de forma predeterminada y ajustar su acceso a los repositorios caso por caso. En una empresa más pequeña, como una con una sola organización relativamente pequeña, es posible que prefiera confiar en todos los miembros con permisos de escritura de forma predeterminada.
Para simplificar aún más el control de acceso a escala empresarial:
- Equipos anidados: Las cuentas de empresa pueden usar estructuras de equipos anidados para reflejar las jerarquías de departamentos. Los permisos de un equipo matriz se propagan en cascada a los equipos filiales, simplificando la gestión de acceso compleja.
- Automatización y auditoría: Puede usar la API de GitHub o Acciones de GitHub para automatizar la creación de equipos y las asignaciones de permisos, y auditar el acceso a través de registros de auditoría de organización o de empresa.
Permisos y directivas de empresa a través del conjunto de reglas
En esta sección se explica cómo administrar los permisos y directivas empresariales mediante conjuntos de reglas. Exploraremos los procedimientos recomendados para estructurar organizaciones, establecer permisos predeterminados, sincronizar equipos a través de Active Directory (AD), automatizar el scripting de varias organizaciones y alinear directivas con las posiciones de confianza y control de su empresa.
Pesando las ventajas y desventajas de implementar una sola organización frente a varias organizaciones
Al estructurar su empresa, una de las decisiones clave es si se debe usar una sola organización o varias organizaciones. Cada enfoque tiene ventajas y desventajas únicas.
Organización única
| Ventajas | Desventajas |
|---|---|
| Administración simplificada: Control centralizado de permisos y directivas. | Flexibilidad limitada: Es posible que las políticas universales no se adapten a todos los equipos. |
| Consistencia: Aplicación uniforme de reglas y colaboración simplificada. | Riesgos de seguridad: Una única infracción podría afectar a toda la organización. |
| Uso compartido de recursos: Uso compartido de recursos más sencillo entre equipos. | Problemas de escalabilidad: La administración de permisos puede ser compleja a medida que crece la organización. |
| Rentabilidad: Sobrecarga reducida en herramientas administrativas y licencias. |
Varias organizaciones
| Ventajas | Desventajas |
|---|---|
| Directivas adaptadas: Personalice los permisos para adaptarse a las necesidades específicas de cada equipo. | Mayor complejidad: Más organizaciones significan más sobrecarga administrativa. |
| Aislamiento mejorado: Limita el impacto de una infracción de seguridad a una sola organización. | Redundancia: Posible duplicación de los esfuerzos de configuración y administración. |
| Administración descentralizada: Teams puede administrar sus propias directivas y permisos. | colaboraciónInter-Org: Puede requerir herramientas o procesos adicionales para proyectos entre organizaciones. |
Establecer lectura predeterminada frente a escritura predeterminada entre organizaciones
Decidir el nivel de permiso predeterminado es fundamental para equilibrar la seguridad y la colaboración dentro de su empresa.
Lectura predeterminada frente a escritura predeterminada
| Lectura predeterminada | Escritura predeterminada |
|---|---|
| Seguridad mejorada: Minimiza el riesgo de modificaciones no deseadas. | Colaboración mejorada: Permite a los usuarios contribuir y modificar el contenido directamente. |
| Control: Más fácil de auditar y supervisar los cambios. | Eficacia: Reduce los cuellos de botella en la creación y las actualizaciones de contenido. |
| Lo mejor para: Entornos en los que la mayoría de los usuarios solo necesitan ver los recursos. | Riesgos: Aumenta la posibilidad de cambios accidentales o configuraciones incorrectas si no se administran cuidadosamente. |
Recomendación:
Use un modelo de permisos de lectura predeterminado y conceda acceso de escritura de forma selectiva, lo que garantiza el cumplimiento del principio de privilegios mínimos.
Sincronización de equipos a través de Active Directory (AD)
El uso de Active Directory (AD) para la sincronización de equipos hace que la administración de usuarios y el control de acceso sean más fáciles y eficaces.
¿Por qué usar la sincronización de AD?
- Única fuente de verdad: Mantiene las identidades de usuario coherentes en toda la organización.
- Administración de acceso automatizada: Simplifica la incorporación, la retirada y las actualizaciones de roles.
- Alineación de roles sin fisuras: Garantiza que los grupos de AD coincidan con los roles y permisos de la empresa.
Aspectos que se deben tener en cuenta antes de implementar
- Asignación de roles: Defina claramente cómo se alinean los grupos de AD con los roles de su organización.
- Frecuencia de sincronización: Establezca una programación que equilibre el rendimiento y la seguridad.
- Cumplimiento y auditoría: Registre todos los cambios para cumplir los requisitos de cumplimiento.
Al planear con anticipación, puede garantizar una integración sin problemas que mantenga su organización segura y bien organizada.
Mantenibilidad: guionización para varias organizaciones y derechos de acceso
A medida que la empresa se escala, la automatización de la administración de permisos en varias organizaciones es esencial para el mantenimiento.
Procedimientos clave
En esta sección se resaltan los procedimientos clave de scripting y automatización para administrar permisos de forma coherente y segura a medida que crece la empresa. Seguir estos procedimientos ayuda a simplificar la administración, minimizar los errores manuales y mantener una gobernanza sólida.
- Modularidad: Desarrolle scripts en componentes modulares para controlar diferentes organizaciones con cambios mínimos.
- Reusabilidad: Cree funciones o módulos reutilizables para realizar tareas de permisos comunes.
- Ensayo: Pruebe exhaustivamente los scripts en un entorno controlado antes de la implementación.
- Registro: Implemente el registro detallado para realizar un seguimiento de los cambios y facilitar la solución de problemas.
- Control de versiones: Use sistemas de control de versiones (como Git) para administrar revisiones de script y colaborar con miembros del equipo.