Editar

Partilhar via


Gerenciar a configuração de locatário do Microsoft 365 usando o Microsoft365DSC e o Azure DevOps

Azure DevOps
Azure Key Vault
Azure Windows Virtual Machines
Microsoft 365

A solução descrita aqui controla as alterações feitas pelos administradores de serviço e adiciona um processo de aprovação às implantações para locatários do Microsoft 365. Ele pode ajudá-lo a evitar alterações não controladas em locatários do Microsoft 365. Ele também ajuda a evitar desvios de configuração entre vários locatários do Microsoft 365.

Arquitetura

Diagrama que mostra a arquitetura para automatizar alterações nas configurações de locatário do Microsoft 365.

Transfira um ficheiro do Visio desta arquitetura.

Fluxo de Trabalho

  1. O Admin 1 adiciona, atualiza ou exclui uma entrada na bifurcação do Admin 1 do arquivo de configuração do Microsoft 365.
  2. O Admin 1 confirma e sincroniza as alterações com o repositório bifurcado do Admin 1.
  3. O administrador 1 cria uma solicitação pull (PR) para mesclar as alterações no repositório principal.
  4. O pipeline de construção é executado no PR.
  5. Os administradores revisam o código e mesclam o PR.
  6. O PR mesclado dispara um pipeline para compilar arquivos MOF (Managed Object Format). O pipeline chama o Azure Key Vault para recuperar credenciais usadas nos MOFs.
  7. Uma tarefa do Azure PowerShell em um pipeline de vários estágios usa os arquivos MOF compilados para implantar alterações de configuração por meio do Microsoft365DSC.
  8. Os administradores validam as alterações em um locatário do Microsoft 365 em estágios.
  9. Os administradores recebem notificação do processo de aprovação no Azure DevOps para o locatário de produção do Microsoft 365. Os administradores aprovam ou rejeitam as alterações.

Componentes

  • O Azure Pipelines permite a integração contínua (CI) e a entrega contínua (CD) para testar e criar seu código e enviá-lo para qualquer destino.
  • O Azure Key Vault melhora a segurança do armazenamento de tokens, senhas, certificados, chaves de API e outros segredos. Ele também fornece acesso rigorosamente controlado a esses segredos.
  • O Microsoft365DSC fornece automação para a implantação, configuração e monitoramento de locatários do Microsoft 365 por meio do PowerShell DSC.
  • O Windows PowerShell DSC é uma plataforma de gerenciamento no PowerShell. Você pode usá-lo para gerenciar sua infraestrutura de desenvolvimento usando um modelo de configuração como código.

Alternativas

Como próxima etapa, você pode usar o DSC na Automação do Azure para armazenar configurações em um local central e adicionar relatórios de conformidade com o estado desejado.

Essa arquitetura usa o Cofre da Chave para armazenar certificados do Serviço de Aplicativo do Azure ou credenciais de usuário usadas para autenticação no locatário do Microsoft 365. O Key Vault fornece escalabilidade. Como alternativa, você pode usar variáveis de pipeline para reduzir a complexidade da solução.

Detalhes do cenário

Muitas empresas estão adotando práticas de DevOps e querem aplicar essas práticas aos seus locatários do Microsoft 365. Se você não adotar o DevOps para Microsoft 365, poderá encontrar alguns problemas comuns:

  • Configuração incorreta
  • Desafios com o acompanhamento de alterações de configuração
  • Nenhum processo de aprovação para modificações de locatário

Você pode usar a solução descrita neste artigo para automatizar alterações nas configurações de locatário do Microsoft 365 usando o Azure DevOps e o Microsoft365DSC. O Microsoft365DSC é um módulo de Configuração de Estado Desejado (DSC) do PowerShell. Você pode usá-lo para configurar e gerenciar locatários do Microsoft 365 em um verdadeiro estilo DevOps: configuração como código.

Potenciais casos de utilização

Esta solução pode ajudá-lo a gerenciar a configuração do locatário do Microsoft 365 de forma controlada e automatizada, usando ferramentas e práticas de DevOps, em:

  • Ambientes de desenvolvimento, teste, aceitação e produção.
  • Vários locatários de clientes, como em um cenário de provedor de serviços gerenciados.

Considerações

Essas considerações implementam os pilares do Azure Well-Architected Framework, que é um conjunto de princípios orientadores que podem ser usados para melhorar a qualidade de uma carga de trabalho. Para obter mais informações, consulte Microsoft Azure Well-Architected Framework.

A maioria das pessoas que estão começando com o PowerShell DSC acham que leva um tempo para aprendê-lo. Isso ajuda se você tiver uma sólida compreensão do PowerShell e experiência com a criação de scripts.

Operações

Algumas equipes de operações consideram o Azure DevOps uma ferramenta para desenvolvedores. Mas essas equipes podem se beneficiar do uso do Azure DevOps. As equipas de operações podem:

  • Armazene seus scripts em um repositório e adicione controle de origem e controle de versão.
  • Automatize implantações de scripts.
  • Use quadros para acompanhar tarefas, projetos e muito mais.

Usar um modelo de configuração como código não é uma tarefa única. É uma mudança na sua forma de trabalhar e uma mudança fundamental para todos os membros da equipa. Você não faz mais alterações manualmente. Em vez disso, tudo é implementado em scripts e implantado automaticamente. Todos os membros da equipe precisam ter as habilidades para fazer essa mudança.

Escalabilidade

Você pode usar essa solução quando estiver trabalhando com vários ambientes, várias cargas de trabalho e/ou várias equipes. Você pode configurar o processo de validação para que os especialistas precisem aprovar cada carga de trabalho. Você também pode estender a solução para implantação a vários locatários, para um cenário de desenvolvimento/teste/aceitação/produção e/ou para várias organizações.

Para aumentar ainda mais a escalabilidade, você pode usar uma solução de dados de configuração agregada como o Datum.

Segurança

A maioria dos recursos do Microsoft365DSC suporta autenticação via nome de usuário e senha. Mas não recomendamos esse tipo de autenticação porque as práticas recomendadas da Microsoft recomendam a autenticação multifator. As credenciais do aplicativo são o método preferencial, onde suportado pelos recursos do Microsoft 365. Por exemplo, o SharePoint Online, o Microsoft Entra ID e outros recursos oferecem suporte a credenciais de aplicativo.

Se você criar uma solução Microsoft365DSC no Azure DevOps, também poderá aproveitar a segurança no Azure Pipelines e um processo de aprovação para proteger a implantação para seu locatário de produção.

DevOps

Você pode executar essa solução no Servidor de DevOps do Azure. Você pode criar uma solução semelhante no GitHub usando as Ações do GitHub.

Otimização de custos

A otimização de custos consiste em procurar formas de reduzir despesas desnecessárias e melhorar a eficiência operacional. Para obter mais informações, consulte Visão geral do pilar de otimização de custos.

Para obter informações sobre preços do Azure DevOps, consulte Preços do Azure DevOps. Se incorporar o Key Vault na sua solução, pode encontrar informações sobre preços aqui.

Você também pode usar a calculadora de preços do Azure para estimar custos.

Contribuidores

Este artigo está sendo mantido pela Microsoft. Foi originalmente escrito pelos seguintes contribuidores.

Autor principal:

  • Derek Smay - Brasil | Engenheiro de Clientes Sênior

Próximos passos

Governança de ponta a ponta no Azure ao usar CI/CD