Definir configurações de segurança usando o Azure Blueprint

Concluído

Da mesma forma que um esquema permite que um engenheiro ou arquiteto crie um esboço dos parâmetros de design de um projeto, o Azure Blueprints permite que os arquitetos da cloud e os grupos de tecnologias de informação definam um conjunto repetível de recursos do Azure que implemente e adira às normas, padrões e requisitos de uma organização. O Azure Blueprints possibilita que as equipes de desenvolvimento criem e iniciem rapidamente novos ambientes com confiança que estão construindo dentro da conformidade organizacional com um conjunto de componentes internos, como rede, para acelerar o desenvolvimento e a entrega.

Os esquemas são uma forma declarativa de orquestrar a implementação de vários modelos de recursos e de outros artefactos, tais como:

  • Atribuições de Funções
  • Atribuições de Política
  • Modelos do Azure Resource Manager
  • Grupos de Recursos

O serviço Azure Blueprints é apoiado pelo Azure Cosmos DB globalmente distribuído. Os objetos do Blueprint são replicados para várias regiões do Azure. Essa replicação fornece baixa latência, alta disponibilidade e acesso consistente aos seus objetos de blueprint, independentemente da região em que o Azure Blueprints implanta seus recursos.

Como é diferente dos modelos do Azure Resource Manager

O serviço foi concebido para ajudar na configuração do ambiente. Essa configuração geralmente consiste em um conjunto de grupos de recursos, políticas, atribuições de função e implantações de modelo do Azure Resource Manager. Um blueprint é um pacote para reunir cada um desses tipos de artefato e permitir que você componha e faça a versão desse pacote, inclusive por meio de um pipeline de integração contínua e entrega contínua (CI/CD). Por fim, cada pacote é atribuído a uma subscrição numa única operação que pode ser auditada e controlada.

Quase tudo o que você deseja incluir para implantação no Azure Blueprints pode ser realizado com um modelo do Azure Resource Manager. No entanto, um modelo do Azure Resource Manager é um documento que não existe nativamente no Azure - cada um é armazenado localmente ou no controle do código-fonte ou em Modelos (visualização). O modelo é utilizado para implementações de um ou mais recursos do Azure, mas assim que esses recursos são implementados, não existe nenhuma ligação ou relação ativa com o modelo.

Com o Azure Blueprints, a relação entre a definição do esquema (o que deve ser implementado) e a atribuição do esquema (o que foi implementado) é preservada. Esta ligação suporta procedimentos melhorados de controlo e auditoria para implementações. Os Azure Blueprints também podem atualizar várias assinaturas ao mesmo tempo que são regidas pelo mesmo projeto.

Não há necessidade de escolher entre um modelo do Azure Resource Manager e um blueprint. Cada esquema pode consistir em zero ou mais artefatos de modelo do Azure Resource Manager. Esse suporte significa que os esforços anteriores para desenvolver e manter uma biblioteca de modelos do Azure Resource Manager são reutilizáveis no Azure Blueprints.

Como difere do Azure Policy

Um esquema é um pacote ou contentor para compor conjuntos específicos de foco de normas, padrões e requisitos relacionados com a implementação de design, segurança e serviços cloud do Azure, que podem ser reutilizados para manter a consistência e a conformidade.

Uma política é um sistema de negação explícita e permissão predefinida focado nas propriedades dos recursos durante a implementação e nos recursos existentes. Suporta a governação da cloud ao confirmar que os recursos numa subscrição cumprem requisitos e normas.

A inclusão de uma política num esquema permite a criação do padrão ou design certo durante a atribuição do esquema. A inclusão da política garante que apenas alterações aprovadas ou esperadas possam ser feitas no ambiente para proteger a conformidade contínua com a intenção do plano.

Uma política pode ser incluída como um dos muitos artefatos em uma definição de blueprint. Os esquemas também suportam a utilização de parâmetros com políticas e iniciativas.

Definição de esquema

Uma planta é composta de artefatos. Atualmente, o Azure Blueprints dá suporte aos seguintes recursos como artefatos:

Recurso Opções de hierarquia Descrição
Grupos de Recursos Subscrição Crie um novo grupo de recursos para utilização por outros artefactos no esquema. Esses grupos de recursos de espaço reservado permitem que você organize os recursos exatamente da maneira desejada e fornece um limitador de escopo para artefatos de atribuição de função e política incluídos e modelos ARM.
Modelo Azure Resource Manager Subscrição, Grupo de Recursos Os modelos, incluindo modelos aninhados e vinculados, são usados para compor ambientes complexos. Ambientes de exemplo: um farm do SharePoint, a Configuração de Estado da Automatização do Azure ou uma área de trabalho do Log Analytics.
Atribuição de Política Subscrição, Grupo de Recursos Permite a atribuição de uma política ou iniciativa à subscrição à qual o esquema está atribuído. A política ou iniciativa deve enquadrar-se no âmbito do local de definição do modelo. Se a política ou iniciativa tiver parâmetros, estes parâmetros são atribuídos durante a criação ou atribuição do esquema.
Atribuição de Função Subscrição, Grupo de Recursos Adicione um utilizador ou grupo existente a uma função incorporada para garantir que as pessoas certas têm sempre o acesso adequado aos seus recursos. As atribuições de funções podem ser definidas para a subscrição completa ou aninhadas num grupo de recursos específico incluído no esquema.

