Compartir a través de


Control de acceso basado en rol de Azure en Microsoft Dev Box

Este artículo está diseñado para ingenieros de plataforma, administradores centrales de TI y otros administradores de nivel superior que planean y administran las implementaciones de Microsoft Dev Box. Describe los distintos roles integrados compatibles con Microsoft Dev Box y cómo se asignan a roles organizativos como el ingeniero de plataforma y el administrador de desarrollo para que pueda planear el modelo de permisos adecuado antes de implementar Dev Box.

El control de acceso basado en rol (RBAC) de Azure especifica roles integrados que definen los permisos que se van a aplicar. En lugar de conceder permisos pormenorizados directamente a usuarios o grupos individuales, asigna roles que agrupan permisos relacionados para que pueda aplicar y auditar el acceso de forma coherente entre los recursos. Asignará esta definición de rol a un usuario o grupo mediante una asignación de roles para un ámbito determinado. El ámbito puede ser un recurso individual, un grupo de recursos o toda la suscripción. En la siguiente sección, aprenderá qué roles integrados admite Microsoft Dev Box.

Para más información, consulte ¿Qué es el control de acceso basado en rol de Azure (RBAC)?

Nota:

Al realizar cambios en la asignación de roles, estas actualizaciones pueden tardar unos minutos en propagarse.

Roles integrados

En este artículo, los roles integrados de Azure se agrupan lógicamente en tres tipos de roles organizativos, en función de su ámbito de influencia:

  • Roles de ingeniero de plataforma: influir en los permisos de los centros de desarrollo, en los catálogos y en los proyectos

  • Administrador de desarrollo: influir en los permisos para los recursos basados en proyectos

  • Roles de desarrollador: influir en los permisos para los usuarios

A continuación se muestran los roles integrados compatibles con Microsoft Dev Box:

Tipo de rol organizativo Rol integrado Descripción
Ingeniero de plataformas Propietario Conceder control total para crear o administrar centros de desarrollo, catálogos y proyectos, y conceder permisos a otros usuarios. Obtenga más información sobre el rol Propietario.
Ingeniero de plataformas Colaborador Conceder control total para crear o administrar centros de desarrollo, catálogos y proyectos, excepto para asignar roles a otros usuarios. Obtenga más información sobre el rol Colaborador.
Ingeniero de plataformas Propietario de DevCenter Proporcione acceso para administrar todos los recursos de Microsoft.DevCenter y acceder a ellos. Obtenga más información sobre el rol de Propietario de DevCenter.
Administrador de desarrollo Administrador de proyectos de DevCenter Conceder permiso para administrar determinados aspectos de los proyectos y equipos de desarrollo. Obtenga más información sobre el rol de administrador de proyectos de DevCenter.
Desarrollador Usuario de Dev Box Conceder permiso para crear equipos de desarrollo y tener control total sobre los equipos de desarrollo que crean. Obtenga más información sobre el rol Usuario de Dev Box.

Ámbito de asignación de roles

En Azure RBAC, un ámbito es el conjunto de recursos al que se aplica el acceso. Al asignar un rol, es importante comprender el ámbito para conceder solo el acceso necesario.

En Azure, puede especificar un ámbito en cuatro niveles: grupo de administración, suscripción, grupo de recursos y recurso. Los ámbitos se estructuran en una relación de elementos primarios y secundarios. Cada nivel de jerarquía hace que el ámbito sea más específico. Puede asignar roles en cualquiera de estos niveles de ámbito. El nivel que seleccione determina el grado de amplitud con que se aplica el rol. Los niveles inferiores heredan los permisos de rol de los niveles superiores. Obtenga más información sobre el ámbito de Azure RBAC.

Para Microsoft Dev Box, tenga en cuenta los siguientes ámbitos:

Ámbito Descripción
Suscripción Se usa para administrar la facturación y la seguridad de todos los recursos y servicios de Azure. Normalmente, solo los ingenieros de la plataforma tienen acceso de nivel de suscripción porque esta asignación de roles concede acceso a todos los recursos de la suscripción.
Grupo de recursos Un contenedor lógico para agrupar recursos. La asignación de roles para el grupo de recursos concede permiso al grupo de recursos y a todos los recursos que contiene, como centros de desarrollo, definiciones de equipo de desarrollo, grupos de equipo de desarrollo, proyectos y equipos de desarrollo.
Centro de desarrollo (recurso) Colección de proyectos que requieren una configuración similar. La asignación de roles para el centro de desarrollo concede permiso al propio centro de desarrollo. Los otros recursos de equipo de desarrollo no heredan los permisos asignados para los centros de desarrollo.
Proyecto (recurso) Un recurso de Azure que se usa para aplicar opciones de configuración comunes al crear un equipo de desarrollo. La asignación de roles para el proyecto concede permiso solo a ese proyecto específico.
Grupo de equipos de desarrollo (recurso) Colección de equipos de desarrollo que administra juntos y al que aplica una configuración similar. La asignación de roles para el grupo de equipos de desarrollo concede permiso solo a ese grupo de equipos de desarrollo específico.
Definición de equipo de desarrollo (recurso) Un recurso de Azure que especifica una imagen de origen y un tamaño, incluido el tamaño de proceso y el tamaño de almacenamiento. La asignación de roles para la definición del equipo de desarrollo concede permiso solo a esa definición de equipo de desarrollo específica.

Diagrama que muestra los ámbitos de asignación de roles para Microsoft Dev Box.

Roles para actividades comunes de Dev Box

En la siguiente tabla se muestran las actividades comunes de Dev Box y el rol necesario para que un usuario realice esa actividad.

Actividad Tipo de rol Role Ámbito
Conceder permiso para crear un grupo de recursos. Ingeniero de plataformas Propietario o Colaborador Suscripción
Conceder permiso para enviar una incidencia de soporte técnico de Microsoft, incluida la solicitud de capacidad. Ingeniero de plataformas Propietario, Colaborador, Colaborador de solicitud de soporte técnico Suscripción
Conceder permiso para crear redes virtuales y subredes. Ingeniero de plataformas Colaborador de la red Grupo de recursos
Conceder permiso para crear una conexión de red. Ingeniero de plataformas Propietario o Colaborador Grupo de recursos
Conceder permiso para asignar roles a otros usuarios. Ingeniero de plataformas Propietario Grupo de recursos
Conceder permiso para:
: crear o administrar centros de desarrollo.
: agregar o quitar conexiones de red.
: agregar o quitar galerías de proceso de Azure.
: crear o administrar definiciones de equipo de desarrollo.
: crear o administrar proyectos.
: adjuntar o administrar el catálogo a un centro de desarrollo o proyecto (los catálogos de nivel de proyecto deben estar habilitados en el centro de desarrollo).
: configurar los límites del equipo de desarrollo.
Ingeniero de plataformas Colaborador Grupo de recursos
Conceda permiso para crear y administrar recursos de Dev Box sin conceder acceso a otros tipos de recursos del grupo de recursos.
- Centros de desarrollo
- Proyectos
- Definiciones de cajas de desarrollo
- Grupos de cajas de desarrollo
Ingeniero de plataformas Propietario de DevCenter Grupo de recursos
Conceder permiso para agregar o quitar una conexión de red para un centro de desarrollo. Ingeniero de plataformas Colaborador o propietario de DevCenter Centro de desarrollo
Conceder permiso para habilitar o deshabilitar catálogos de proyectos. Administrador de desarrollo Colaborador Centro de desarrollo
Conceder permiso para:
: agregar, sincronizar, quitar un catálogo (los catálogos de nivel de proyecto deben estar habilitados en el centro de desarrollo).
: crear grupos de equipos de desarrollo.
: detener, iniciar, eliminar equipos de desarrollo en grupos.
Administrador de desarrollo Administrador de proyectos de DevCenter Proyecto
Crear y administrar sus propios equipos de desarrollo en un proyecto. Usuario Usuario de Dev Box Proyecto
Crear y administrar catálogos en un repositorio de GitHub o Azure Repos. Administrador de desarrollo No regido por RBAC.
: el usuario debe tener asignados permisos a través de Azure DevOps o GitHub.
Repositorio

Importante

Se usa una suscripción de la organización para administrar la facturación y la seguridad de todos los recursos y servicios de Azure. Puede asignar el rol Propietario o Colaborador en la suscripción. Normalmente, solo los ingenieros de la plataforma tienen acceso de nivel de suscripción porque incluye acceso total a todos los recursos de la suscripción.

Roles para ingenieros de plataforma

Para conceder a los usuarios permiso para administrar Microsoft Dev Box dentro de la suscripción de su organización, puede asignarles el rol Propietario o Colaborador en el ámbito del grupo de recursos o el rol Propietario de DevCenter en el ámbito del centro de desarrollo.

