Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este artigo destina-se a engenheiros de plataforma, administradores de TI centrais e outros administradores de nível superior que planejam e gerenciam implantações do Microsoft Dev Box. Ele descreve as diferentes funções internas compatíveis com o Microsoft Dev Box e como elas são mapeadas para funções organizacionais, como engenheiro de plataforma e gerenciador de desenvolvimento, para que você possa planejar o modelo de permissões correto antes de implantar o Dev Box.
O RBAC (controle de acesso baseado em função) do Azure especifica funções internas que definem as permissões a serem aplicadas. Em vez de conceder permissões granulares diretamente a usuários ou grupos individuais, você atribui funções que agrupam permissões relacionadas para que você possa aplicar e auditar o acesso consistentemente entre recursos. Você atribui essa definição de função a um usuário ou grupo, por meio de uma atribuição de função para um escopo específico. O escopo pode ser um recurso individual, um grupo de recursos ou por toda a assinatura. Na próxima seção, você aprenderá quais as funções internas compatíveis com o Computador de Desenvolvimento da Microsoft.
Para saber mais, confira O que é o controle de acesso baseado em função do Azure (RBAC do Azure)?
Observação
Quando você faz alterações na atribuição de função, pode levar alguns minutos para que essas atualizações sejam propagadas.
Funções internas
Neste artigo, as funções internas do Azure são agrupadas logicamente em três tipos de função organizacional, com base em seu escopo de influência:
Funções de engenheiro de plataforma: influenciam permissões para centros de desenvolvimento, catálogos e projetos
Gerenciador de desenvolvimento: influencia permissões para recursos baseados em projeto
Funções de desenvolvedor: influenciam permissões para usuários
As seguintes funções internas são compatíveis com o Computador de Desenvolvimento da Microsoft:
| Tipo de função organizacional | Função interna | Descrição |
|---|---|---|
| Engenheiro de plataforma | Proprietário | Concede controle total para criar/gerenciar centros de desenvolvimento, catálogos e projetos e conceder permissões a outros usuários. Saiba mais sobre a função Proprietário. |
| Engenheiro de plataforma | Colaborador | Conceder controle total para criar/gerenciar centros de desenvolvimento, catálogos e projetos, exceto para atribuir funções a outros usuários. Saiba mais sobre a função Colaborador. |
| Engenheiro de plataforma | Proprietário do DevCenter | Forneça acesso para gerenciar todos os recursos do Microsoft.DevCenter e acessá-los. Saiba mais sobre a função DevCenter Owner. |
| Gerenciador de desenvolvimento | Administrador de Projeto do DevCenter | Conceder permissão para gerenciar determinados aspectos de projetos e computadores de desenvolvimento. Saiba mais sobre a função Administrador de projetos do DevCenter. |
| Desenvolvedor | Usuário do Computador de Desenvolvimento | Conceder permissão para criar computadores de desenvolvimento e ter controle total sobre os computadores de desenvolvimento que eles criam. Saiba mais sobre a função de usuário do Computador de Desenvolvimento. |
Escopo da atribuição de função:
No RBAC do Azure, escopo: é o conjunto de recursos ao qual o acesso se aplica. Quando você atribui uma função, é importante entender o escopo para que você conceda apenas o acesso necessário.
No Azure, você pode especificar um escopo em quatro níveis: grupo de gerenciamento, assinatura, grupo de recursos e recurso. Os escopos são estruturados em uma relação pai-filho. Cada nível de hierarquia torna o escopo mais específico. Você pode atribuir funções em qualquer um desses níveis de escopo. O nível que você seleciona determina o quão amplamente a função é aplicada. Os níveis inferiores herdam as permissões de função de níveis superiores. Saiba mais sobre o escopo do RBAC do Azure.
Para o Computador de Desenvolvimento da Microsoft, considere os seguintes escopos:
| Scope | Descrição |
|---|---|
| Subscription | Usado para gerenciar a cobrança e a segurança de todos os recursos e serviços do Azure. Normalmente, somente engenheiros de plataforma têm acesso no nível da assinatura porque essa atribuição de função concede acesso a todos os recursos na assinatura. |
| Grupo de recursos | Um contêiner lógico para agrupar recursos. A atribuição de função para o grupo de recursos concede permissão ao grupo de recursos e a todos os recursos dentro dele, como centros de desenvolvimento, definições de computador de desenvolvimento, pools de computadores de desenvolvimento, projetos e computadores de desenvolvimento. |
| Centro de desenvolvimento (recurso) | Uma coleção de projetos que exigem configurações semelhantes. A atribuição de função para o centro de desenvolvimento concede permissão ao centro de desenvolvimento em si. As permissões atribuídas para os centros de desenvolvimento não são herdadas por outros recursos de computador de desenvolvimento. |
| Projeto (recurso) | Um recurso do Azure usado para aplicar configurações comuns ao criar um computador de desenvolvimento. A atribuição de função para o projeto concede permissão somente a esse projeto específico. |
| Pool de computadores de desenvolvimento (recurso) | Uma coleção de computadores de desenvolvimento que você gerencia em conjunto e nos quais aplica configurações semelhantes. A atribuição de função para o pool de computadores de desenvolvimento concede permissão somente a esse pool específico. |
| Definição de computador de desenvolvimento (recurso) | Recurso do Azure que especifica uma imagem de origem e um tamanho, incluindo o tamanho da computação e o tamanho do armazenamento. A atribuição de função para a definição de computadores de desenvolvimento concede permissão somente a essa definição específica. |
Funções para atividades comuns do Computador de Desenvolvimento
A tabela a seguir mostra as atividades comuns do Computador de Desenvolvimento e a função necessária para que um usuário execute essa atividade.
| Atividade | Tipo de função | Função | Scope |
|---|---|---|---|
| Conceder permissão para criar um grupo de recursos. | Engenheiro de plataforma | Proprietário ou Colaborador | Subscription |
| Conceda permissão para enviar um tíquete de suporte da Microsoft, inclusive para solicitar capacidade. | Engenheiro de plataforma | Proprietário, Colaborador, Colaborador de Solicitação de Suporte | Subscription |
| Conceder permissão para criar redes virtuais e sub-redes. | Engenheiro de plataforma | Colaborador de rede | Grupo de recursos |
| Conceder permissão para criar uma conexão de rede. | Engenheiro de plataforma | Proprietário ou Colaborador | Grupo de recursos |
| Conceder permissão para atribuir funções a outros usuários. | Engenheiro de plataforma | Proprietário | Grupo de recursos |
| Conceder permissão para: – Criar/gerenciar centros de desenvolvimento. – Adicionar/remover conexões de rede. – Adicionar/remover galerias de computação do Azure. – Criar/gerenciar definições do computador de desenvolvimento. – Criar/gerenciar projetos. – Anexar/gerenciar catálogo para um centro de desenvolvimento ou projeto (os catálogos no nível do projeto devem ser habilitados no centro de desenvolvimento). – Configurar os limites do computador de desenvolvimento. |
Engenheiro de plataforma | Colaborador | Grupo de recursos |
| Conceda permissão para criar e gerenciar recursos do Dev Box sem conceder acesso a outros tipos de recursos no grupo de recursos.
– Centros de desenvolvimento – Projetos – Definições de Dev Box – Pools de Dev Box |
Engenheiro de plataforma | Proprietário do DevCenter | Grupo de recursos |
| Conceder permissão para adicionar ou remover uma conexão de rede para um centro de desenvolvimento. | Engenheiro de plataforma | Colaborador ou Proprietário do DevCenter | Centro de desenvolvimento |
| Conceder permissão para habilitar/desabilitar catálogos de projetos. | Gerenciador de desenvolvimento | Colaborador | Centro de desenvolvimento |
| Conceder permissão a: – Adicionar, sincronizar e remover catálogos (catálogos no nível do projeto devem ser habilitados no centro de desenvolvimento). - Criar pools de computadores de desenvolvimento. – Parar, iniciar, excluir computadores de desenvolvimento em pools. |
Gerenciador de desenvolvimento | Administrador de Projeto do DevCenter | Projeto |
| Criar e gerenciar seus próprios computadores de desenvolvimento em um projeto. | Usuário | Usuário do Computador de Desenvolvimento | Projeto |
| Criar e gerenciar catálogos em um repositório do GitHub ou Azure. | Gerenciador de desenvolvimento | Não regido pelo RBAC.
- O usuário deve receber permissões por meio do Azure DevOps ou do GitHub. |
Repositório |
Importante
A assinatura de uma organização é usada para gerenciar a cobrança e a segurança de todos os recursos e serviços do Azure. Você pode atribuir a função de Proprietário ou Colaborador na assinatura. Normalmente, somente engenheiros de plataforma têm acesso no nível da assinatura porque ela inclui acesso a todos os recursos na assinatura.
Funções para engenheiros de plataforma
Para conceder aos usuários permissão para gerenciar o Microsoft Dev Box na assinatura da sua organização, você pode atribuir a eles a função Proprietário ou Colaborador no escopo do grupo de recursos ou a função DevCenter Owner no escopo do centro de desenvolvimento.
Ao usar as funções Proprietário ou Colaborador, atribua-as ao grupo de recursos. Os centros de desenvolvimento, conexões de rede, definições de computador de desenvolvimento, pools de computador de desenvolvimento e projetos dentro do grupo de recursos herdam essas atribuições de função.
Função Proprietário
Atribuir a função Proprietário para dar a um usuário controle total para criar ou gerenciar recursos de Computador de Desenvolvimento e conceder permissões a outros usuários. Quando um usuário tem a função Proprietário no grupo de recursos, ele pode realizar as seguintes atividades em todos os recursos dentro do grupo de recursos:
- Atribua funções a engenheiros de plataforma para que eles possam gerenciar recursos do Computador de Desenvolvimento.
- Criar centros de desenvolvimento, conexões de rede, definições de computador de desenvolvimento, pools de computador de desenvolvimento e projetos.
- Exibir, excluir e alterar configurações de todos os centros de desenvolvimento, conexões de rede, definições de computador de desenvolvimento, pools de computador de desenvolvimento e projetos.
- Anexar e desanexar catálogos.
Função Parceiro
Atribua a função Colaborador para dar a um usuário controle total para criar ou gerenciar projetos e centros de desenvolvimento em um grupo de recursos. A função Colaborador tem as mesmas permissões que a função Proprietário, exceto para:
- Executar atribuições de função.
Atenção
Quando você atribui a função Proprietário ou Colaborador no grupo de recursos, essas permissões também se aplicam a recursos não relacionados ao Computador de Desenvolvimento que existem no grupo de recursos.
Função DevCenter Owner
Você pode atribuir a função DevCenter Owner no escopo do grupo de recursos ou no escopo do centro de desenvolvimento.
Função Proprietário do DevCenter no escopo do grupo de recursos
Atribua a função DevCenter Owner a um grupo de recursos para dar a um usuário controle total sobre os recursos do Microsoft.DevCenter sem conceder acesso mais amplo a outros recursos no grupo de recursos.
Quando um usuário tem a função DevCenter Owner em um grupo de recursos, ele pode:
- Crie, atualize e exclua centros de desenvolvimento nesse grupo de recursos.
- Crie, atualize e exclua projetos nesse grupo de recursos.
- Crie, atualize e exclua pools de computador de desenvolvimento e definições de computador de desenvolvimento nesse grupo de recursos.
- Gerenciar catálogos, conexões de rede e galerias de computação anexadas a centros de desenvolvimento no grupo de recursos.
- Delegue a administração do projeto atribuindo as funções de DevCenter Project Admin e DevCenter Dev Box User no nível do projeto.
Função Proprietário do DevCenter no escopo do centro de desenvolvimento
Atribua a função DevCenter Owner a um centro de desenvolvimento para dar a um usuário controle total sobre os recursos do Microsoft.DevCenter sem conceder acesso mais amplo a outros centros de desenvolvimento e seus recursos. Os usuários com essa função atribuída a um centro de desenvolvimento não podem criar novos centros de desenvolvimento.
Quando um usuário tem a função DevCenter Owner em um centro de desenvolvimento, ele pode:
- Crie, atualize e exclua projetos nesse centro de desenvolvimento.
- Crie, atualize e exclua pools de computadores de desenvolvimento e definições de computadores de desenvolvimento nesse centro de desenvolvimento.
- Gerenciar catálogos, conexões de rede e galerias de computação anexadas a esse centro de desenvolvimento.
- Delegue a administração do projeto atribuindo as funções de DevCenter Project Admin e DevCenter Dev Box User no nível do projeto.
Funções para Gerentes de Desenvolvimento
Há uma função de gerenciador de desenvolvimento: Administrador de projetos do DevCenter. Esta função tem permissões mais restritas em escopos de nível inferior do que as funções de engenheiro de plataforma. Você pode atribuir esta função aos gerentes de desenvolvimento para permitir que eles executem tarefas administrativas para a sua equipe.
Função Administrador de Projetos do DevCenter
Atribua a função Administrador de projetos do DevCenter para habilitar:
Adicionar, sincronizar e remover catálogos (catálogos no nível do projeto devem estar habilitados no centro de desenvolvimento).
Criar pools de computadores de desenvolvimento.
Parar, iniciar, excluir computadores de desenvolvimento em pools.
Funções para desenvolvedores
Há uma função de desenvolvedor: Usuário de Computador de Desenvolvimento. Essa função permite que os desenvolvedores criem e gerenciem seus próprios computadores de desenvolvimento.
Função de Usuário do Dev Box
Atribua a função de Usuário de Computador de Desenvolvimento para dar aos usuários permissão para criar computadores de desenvolvimento e ter controle total sobre os computadores de desenvolvimento que eles criam. Os desenvolvedores podem executar as seguintes ações em qualquer computador de desenvolvimento que criarem:
- Criar
- Iniciar/parar
- Reiniciar
- Atrasar o desligamento agendado
- Excluir
IAM (gerenciamento de identidade e acesso)
A página Controle de acesso (IAM) no portal do Azure é usada para configurar o controle de acesso baseado em função do Azure nos recursos do Computador de Desenvolvimento da Microsoft. Você pode usar funções internas para indivíduos e grupos no Active Directory. A seguinte captura de tela mostra a integração com o Active Directory (RBAC do Azure) usando o controle de acesso (IAM) no portal do Azure:
Para conferir as etapas detalhadas, veja Atribuir funções do Azure usando o portal do Azure.
Centro de desenvolvimento, grupo de recursos e estrutura de projeto
Sua organização deve investir tempo antecipadamente para planejar o posicionamento de seus centros de desenvolvimento e a estrutura de grupos de recursos e projetos.
Centros de desenvolvimento: organize centros de desenvolvimento pelo conjunto de projetos que você deseja gerenciar juntos, aplicando configurações semelhantes e fornecendo modelos semelhantes.
As organizações podem usar um centro de desenvolvimento ou mais. Normalmente, cada suborganização dentro da organização tem seu próprio centro de desenvolvimento. Você pode considerar a criação de vários centros de desenvolvimento nos seguintes casos:
Se desejar que configurações específicas estejam disponíveis para um subconjunto de projetos.
Se diferentes equipes precisam possuir e manter o recurso do centro de desenvolvimento no Azure.
Projetos: associados a cada equipe de desenvolvimento ou grupo de pessoas que trabalham em um aplicativo ou produto.
O planejamento é especialmente importante quando você atribui funções ao grupo de recursos porque ele também aplica permissões a todos os recursos no grupo de recursos, incluindo centros de desenvolvimento, conexões de rede, definições de computador de desenvolvimento, pools de computadores de desenvolvimento e projetos.
Para garantir que os usuários só recebam permissão para os recursos apropriados:
Crie grupos de recursos que contenham apenas recursos do Computador de Desenvolvimento.
Organize projetos de acordo com a definição de computador de desenvolvimento e pools de computadores de desenvolvimento necessários e os desenvolvedores que devem ter acesso. É importante observar que os pools de computadores de desenvolvimento determinam o local da criação do computador de desenvolvimento. Os desenvolvedores devem criar computadores de desenvolvimento em um local próximo a eles para obter a menor latência.
Por exemplo, você pode criar projetos separados para equipes de desenvolvedores diferentes para isolar os recursos de cada equipe. Os Gerentes de Desenvolvimento em um projeto podem então ser atribuídos à função de Administrador do projeto, que só lhes concede acesso aos recursos de suas equipes.
Importante
Planeje a estrutura antecipadamente, porque não é possível mover recursos de Computador de Desenvolvimento, como projetos ou ambientes, para um grupo de recursos diferente depois que eles são criados.
Estrutura do catálogo
O Computador de Desenvolvimento da Microsoft usa catálogos para permitir que desenvolvedores implantem personalizações para computadores de desenvolvimento usando um catálogo de tarefas e um arquivo de personalização para instalar software, adicionar extensões, clonar repositórios e muito mais.
O Computador de Desenvolvimento da Microsoft armazena catálogos em um repositório GitHub ou um repositório do Azure DevOps Services. Você pode anexar um catálogo a um centro de desenvolvimento ou a um projeto.
Você pode anexar um ou mais catálogos ao centro de desenvolvimento e gerenciar todas as personalizações nesse nível. Para fornecer mais granularidade a como os desenvolvedores acessam personalizações, você pode anexar catálogos no nível do projeto. Ao planejar onde anexar catálogos, considere as necessidades de cada equipe de desenvolvimento.