Locais de definição do blueprint

Ao criar uma definição de esquema, irá definir onde o esquema é guardado. Os planos podem ser salvos em um grupo de gerenciamento ou assinatura ao qual você tenha acesso de Colaborador. Se o local for um grupo de gerenciamento, o esquema estará disponível para atribuir a qualquer assinatura filho desse grupo de gerenciamento.

Parâmetros de esquema

Os esquemas podem passar parâmetros para uma política/iniciativa ou para um modelo do Azure Resource Manager. Quando adicionar qualquer um dos artefactos a um esquema, o opta por fornecer um valor definido para cada atribuição de esquema ou por permitir que cada atribuição de esquema forneça um valor no momento da atribuição. Esta flexibilidade oferece a possibilidade de definir um valor previamente determinado para todas as utilizações do esquema ou de permitir que essa decisão seja tomada no momento da atribuição.

Publicação do esquema

Quando um esquema é criado, considera-se que está no modo de Rascunho. Quando estiver pronto para ser atribuído, tem de ser Publicado. A publicação exige a definição de uma cadeia de Versão (letras, números e hífenes com um comprimento máximo de 20 carateres), juntamente com Notas de alteração opcionais. A Versão distingue-o de futuras alterações ao mesmo esquema e permite a atribuição de cada versão. Isto também significa que diferentes Versões do mesmo esquema podem ser atribuídas à mesma subscrição. Quando alterações adicionais são feitas no plano, a Versão Publicada ainda existe, assim como as alterações Não publicadas. Quando as alterações estiverem concluídas, o esquema atualizado é Publicado com uma Versão nova e exclusiva, que agora também pode ser atribuída.

Atribuição do esquema

Cada Versão Publicada de um esquema pode ser atribuída (com um comprimento máximo de nome de 90 caracteres) a um grupo de gerenciamento ou assinatura existente. No portal, o esquema utiliza como predefinição a VersãoPublicada mais recentemente. Se houver parâmetros de artefato ou parâmetros de blueprint, os parâmetros serão definidos durante o processo de atribuição.

Nota

Atribuir uma definição de blueprint a um grupo de gerenciamento significa que o objeto de atribuição existe no grupo de gerenciamento. A implantação de artefatos ainda tem como alvo uma assinatura. Para executar uma atribuição de grupo de gerenciamento, a API REST Criar ou Atualizar deve ser usada e o corpo da solicitação deve incluir um valor para properties.scope para definir a assinatura de destino.

Permissões no Azure Blueprints

Para usar blueprints, você deve receber permissões por meio do controle de acesso baseado em função do Azure (Azure RBAC). Para ler ou exibir um blueprint no portal do Azure, sua conta deve ter acesso de leitura ao escopo onde a definição de blueprint está localizada.

Para criar esquemas, a sua conta necessita das seguintes permissões:

  • Microsoft.Blueprint/blueprints/write - Criar uma definição de esquema
  • Microsoft.Blueprint/blueprints/artifacts/write - Criar artefactos numa definição de esquema
  • Microsoft.Blueprint/blueprints/versions/write - Publish a blueprint

Para eliminar esquemas, a sua conta necessita das seguintes permissões:

  • Microsoft.Blueprint/blueprints/delete
  • Microsoft.Blueprint/blueprints/artifacts/delete
  • Microsoft.Blueprint/blueprints/versions/delete

Nota

As permissões de definição do blueprint devem ser concedidas ou herdadas no grupo de gerenciamento ou no escopo da assinatura em que são salvas.

Nota

Como as atribuições do blueprint são criadas em uma assinatura, as permissões de atribuição e não atribuição do blueprint devem ser concedidas em um escopo de assinatura ou herdadas em um escopo de assinatura.

Para atribuir ou anular a atribuição de um esquema, a sua conta necessita das seguintes permissões:

  • Microsoft.Blueprint/blueprintAssignments/write - Atribuir um esquema
  • Microsoft.Blueprint/blueprintAssignments/delete - Anular a atribuição de um esquema

As seguintes funções internas estão disponíveis:

Função do Azure Descrição
Proprietário Além de outras permissões, inclui todas as permissões relacionadas ao Azure Blueprints.
Contribuinte Além de outras permissões, pode criar e excluir definições de blueprint, mas não tem permissões de atribuição de blueprint.
Contribuidor do Blueprint Pode gerenciar definições de blueprint, mas não atribuí-las.
Operador de Blueprint Pode atribuir esquemas publicados existentes, mas não pode criar novas definições de blueprint. A atribuição do Blueprint só funciona se a atribuição for feita com uma identidade gerenciada atribuída pelo usuário.

Se estas funções incorporadas não se adaptarem às suas necessidades de segurança, considere criar uma função personalizada.

Nota

Se estiver usando uma identidade gerenciada atribuída pelo sistema, a entidade de serviço para Azure Blueprints exigirá a função Proprietário na assinatura atribuída para habilitar a implantação. Se utilizar o portal, esta função é automaticamente concedida e revogada para a implementação. Se utilizar a API REST, esta função tem de ser concedida manualmente, mas continua a ser revogada automaticamente depois de concluída a implementação. Se estiver usando uma identidade gerenciada atribuída pelo usuário, somente o usuário que cria a atribuição de blueprint precisará doMicrosoft.Blueprint/blueprintAssignments/write permissão, que está incluída nas funções internas Proprietário e Operador Blueprint.