Cuando use los roles Propietario o Colaborador, asígnelos al grupo de recursos. Los centros de desarrollo, las conexiones de red, las definiciones de equipo de desarrollo, los grupos de equipo de desarrollo y los proyectos del grupo de recursos heredan estas asignaciones de roles.

Diagrama que muestra las asignaciones de roles de administrador en la suscripción para Azure Deployment Environments.

Rol de propietario

Asigne el rol Propietario para conceder a un usuario control total para crear o administrar recursos de Dev Box y conceder permisos a otros usuarios. Cuando un usuario tiene el rol Propietario en el grupo de recursos, puede realizar las siguientes actividades en todos los recursos del grupo de recursos:

  • Asignar roles a ingenieros de plataforma para que puedan administrar los recursos de Dev Box.
  • Crear centros de desarrollo, conexiones de red, definiciones de equipo de desarrollo, grupos de equipo de desarrollo y proyectos.
  • Ver, eliminar y cambiar la configuración de todos los centros de desarrollo, conexiones de red, definiciones de equipo de desarrollo, grupos de equipo de desarrollo y proyectos.
  • Asociar y desasociar catálogos.

Rol de colaborador

Asignar el rol Colaborador para proporcionar a un usuario control total para crear o administrar centros de desarrollo y proyectos dentro de un grupo de recursos. El rol Colaborador tiene los mismos permisos que el rol Propietario, excepto:

  • Realizar asignaciones de roles.

Precaución

Al asignar el rol Propietario o Colaborador en el grupo de recursos, estos permisos también se aplican a los recursos no relacionados con Dev Box que existen en el grupo de recursos.

Rol de propietario de DevCenter

Puede asignar el rol Propietario de DevCenter en el ámbito del grupo de recursos o en el ámbito del centro de desarrollo.

Rol propietario de DevCenter en el ámbito del grupo de recursos

Asigne el rol Propietario de DevCenter a un grupo de recursos para proporcionar a un usuario control total sobre los recursos de Microsoft.DevCenter sin conceder acceso más amplio a otros recursos del grupo de recursos.

Cuando un usuario tiene el rol Propietario de DevCenter en un grupo de recursos, puede hacer lo siguiente:

  • Crear, actualizar y eliminar centros de desarrollo en ese grupo de recursos.
  • Cree, actualice y elimine proyectos en ese grupo de recursos.
  • Crear, actualizar y eliminar grupos de equipos de desarrollo y definiciones de equipos de desarrollo en ese grupo de recursos.
  • Administre catálogos, conexiones de red y galerías de cálculo adjuntas a centros de desarrollo en el grupo de recursos.
  • Delegue la administración del proyecto asignando los roles de DevCenter Project Admin y DevCenter Dev Box User a nivel de proyecto.

Rol Propietario de DevCenter en el ámbito del centro de desarrollo

Asigne el rol Propietario de DevCenter a un centro de desarrollo para proporcionar a un usuario control total sobre los recursos de Microsoft.DevCenter sin conceder acceso más amplio a otros centros de desarrollo y sus recursos. Los usuarios con este rol asignado a un centro de desarrollo no pueden crear nuevos centros de desarrollo.

Cuando un usuario tiene el rol Propietario de DevCenter en un centro de desarrollo, puede hacer lo siguiente:

  • Cree, actualice y elimine proyectos en ese centro de desarrollo.
  • Cree, actualice y elimine agrupaciones de dev box y definiciones de dev box en dicho centro de desarrollo.
  • Administre catálogos, conexiones de red y galerías de proceso conectadas a ese centro de desarrollo.
  • Delegue la administración del proyecto asignando los roles de DevCenter Project Admin y DevCenter Dev Box User a nivel de proyecto.

Roles para administradores de desarrollo

Hay un rol de administrador de desarrollo: Administrador de proyectos de DevCenter. Este rol tiene permisos más restringidos en ámbitos de nivel inferior que los roles de ingeniero de plataforma. Puede asignar este rol a los administradores de desarrollo para permitirles realizar tareas administrativas para sus equipos.

Diagrama que muestra la asignación de roles del administrador de desarrollo en los ámbitos de nivel de proyecto para Microsoft Dev Box.

Rol de Administrador de proyectos de DevCenter

Asigne el rol Administrador de proyectos de DevCenter para permitir:

  • Agregar, sincronizar, quitar un catálogo (los catálogos de nivel de proyecto deben estar habilitados en el centro de desarrollo).

  • Crear grupos de equipos de desarrollo.

  • Detener, iniciar, eliminar equipos de desarrollo en grupos.

