Linha de base de segurança do Azure para o Functions
Essa linha de base de segurança aplica diretrizes do Microsoft Cloud Security Benchmark versão 1.0 ao Functions. O Microsoft Cloud Security Benchmark fornece recomendações sobre como você pode proteger suas soluções de nuvem no Azure. O conteúdo é agrupado pelos controles de segurança definidos pelo parâmetro de comparação de segurança de nuvem da Microsoft e pelas diretrizes relacionadas aplicáveis ao Functions.
Você pode monitorar essa linha de base de segurança e as recomendações usando o Microsoft Defender para Nuvem. Azure Policy definições serão listadas na seção Conformidade Regulatória da página do portal do Microsoft Defender for Cloud.
Quando um recurso tem definições de Azure Policy relevantes, elas são listadas nessa linha de base para ajudá-lo a medir a conformidade com os controles e recomendações de parâmetro de comparação de segurança de nuvem da Microsoft. Algumas recomendações podem exigir um plano de Microsoft Defender pago para habilitar determinados cenários de segurança.
Observação
Recursos não aplicáveis ao Functions foram excluídos. Para ver como o Functions é mapeado completamente para o parâmetro de comparação de segurança de nuvem da Microsoft, consulte o arquivo completo de mapeamento de linha de base de segurança do Functions.
Perfil de segurança
O perfil de segurança resume comportamentos de alto impacto do Functions, o que pode resultar em considerações de segurança maiores.
Atributo de comportamento do serviço | Valor |
---|---|
Categoria do Produto | Computação, Web |
O cliente pode acessar HOST/SO | Sem Acesso |
O serviço pode ser implantado na rede virtual do cliente | True |
Armazena o conteúdo do cliente em repouso | True |
Segurança de rede
Para obter mais informações, consulte o parâmetro de comparação de segurança de nuvem da Microsoft: segurança de rede.
NS-1: estabelecer limites de segmentação de rede
Recursos
Integração de rede virtual
Descrição: o serviço dá suporte à implantação na VNet (Rede Virtual privada) do cliente. Saiba mais.
Com suporte | Habilitado por padrão | Responsabilidade de configuração |
---|---|---|
True | Falso | Cliente |
Diretrizes de configuração: implante o serviço em uma rede virtual. Atribua IPs privados ao recurso (quando aplicável), a menos que haja um motivo forte para atribuir IPs públicos diretamente ao recurso.
Observação: os recursos de rede são expostos pelo serviço, mas precisam ser configurados para o aplicativo. Por padrão, o acesso à rede pública é permitido.
Referência: Azure Functions opções de rede
Suporte ao Grupo de Segurança de Rede
Descrição: o tráfego de rede de serviço respeita a atribuição de regra de Grupos de Segurança de Rede em suas sub-redes. Saiba mais.
Com suporte | Habilitado por padrão | Responsabilidade de configuração |
---|---|---|
True | Falso | Cliente |
Diretrizes de configuração: use NSG (grupos de segurança de rede) para restringir ou monitorar o tráfego por porta, protocolo, endereço IP de origem ou endereço IP de destino. Crie regras de NSG para restringir as portas abertas do serviço (como impedir que portas de gerenciamento sejam acessadas de redes não confiáveis). Lembre-se de que, por padrão, os NSGs negam todo o tráfego de entrada, mas permitem o tráfego da rede virtual e de Azure Load Balancers.
Referência: Azure Functions opções de rede
NS-2: proteger serviços de nuvem com controles de rede
Recursos
Link Privado do Azure
Descrição: funcionalidade de filtragem de IP nativa do serviço para filtrar o tráfego de rede (não deve ser confundida com NSG ou Firewall do Azure). Saiba mais.
Com suporte | Habilitado por padrão | Responsabilidade de configuração |
---|---|---|
True | Falso | Cliente |
Diretrizes de configuração: implante pontos de extremidade privados para todos os recursos do Azure que dão suporte ao recurso Link Privado, para estabelecer um ponto de acesso privado para os recursos.
Referência: Azure Functions opções de rede
Desabilitar o acesso à rede pública
Descrição: o serviço dá suporte à desabilitação do acesso à rede pública usando a regra de filtragem de ACL de IP no nível de serviço (não NSG ou Firewall do Azure) ou usando um comutador de alternância "Desabilitar Acesso à Rede Pública". Saiba mais.
Com suporte | Habilitado por padrão | Responsabilidade de configuração |
---|---|---|
True | Falso | Cliente |
Notas de recurso: Azure Functions podem ser configurados com pontos de extremidade privados, mas atualmente não há uma única alternância para desabilitar o acesso à rede pública sem configurar pontos de extremidade privados.
Diretrizes de configuração: desabilite o acesso à rede pública usando a regra de filtragem de ACL de IP no nível do serviço ou um comutador de alternância para acesso à rede pública.
Gerenciamento de identidades
Para obter mais informações, consulte o parâmetro de comparação de segurança de nuvem da Microsoft: gerenciamento de identidades.
IM-1: usar um sistema centralizado de identidade e autenticação
Recursos
Autenticação do Azure AD necessária para acesso ao plano de dados
Descrição: o serviço dá suporte ao uso Azure AD autenticação para acesso ao plano de dados. Saiba mais.
Com suporte | Habilitado por padrão | Responsabilidade de configuração |
---|---|---|
True | Falso | Cliente |
Notas de recurso: os pontos de extremidade de propriedade do cliente podem ser configurados para exigir Azure AD requisitos de autenticação. Os pontos de extremidade fornecidos pelo sistema para operações de implantação e ferramentas de desenvolvedor avançadas dão suporte a Azure AD mas, por padrão, têm a capacidade de usar as credenciais de publicação. Essas credenciais de publicação podem ser desabilitadas. Alguns pontos de extremidade do plano de dados no aplicativo podem ser acessados por chaves administrativas configuradas no host do Functions, e eles não são configuráveis com Azure AD requisitos no momento.
Diretrizes de configuração: use o Azure Active Directory (Azure AD) como o método de autenticação padrão para controlar o acesso ao plano de dados.
Referência: configurar credenciais de implantação – desabilitar a autenticação básica
Métodos de autenticação local para acesso ao plano de dados
Descrição: métodos de autenticações locais com suporte para acesso ao plano de dados, como um nome de usuário local e senha. Saiba mais.
Com suporte | Habilitado por padrão | Responsabilidade de configuração |
---|---|---|
True | True | Microsoft |
Notas de recurso: as credenciais de implantação são criadas por padrão, mas podem ser desabilitadas. Algumas operações expostas pelo runtime do aplicativo podem ser executadas usando uma chave administrativa, que atualmente não pode ser desabilitada. Você pode armazenar essa chave no Azure Key Vault e regenerá-la a qualquer momento. Evite o uso de métodos ou contas de autenticação local, eles devem ser desabilitados sempre que possível. Em vez disso, use Azure AD para autenticar sempre que possível.
Diretrizes de configuração: nenhuma configuração adicional é necessária, pois isso está habilitado em uma implantação padrão.
Referência: Desabilitar a autenticação básica
IM-3: gerenciar identidades de aplicativos de maneira segura e automática
Recursos
Identidades gerenciadas
Descrição: as ações do plano de dados dão suporte à autenticação usando identidades gerenciadas. Saiba mais.
Com suporte | Habilitado por padrão | Responsabilidade de configuração |
---|---|---|
True | Falso | Cliente |
Diretrizes de configuração: use identidades gerenciadas do Azure em vez de entidades de serviço quando possível, que podem se autenticar em serviços e recursos do Azure que dão suporte à autenticação do Azure Active Directory (Azure AD). As credenciais de identidades gerenciadas são completamente gerenciadas, giradas e protegidas pela plataforma, evitando credenciais codificadas no código-fonte ou arquivos de configuração.
Referência: como usar identidades gerenciadas para Serviço de Aplicativo e Azure Functions
Entidades de Serviço
Descrição: o plano de dados dá suporte à autenticação usando entidades de serviço. Saiba mais.
Com suporte | Habilitado por padrão | Responsabilidade de configuração |
---|---|---|
True | Falso | Cliente |
Diretrizes de configuração: não há diretrizes atuais da Microsoft para essa configuração de recursos. Examine e determine se sua organização deseja configurar esse recurso de segurança.
Monitoramento do Microsoft Defender para Nuvem
Definições internas do Azure Policy - Microsoft.Web:
Nome (Portal do Azure) |
Descrição | Efeito(s) | Versão (GitHub) |
---|---|---|---|
Os aplicativos do Serviço de Aplicativo devem usar a identidade gerenciada | Usar uma identidade gerenciada para uma segurança de autenticação aprimorada | AuditIfNotExists, desabilitado | 3.0.0 |
IM-7: restringir o acesso aos recursos com base nas condições
Recursos
Acesso condicional para o plano de dados
Descrição: o acesso ao plano de dados pode ser controlado usando Azure AD Políticas de Acesso Condicional. Saiba mais.
Com suporte | Habilitado por padrão | Responsabilidade de configuração |
---|---|---|
True | Falso | Cliente |
Notas de recurso: para pontos de extremidade do plano de dados que não são definidos pelo aplicativo, o acesso condicional precisaria ser configurado no Gerenciamento de Serviços do Azure.
Diretrizes de Configuração: defina as condições e os critérios aplicáveis para o acesso condicional do Azure Active Directory (Azure AD) na carga de trabalho. Considere casos de uso comuns, como bloquear ou conceder acesso de locais específicos, bloquear comportamentos de entrada arriscados ou exigir dispositivos gerenciados pela organização para aplicativos específicos.
IM-8: restringir a exposição de credenciais e segredos
Recursos
Armazenamento e integração de suporte a segredos e credenciais de serviço no Azure Key Vault
Descrição: o plano de dados dá suporte ao uso nativo de Key Vault do Azure para armazenamento de credenciais e segredos. Saiba mais.
Com suporte | Habilitado por padrão | Responsabilidade de configuração |
---|---|---|
True | Falso | Cliente |
Diretrizes de configuração: verifique se os segredos e as credenciais são armazenados em locais seguros, como Key Vault do Azure, em vez de inseri-los em arquivos de código ou de configuração.
Referência: usar referências de Key Vault para Serviço de Aplicativo e Azure Functions
Acesso privilegiado
Para obter mais informações, consulte o parâmetro de comparação de segurança de nuvem da Microsoft: acesso privilegiado.
PA-1: separar e limitar usuários administrativos/altamente privilegiados
Recursos
Contas de Administração local
Descrição: o serviço tem o conceito de uma conta administrativa local. Saiba mais.
Com suporte | Habilitado por padrão | Responsabilidade de configuração |
---|---|---|
Falso | Não Aplicável | Não Aplicável |
Diretrizes de configuração: não há suporte para esse recurso para proteger esse serviço.
PA-7: Siga apenas o princípio da administração Just Enough ( privilégios mínimos)
Recursos
RBAC do Azure para Plano de Dados
Descrição: o RBAC do Azure (Azure Role-Based Controle de Acesso) pode ser usado para obter acesso gerenciado às ações do plano de dados do serviço. Saiba mais.
Com suporte | Habilitado por padrão | Responsabilidade de configuração |
---|---|---|
True | Falso | Cliente |
Notas do recurso: as únicas ações do plano de dados que podem aproveitar o RBAC do Azure são os pontos de extremidade Kudu/SCM/implantação. Eles exigem permissão durante a Microsoft.Web/sites/publish/Action
operação. Os pontos de extremidade expostos pelo próprio aplicativo cliente não são cobertos pelo RBAC do Azure.
Diretrizes de configuração: use o RBAC do Azure (controle de acesso baseado em função) do Azure para gerenciar o acesso a recursos do Azure por meio de atribuições de função internas. As funções RBAC do Azure podem ser atribuídas a usuários, grupos, entidades de serviço e identidades gerenciadas.
Referência: permissões RBAC necessárias para acessar o Kudu
PA-8: determinar o processo de acesso para suporte ao provedor de nuvem
Recursos
Sistema de Proteção de Dados do Cliente
Descrição: o Sistema de Proteção de Dados do Cliente pode ser usado para acesso de suporte da Microsoft. Saiba mais.
Com suporte | Habilitado por padrão | Responsabilidade de configuração |
---|---|---|
True | Falso | Cliente |
Diretrizes de configuração: em cenários de suporte em que a Microsoft precisa acessar seus dados, use o Sistema de Proteção de Dados do Cliente para revisar e, em seguida, aprovar ou rejeitar cada uma das solicitações de acesso a dados da Microsoft.
Proteção de dados
Para obter mais informações, consulte o parâmetro de comparação de segurança de nuvem da Microsoft: proteção de dados.
DP-2: monitorar anomalias e ameaças direcionadas a dados confidenciais
Recursos
Prevenção contra perda/vazamento de dados
Descrição: o serviço dá suporte à solução DLP para monitorar a movimentação de dados confidenciais (no conteúdo do cliente). Saiba mais.
Com suporte | Habilitado por padrão | Responsabilidade de configuração |
---|---|---|
Falso | Não Aplicável | Não Aplicável |
Diretrizes de configuração: não há suporte para esse recurso para proteger esse serviço.
DP-3: criptografar dados confidenciais ativos
Recursos
Criptografia de dados em trânsito
Descrição: o serviço dá suporte à criptografia de dados em trânsito para o plano de dados. Saiba mais.
Com suporte | Habilitado por padrão | Responsabilidade de configuração |
---|---|---|
True | Falso | Cliente |
Notas de recursos: os aplicativos de funções são criados por padrão para dar suporte ao TLS 1.2 como uma versão mínima, mas um aplicativo pode ser configurado com uma versão inferior por meio de uma configuração. O HTTPS não é necessário em solicitações de entrada por padrão, mas você também pode alterar isso definindo a configuração. Nesse momento, qualquer solicitação HTTP será redirecionada automaticamente para usar HTTPS.
Diretrizes de Configuração: habilite a transferência segura em serviços em que há um recurso nativo de criptografia de trânsito integrado. Imponha HTTPS em qualquer aplicativo Web e serviços e verifique se o TLS v1.2 ou posterior é usado. Versões herdadas como SSL 3.0, TLS v1.0 devem ser desabilitadas. Para gerenciamento remoto de Máquinas Virtuais, use SSH (para Linux) ou RDP/TLS (para Windows) em vez de um protocolo não criptografado.
Referência: adicionar e gerenciar certificados TLS/SSL no Serviço de Aplicativo do Azure
Monitoramento do Microsoft Defender para Nuvem
Definições internas do Azure Policy - Microsoft.Web:
Nome (Portal do Azure) |
Descrição | Efeito(s) | Versão (GitHub) |
---|---|---|---|
Os aplicativos do Serviço de Aplicativo só devem ser acessíveis por HTTPS | O uso do HTTPS garante a autenticação do servidor/serviço e protege os dados em trânsito de ataques de interceptação de camada de rede. | Auditoria, desabilitado, negação | 4.0.0 |
DP-4: habilitar a criptografia de dados inativos por padrão
Recursos
Criptografia de dados em repouso usando chaves de plataforma
Descrição: há suporte para a criptografia de dados em repouso usando chaves de plataforma, qualquer conteúdo do cliente em repouso é criptografado com essas chaves gerenciadas pela Microsoft. Saiba mais.
Com suporte | Habilitado por padrão | Responsabilidade de configuração |
---|---|---|
True | True | Microsoft |
Diretrizes de configuração: nenhuma configuração adicional é necessária, pois isso está habilitado em uma implantação padrão.
DP-5: usar a opção de chave gerenciada pelo cliente na criptografia de dados inativos quando necessário
Recursos
Criptografia de dados inativos usando a CMK
Descrição: a criptografia de dados em repouso usando chaves gerenciadas pelo cliente tem suporte para o conteúdo do cliente armazenado pelo serviço. Saiba mais.
Com suporte | Habilitado por padrão | Responsabilidade de configuração |
---|---|---|
True | Falso | Cliente |
Notas de recurso: Azure Functions não dá suporte diretamente a esse recurso, mas um aplicativo pode ser configurado para aproveitar os serviços que fazem isso, no lugar de qualquer possível armazenamento de dados no Functions. Arquivos do Azure pode ser montado como o sistema de arquivos, todas as Configurações de Aplicativo, incluindo segredos, podem ser armazenadas no Azure Key Vault e opções de implantação, como run-from-package, podem extrair conteúdo do Armazenamento de Blobs do Azure.
Diretrizes de configuração: se necessário para conformidade regulatória, defina o caso de uso e o escopo do serviço em que a criptografia usando chaves gerenciadas pelo cliente é necessária. Habilite e implemente a criptografia de dados inativos usando a chave gerenciada pelo cliente para esses serviços.
Referência: criptografar os dados inativos do aplicativo usando chaves gerenciadas pelo cliente
DP-6: usar um processo de gerenciamento de chaves seguro
Recursos
Gerenciamento de chaves no Azure Key Vault
Descrição: o serviço dá suporte à integração de Key Vault do Azure para quaisquer chaves, segredos ou certificados do cliente. Saiba mais.
Com suporte | Habilitado por padrão | Responsabilidade de configuração |
---|---|---|
True | Falso | Cliente |
Diretrizes de configuração: use o Azure Key Vault para criar e controlar o ciclo de vida de suas chaves de criptografia, incluindo geração, distribuição e armazenamento de chaves. Gire e revogue suas chaves no Azure Key Vault e seu serviço com base em um agendamento definido ou quando houver uma desativação ou comprometimento importante. Quando houver a necessidade de usar a CMK (chave gerenciada pelo cliente) na carga de trabalho, no serviço ou no nível do aplicativo, verifique se você segue as práticas recomendadas para o gerenciamento de chaves: use uma hierarquia de chaves para gerar uma DEK (chave de criptografia de dados) separada com a KEK (chave de criptografia de chave) no cofre de chaves. Verifique se as chaves estão registradas no Key Vault do Azure e referenciadas por meio de IDs de chave do serviço ou aplicativo. Se você precisar trazer sua própria chave (BYOK) para o serviço (como importar chaves protegidas por HSM de seus HSMs locais para o Azure Key Vault), siga as diretrizes recomendadas para executar a geração inicial de chaves e a transferência de chave.
Referência: usar referências de Key Vault para Serviço de Aplicativo e Azure Functions
DP-7: usar um processo seguro de gerenciamento de certificados
Recursos
Gerenciamento de certificados no Azure Key Vault
Descrição: o serviço dá suporte à integração de Key Vault do Azure para todos os certificados de cliente. Saiba mais.
Com suporte | Habilitado por padrão | Responsabilidade de configuração |
---|---|---|
True | Falso | Cliente |
Diretrizes de configuração: use o Azure Key Vault para criar e controlar o ciclo de vida do certificado, incluindo criação, importação, rotação, revogação, armazenamento e limpeza do certificado. Verifique se a geração de certificado segue os padrões definidos sem usar nenhuma propriedade insegura, como: tamanho de chave insuficiente, período de validade excessivamente longo, criptografia insegura. Configure a rotação automática do certificado no Azure Key Vault e no serviço do Azure (se houver suporte) com base em um agendamento definido ou quando houver uma expiração do certificado. Se não houver suporte para rotação automática no aplicativo, verifique se eles ainda são girados usando métodos manuais no Azure Key Vault e no aplicativo.
Referência: adicionar um certificado TLS/SSL no Serviço de Aplicativo do Azure
Gerenciamento de ativos
Para obter mais informações, consulte o parâmetro de comparação de segurança de nuvem da Microsoft: Gerenciamento de ativos.
AM-2: usar apenas serviços aprovados
Recursos
Suporte ao Azure Policy
Descrição: as configurações de serviço podem ser monitoradas e impostas por meio de Azure Policy. Saiba mais.
Com suporte | Habilitado por padrão | Responsabilidade de configuração |
---|---|---|
True | Falso | Cliente |
Diretrizes de configuração: use Microsoft Defender para Nuvem para configurar Azure Policy para auditar e impor configurações de seus recursos do Azure. Use o Azure Monitor para criar alertas quando houver um desvio da configuração detectado nos recursos. Use Azure Policy efeitos [negar] e [implantar se não existir] para impor a configuração segura entre os recursos do Azure.
Registro em log e detecção de ameaças
Para obter mais informações, consulte o parâmetro de comparação de segurança de nuvem da Microsoft: Registro em log e detecção de ameaças.
LT-1: habilitar funcionalidades de detecção de ameaças
Recursos
Microsoft Defender para oferta de serviço/produto
Descrição: o serviço tem uma solução de Microsoft Defender específica da oferta para monitorar e alertar sobre problemas de segurança. Saiba mais.
Com suporte | Habilitado por padrão | Responsabilidade de configuração |
---|---|---|
True | Falso | Cliente |
Notas sobre o recurso: o Defender para Serviço de Aplicativo inclui Azure Functions. Se essa solução estiver habilitada, os aplicativos de funções no escopo de habilitação serão incluídos.
Diretrizes de configuração: use o Azure Active Directory (Azure AD) como o método de autenticação padrão para controlar o acesso ao plano de gerenciamento. Quando você receber um alerta de Microsoft Defender para Key Vault, investigue e responda ao alerta.
Referência: Defender para Serviço de Aplicativo
LT-4: habilitar o registro em log para investigação de segurança
Recursos
Azure Resource Logs
Descrição: o serviço produz logs de recursos que podem fornecer métricas e logs avançados específicos do serviço. O cliente pode configurar esses logs de recursos e enviá-los para seu próprio coletor de dados, como uma conta de armazenamento ou um workspace do Log Analytics. Saiba mais.
Com suporte | Habilitado por padrão | Responsabilidade de configuração |
---|---|---|
True | Falso | Cliente |
Diretrizes de configuração: habilite os logs de recursos para o serviço. Por exemplo, Key Vault dá suporte a logs de recursos adicionais para ações que obtêm um segredo de um cofre de chaves ou SQL do Azure tem logs de recursos que acompanham solicitações para um banco de dados. O conteúdo de logs de recursos varia de acordo com o tipo de recurso e serviço do Azure.
Referência: Monitoramento de Azure Functions com logs do Azure Monitor
Backup e recuperação
Para obter mais informações, consulte o parâmetro de comparação de segurança de nuvem da Microsoft: backup e recuperação.
BR-1: garantir backups automatizados regulares
Recursos
Serviço de Backup do Azure
Descrição: o serviço pode ser feito com backup pelo serviço Backup do Azure. Saiba mais.
Com suporte | Habilitado por padrão | Responsabilidade de configuração |
---|---|---|
Falso | Não Aplicável | Não Aplicável |
Notas de recurso: um recurso para fazer backup de um aplicativo estará disponível se estiver hospedado em um plano de Serviço de Aplicativo Standard, Premium ou Isolado. Esse recurso não aproveita Backup do Azure e não inclui fontes de eventos ou armazenamento vinculado externamente. Consulte /azure/app-service/manage-backup para obter mais detalhes.
Diretrizes de configuração: não há suporte para esse recurso para proteger esse serviço.
Funcionalidade de backup nativo de serviço
Descrição: o serviço dá suporte à sua própria funcionalidade de backup nativo (se não estiver usando Backup do Azure). Saiba mais.
Com suporte | Habilitado por padrão | Responsabilidade de configuração |
---|---|---|
True | Falso | Cliente |
Notas sobre o recurso: um recurso de backup está disponível para aplicativos em execução nos planos standard, premium e isolado Serviço de Aplicativo. Isso não inclui o backup de fontes de eventos ou armazenamento fornecido externamente.
Diretrizes de configuração: não há diretrizes atuais da Microsoft para essa configuração de recurso. Examine e determine se sua organização deseja configurar esse recurso de segurança.
Referência: fazer backup e restaurar seu aplicativo no Serviço de Aplicativo do Azure
Próximas etapas
- Confira a Visão geral do parâmetro de comparação de segurança de nuvem da Microsoft
- Saiba mais sobre a Linhas de base de segurança do Azure