Usar a política de Firewall do Azure para definir uma hierarquia de regras
Os administradores de segurança precisam gerenciar firewalls e garantir a conformidade entre implantações locais e na nuvem. Um componente fundamental é a capacidade de fornecer às equipes de aplicativos flexibilidade para implementar pipelines de CI/CD para criar regras de firewall de maneira automatizada.
A política de Firewall do Azure permite que você defina uma hierarquia de regra e imponha a conformidade:
- Fornece uma estrutura hierárquica para sobrepor uma política base central sobre uma política de equipe de aplicativo filho. A política de base tem uma prioridade mais alta e é executada antes da política filho.
- Use uma definição de função personalizada do Azure para evitar a remoção inadvertida da política base e fornecer acesso seletivo a grupos de coleção de regras em uma assinatura ou um grupo de recursos.
Visão geral da solução
As etapas de alto nível para este exemplo são:
- Criar uma política de firewall base no grupo de recursos da equipe de segurança.
- Definir regras específicas de segurança de TI na política de base. Isso adiciona um conjunto comum de regras para permitir/negar tráfego.
- Crie políticas de equipe de aplicativo que herdam a política de base.
- Defina regras específicas da equipe de aplicativo na política. Você também pode migrar regras de firewalls preexistentes.
- Crie funções personalizadas do Microsoft Entra para fornecer acesso granular ao grupo de coleta de regras e adicione funções em um escopo de Política de firewall. No exemplo a seguir, os membros da equipe de vendas podem editar grupos de coleção de regras para a política de firewall das equipes de vendas. O mesmo se aplica ao banco de dados e às equipes de engenharia.
- Associe a política ao firewall correspondente. Um firewall do Azure pode ter apenas uma política atribuída. Isso exige que cada equipe de aplicativo tenha o próprio firewall.
Criar as políticas de firewall
- Uma política de firewall base.
Crie políticas para cada uma das equipes de aplicativos:
- Uma política de firewall de vendas. A política de firewall de vendas herda a política de firewall de base.
- Uma política de firewall de banco de dados. A política de firewall de banco de dados herda a política de firewall base.
- Uma política de firewall de engenharia. A política de firewall de engenharia também herda a política de firewall de base.
Criar funções personalizadas para acessar os grupos de coleções de regras
As funções personalizadas são definidas para cada equipe de aplicativo. A função define as operações e o escopo. As equipes de aplicativos têm permissão para editar grupos de coleções de regras para os respectivos aplicativos.
Use o seguinte procedimento de alto nível para definir um arquivo de log personalizado:
Obter a assinatura.
Select-AzSubscription -SubscriptionId xxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxxx
Execute o comando a seguir.
Get-AzProviderOperation "Microsoft.Support/*" | FT Operation, Description -AutoSize
Use o comando Get-AzRoleDefinition para exportar a função Leitor no formato JSON.
Get-AzRoleDefinition -Name "Reader" | ConvertTo-Json | Out-File C:\CustomRoles\ReaderSupportRole.json
Abra o arquivo ReaderSupportRole.json em um editor.
Esta é a saída JSON. Para obter informações sobre as diversas propriedades, confira Funções personalizadas do Azure.
{
"Name": "Reader",
"Id": "acdd72a7-3385-48ef-bd42-f606fba81ae7",
"IsCustom": false,
"Description": "Lets you view everything, but not make any changes.",
"Actions": [
"*/read"
],
"NotActions": [],
"DataActions": [],
"NotDataActions": [],
"AssignableScopes": [
"/"
]
}
Edite o arquivo JSON para adicionar a
*/read", "Microsoft.Network/*/read", "Microsoft.Network/firewallPolicies/ruleCollectionGroups/write
operação à propriedade Actions. Inclua uma vírgula após a operação de leitura. Essa ação permite que o usuário crie e atualize grupos de coleções de regras.
Em AssignableScopes, adicione sua ID de assinatura com o seguinte formato.
/subscriptions/xxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxxx
Você deve adicionar IDs de assinatura explícitas. Caso contrário, você não terá permissão para importar a função para sua assinatura.
Exclua a linha de propriedade Id e altere a propriedade IsCustom para true.
Altere as propriedades Name e Description para Autor do Grupo de Coleções de Regras do AZFM e Usuários nessa função poderão editar grupos de coleções de regras da Política de Firewall
Seu arquivo JSON deve ser semelhante ao seguinte exemplo:
{
"Name": "AZFM Rule Collection Group Author",
"IsCustom": true,
"Description": "Users in this role can edit Firewall Policy rule collection groups",
"Actions": [
"*/read",
"Microsoft.Network/*/read",
"Microsoft.Network/firewallPolicies/ruleCollectionGroups/write"
],
"NotActions": [
],
"DataActions": [
],
"NotDataActions": [
],
"AssignableScopes": [
"/subscriptions/xxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxxx"]
}
Para criar a função personalizada, use o comando New-AzRoleDefinition e especifique o arquivo de definição da função JSON.
New-AzRoleDefinition -InputFile "C:\CustomRoles\RuleCollectionGroupRole.json
Listar funções personalizadas
Para listar todas as funções personalizadas, você pode usar o comando Get-AzRoleDefinition:
Get-AzRoleDefinition | ? {$_.IsCustom -eq $true} | FT Name, IsCustom
Você também pode ver as funções personalizadas no portal do Azure. Acesse sua assinatura, selecione Controle de acesso (IAM) , Funções.
Para obter mais informações, confira Tutorial: criar uma função personalizada do Azure usando o Azure PowerShell.
Adicionar usuários à função personalizada
No portal, você pode adicionar usuários à função Autores do Grupo de Coleções de Regra do AZFM e dar acesso às políticas de firewall.
- No portal, selecione a política de firewall da equipe de aplicativos (por exemplo, SalesAppPolicy).
- Selecione Controle de Acesso.
- Selecione Adicionar atribuição de função.
- Adicione usuários/grupos de usuários (por exemplo, a equipe de vendas) à função.
Repita esse procedimento para as outras políticas de firewall.
Resumo
A política de firewall com funções personalizadas agora dá acesso seletivo a grupos de coleção de regras de política de firewall.
Os usuários não têm permissões para:
- Excluir a política de firewall ou o Firewall do Azure.
- Atualize a hierarquia de política de firewall ou as configurações de DNS ou a inteligência contra ameaças.
- Atualize a política de firewall em que eles não são membros do grupo de Autor do Grupo de Coleções de Regras do AZFM.
Os administradores de segurança podem usar a política base para impor proteções e bloquear determinados tipos de tráfego (por exemplo, ICMP), conforme exigido pela empresa.