Roles para desarrolladores

Hay un rol de desarrollador: Usuario de Dev Box. Este rol permite a los desarrolladores crear y administrar sus propios equipos de desarrollo.

Diagrama que muestra las asignaciones de roles de usuario en el proyecto para Microsoft Dev Box.

Rol de usuario de Dev Box

Asigne el rol Usuario de Dev Box para conceder a los usuarios permiso para crear equipos de desarrollo y tener control total sobre ellos. Los desarrolladores pueden realizar las siguientes acciones en cualquier equipo de desarrollo que creen:

  • Crear
  • Iniciar o detener
  • Restart (Reiniciar)
  • Retrasar el apagado programado
  • Eliminar

Administración de identidad y acceso (IAM)

La página Control de acceso (IAM) de Azure Portal se utiliza para configurar el control de acceso basado en rol de Azure en los recursos de Microsoft Dev Box. Puede usar roles integrados para usuarios y grupos en Active Directory. En la captura de pantalla siguiente se muestra la integración de Active Directory (Azure RBAC) con control de acceso (IAM) en Azure Portal:

Captura de pantalla en la que se muestra la página Control de acceso (IAM) de un centro de desarrollo.

Para acceder a los pasos detallados, consulte Asignación de roles de Azure mediante Azure Portal.

Centro de desarrollo, grupo de recursos y estructura del proyecto

Antes de nada, su organización debe invertir tiempo para planificar la colocación de los centros de desarrollo y la estructura de los grupos de recursos y proyectos.

Centros de desarrollo: organice los centros de desarrollo según el conjunto de proyectos que le gustaría administrar conjuntamente, aplicando configuraciones similares y proporcionando plantillas similares.

Las organizaciones pueden usar uno o varios centros de desarrollo. Normalmente, cada suborganización dentro de la organización tiene su propio centro de desarrollo. Puede considerar la posibilidad de crear varios centros de desarrollo en los siguientes casos:

  • Si quiere que haya configuraciones específicas disponibles para un subconjunto de proyectos.

  • Si los distintos equipos deben poseer y mantener el recurso de centro de desarrollo en Azure.

Proyectos: asociados a cada equipo de desarrollo o grupo de personas que trabajan en una aplicación o producto.

La planificación es especialmente importante al asignar roles al grupo de recursos porque también aplica permisos a todos los recursos del grupo de recursos, incluidos los centros de desarrollo, las conexiones de red, las definiciones de equipo de desarrollo, los grupos de equipo de desarrollo y los proyectos.

Para asegurarse de que a los usuarios solo se les concede permiso para los recursos adecuados:

  • Cree grupos de recursos que solo contengan recursos de Dev Box.

  • Organice los proyectos según la definición del equipo de desarrollo y los grupos de equipos de desarrollo necesarios y los desarrolladores que deben tener acceso. Es importante tener en cuenta que los grupos de equipos de desarrollo determinan la ubicación del equipo de desarrollo creado. Los desarrolladores deben crear equipos de desarrollo en una ubicación cercana para reducir al mínimo la latencia.

Por ejemplo, puede crear proyectos independientes para distintos equipos de desarrolladores para aislar los recursos de cada equipo. Los administradores de desarrollo de un proyecto se pueden asignar al rol Administrador de proyectos, que solo les concede acceso a los recursos de su equipo.

Importante

Planifique la estructura por adelantado porque no es posible mover recursos de Dev Box como proyectos o entornos a otro grupo de recursos después de crearlos.

Estructura del catálogo

Microsoft Dev Box usa catálogos para permitir a los desarrolladores implementar personalizaciones para cuadros de desarrollo mediante un catálogo de tareas y un archivo de personalización para instalar software, agregar extensiones, clonar repositorios, etc. 

Microsoft Dev Box almacena los catálogos en un repositorio de GitHub o en un repositorio de Azure DevOps Services. Puede adjuntar un catálogo a un centro de desarrollo o a un proyecto.

Puede adjuntar uno o varios catálogos al centro de desarrollo y administrar todas las personalizaciones en ese nivel. Para proporcionar más granularidad en la forma en que los desarrolladores acceden a las personalizaciones, puede adjuntar catálogos en el nivel de proyecto. Al planear dónde adjuntar catálogos, debe tener en cuenta las necesidades de cada equipo de desarrollo.