Skip to main content

The Secure Developer: conversando sobre DevSecOps no Azure com Victoria Almazova, da Microsoft

Escrito por
Headshot of Hayley Denbraver

Hayley Denbraver

26 de setembro de 2019

0 minutos de leitura

Em fevereiro deste ano, a Snyk lançou uma nova comunidade educacional, independente de fornecedores e focada em segurança: The Secure Developer. A Snyk quer ajudar desenvolvedores a adotar uma mentalidade de segurança em todo o processo de desenvolvimento, e a comunidade The Secure Developer é o lugar ideal para isso: um espaço para aprender boas práticas de segurança com especialistas, de forma acessível e positiva.

Nos últimos sete meses, The Secure Developer promoveu sessões virtuais quinzenais sobre temas que vão de segurança de microsserviços a 10 controles proativos do OWASP.

Se você duvida do valor de uma sessão virtual, deixe-me dar uma ideia rápida do que acontece nelas, apresentando uma sessão recente do The Secure Developer. Espero que isso convença você a participar da nossa próxima sessão virtual.

DevSecOps no Azure com Victoria Almazova, da Microsoft

Victoria Almazova é arquiteta de soluções em nuvem na Microsoft. Seu trabalho envolve ajudar pessoas a planejar, projetar e implantar projetos na nuvem do Azure. Ela considera a segurança em todas as etapas desse processo — e foi exatamente sobre isso que falou em sua sessão recente. Victoria explicou como:

  • implementar a segurança do Azure no nível da assinatura

  • desenvolver aplicações seguras

  • implantar suas aplicações com segurança

  • fazer verificações periódicas de conformidade e segurança em produção

Quando o DevOps começou a ganhar popularidade, Victoria desconfiava do conceito, pois parecia deixar a segurança de lado. Com o tempo, ela passou a ver o DevOps como uma oportunidade de integrar a segurança de forma mais abrangente. Victoria definiu DevOps como a união de pessoas, processos e tecnologia que possibilita a entrega contínua de valor aos usuários finais. Gostando ou não do termo da moda “DevSecOps”, a segurança pode participar de todo o processo de DevOps, do começo ao fim, tornando o produto final ainda mais valioso.

Integrar a segurança a um processo de DevOps pode parecer difícil, por isso Victoria compartilhou alguns pontos de partida.

A infraestrutura pode ser um bom ponto de partida. Victoria recomenda organizar as assinaturas do Azure por projeto e por ambiente. Isso ajuda a garantir permissões e configurações adequadas para cada projeto e ambiente. Também é importante que as políticas sejam transparentes e proativas. Além disso, Victoria sugeriu usar o Azure Security Center desde o primeiro dia.

Para completar suas recomendações sobre infraestrutura, Victoria acredita que adotar uma abordagem de Infraestrutura como Código (IaC) é fundamental. Se você não conhece o termo, IaC é o gerenciamento da infraestrutura por meio de um modelo descritivo, usando o mesmo controle de versões que as equipes de DevOps aplicam ao código-fonte. O modelo de IaC evita desvios entre ambientes e garante consistência.

A última dica de Victoria para proteger a infraestrutura é permitir que os ambientes de produção sejam atualizados somente pelo pipeline de Integração Contínua/Entrega Contínua (CI/CD), nunca por processos manuais. O pipeline de CI/CD é essencial para as iniciativas de segurança. Ao passar a falar sobre segurança de aplicações, Victoria mostrou à comunidade como ela se conecta a diferentes etapas do pipeline de CI/CD. Segundo Victoria, essas etapas incluem:

  1. Pré-commit

  2. Commit (CI)

  3. Aceitação (CD)

  4. Produção

  5. Operações

É possível reforçar a segurança em cada uma dessas etapas, como veremos a seguir.

Pré-commit

Na etapa de pré-commit, o desenvolvedor escreve código novo ou altera o código existente. Investir em segurança nesse momento traz benefícios mais adiante, pois é mais fácil fazer mudanças nessa fase do pipeline. É uma ótima oportunidade para fazer modelagem de ameaças, usar um plugin de segurança para IDE, seguir os padrões de programação segura da equipe e revisar o código com colegas.

Commit (CI)

Na etapa de commit, você pode configurar vários processos para serem executados automaticamente. Entre as considerações de segurança nessa fase do pipeline de CI/CD estão a análise estática de código, os testes unitários de segurança e o gerenciamento de dependências.

Aceitação (CD)

Entre as considerações de segurança relevantes na etapa de aceitação estão IaC, análise de segurança, configuração da nuvem e testes de aceitação de segurança. Esses testes podem ser feitos em um ambiente de QA ou staging antes de tudo ir para produção.

Produção

Entre os procedimentos que reforçam a segurança em produção estão testes rápidos de segurança, verificações de configuração e testes de invasão.

Operações

Na etapa de operações, processos contínuos de monitoramento, inteligência contra ameaças, testes de invasão e análises pós-incidente sem atribuição de culpa ajudam a fortalecer a postura e a cultura de segurança.

The Secure Developer

Victoria encerrou a sessão com uma demonstração e um espaço para perguntas e respostas. Recomendo assistir à apresentação completa aqui. Gostei da perspectiva de Victoria sobre as várias maneiras de desenvolvedores elevarem o nível de segurança, seja ao implantar um projeto na nuvem do Azure ou em outra solução.

A comunidade The Secure Developer se dedica a trazer excelentes palestrantes, como Victoria Almazova, para nossas sessões virtuais e nosso podcast. Se você quer aprender mais sobre todos os aspectos da segurança, considere participar da comunidade. Será um prazer ter você conosco.

Publicado em: