Início rápido: Criar um grupo de gerenciamento com o Go
Grupos de gerenciamento são contêineres que o ajudarão a gerenciar o acesso, a política e a conformidade entre várias assinaturas. Criar esses contêineres para criar uma hierarquia eficaz e eficiente que pode ser usada com o Azure Policy e os Controles de Acesso Baseados em Função do Azure. Para obter mais informações sobre grupos de gerenciamento, consulte Organizar seus recursos com grupos de gerenciamento do Azure.
O primeiro grupo de gerenciamento criado no diretório pode levar até 15 minutos para ser concluído. Há processos que são executados pela primeira vez para configurar o serviço de grupos de gerenciamento no Azure para seu diretório. Você recebe uma notificação quando o processo é concluído. Para obter mais informações, confira Configuração inicial dos grupos de gerenciamento.
Pré-requisitos
Se você não tiver uma assinatura do Azure, crie uma conta gratuita antes de começar.
Uma entidade de serviço do Azure, incluindo clientId e clientSecret. Se você não tiver uma entidade de serviço para uso com o Azure Policy ou quiser criar uma, confira Bibliotecas de gerenciamento do Azure para autenticação do .NET. Ignore a etapa para instalar os pacotes do .NET Core, pois faremos isso nas próximas etapas.
Qualquer usuário do Microsoft Entra ID no locatário poderá criar um grupo de gerenciamento sem ter recebido a permissão de gravação no grupo de gerenciamento se a proteção de hierarquia não estiver habilitada. Esse novo grupo de gerenciamento se torna um grupo filho do Grupo de Gerenciamento Raiz ou do grupo de gerenciamento padrão, e uma função de Proprietário é atribuída ao criador. O serviço de grupo de gerenciamento permite essa capacidade para que as atribuições de função não sejam necessárias no nível raiz. Quando o Grupo de Gerenciamento Raiz é criado, os usuários não têm acesso a ele. Para que os grupos de gerenciamento comecem a ser usados, o serviço permite a criação dos grupos de gerenciamento iniciais no nível raiz. Para obter mais informações, confira Grupo de gerenciamento raiz para cada diretório.
Azure Cloud Shell
O Azure hospeda o Azure Cloud Shell, um ambiente de shell interativo que pode ser usado por meio do navegador. É possível usar o bash ou o PowerShell com o Cloud Shell para trabalhar com os serviços do Azure. É possível usar os comandos pré-instalados do Cloud Shell para executar o código neste artigo, sem precisar instalar nada no seu ambiente local.
Para iniciar o Azure Cloud Shell:
Opção | Exemplo/Link |
---|---|
Selecione Experimentar no canto superior direito de um bloco de código ou de comando. Selecionar Experimentar não copia automaticamente o código nem o comando para o Cloud Shell. | |
Acesse https://shell.azure.com ou selecione o botão Iniciar o Cloud Shell para abri-lo no navegador. | |
Selecione o botão Cloud Shell na barra de menus no canto superior direito do portal do Azure. |
Para usar o Azure Cloud Shell:
Inicie o Cloud Shell.
Selecione o botão Copiar em um bloco de código (ou bloco de comando) para copiar o código ou o comando.
Cole o código ou comando na sessão do Cloud Shell selecionando Ctrl+Shift+V no Windows e no Linux, ou selecionando Cmd+Shift+V no macOS.
Pressione Enter para executar o código ou o comando.
Adicionar o pacote de grupo de gerenciamento
A fim de habilitar o Go para gerenciar grupos de gerenciamento, o pacote precisa ser adicionado. Esse pacote funciona em qualquer lugar em que o Go possa ser usado, incluindo o bash no Windows 10 ou instalado localmente.
Verifique se o Go mais recente está instalado (no mínimo, a versão 1.15). Se ele ainda não tiver sido instalado, baixe-o em Golang.org.
Verifique se a CLI do Azure mais recente está instalada (pelo menos a versão 2.5.1). Se ela ainda não tiver sido instalada, confira Instalar a CLI do Azure.
Observação
A CLI do Azure é necessária para habilitar o Go para usar o método
auth.NewAuthorizerFromCLI()
no exemplo a seguir. Para obter informações sobre outras opções, confira SDK do Azure para linguagem Go – mais detalhes de autenticação.Autentique-se por meio da CLI do Azure.
az login
No ambiente do Go de sua escolha, instale os pacotes necessários para os grupos de gerenciamento:
# Add the management group package for Go go install github.com/Azure/azure-sdk-for-go/services/resources/mgmt/2020-05-01/managementgroups@latest # Add the Azure auth package for Go go install github.com/Azure/go-autorest/autorest/azure/auth@latest
Instalação do aplicativo
Com os pacotes Go adicionados ao ambiente escolhido, é hora de configurar o aplicativo Go que pode criar um grupo de gerenciamento.
Crie o aplicativo Go e salve a seguinte fonte como
mgCreate.go
:package main import ( "context" "fmt" "os" mg "github.com/Azure/azure-sdk-for-go/services/resources/mgmt/2020-05-01/managementgroups" "github.com/Azure/go-autorest/autorest/azure/auth" ) func main() { // Get variables from command line arguments var mgName = os.Args[1] // Create and authorize a client mgClient := mg.NewClient() authorizer, err := auth.NewAuthorizerFromCLI() if err == nil { mgClient.Authorizer = authorizer } else { fmt.Printf(err.Error()) } // Create the request Request := mg.CreateManagementGroupRequest{ Name: &mgName, } // Run the query and get the results var results, queryErr = mgClient.CreateOrUpdate(context.Background(), mgName, Request, "no-cache") if queryErr == nil { fmt.Printf("Results: " + fmt.Sprint(results) + "\n") } else { fmt.Printf(queryErr.Error()) } }
Compilar o aplicativo Go:
go build mgCreate.go
Crie um grupo de gerenciamento usando o aplicativo Go compilado. Substitua
<Name>
pelo nome do seu grupo de gerenciamento:mgCreate "<Name>"
O resultado é um novo grupo de gerenciamento no grupo de gerenciamento raiz.
Limpar os recursos
Se desejar remover os pacotes instalados do seu ambiente do Go, você poderá fazer isso usando o seguinte comando:
# Remove the installed packages from the Go environment
go clean -i github.com/Azure/azure-sdk-for-go/services/resources/mgmt/2020-05-01/managementgroups
go clean -i github.com/Azure/go-autorest/autorest/azure/auth
Próximas etapas
Neste guia de início rápido, você criou um grupo de gerenciamento para organizar sua hierarquia de recursos. O grupo de gerenciamento pode conter assinaturas ou outros grupos de gerenciamento.
Para saber mais sobre grupos de gerenciamento e como gerenciar sua hierarquia de recursos, prossiga para: