In this article
Visão geral sobre security champions
Como criar programas de security champions que funcionam para sua organização
O que é um security champion?
Um security champion é um desenvolvedor que representa formalmente uma equipe de engenharia. Essa pessoa interage diretamente com a equipe de segurança e é responsável por reduzir a distância entre desenvolvimento e segurança. Entre suas atribuições estão, por exemplo, ensinar práticas de desenvolvimento seguro à equipe de engenharia, incluir e aprimorar verificações de segurança no fluxo de trabalho dos desenvolvedores, questionar decisões da equipe de engenharia que não considerem a segurança e dar visibilidade à equipe de segurança sobre as práticas e a situação da equipe de desenvolvimento da qual faz parte — entre muitas outras.
O que é um programa de security champions?
Os programas de security champions aproximam as equipes de segurança e desenvolvimento. Ambas querem entregar aplicações seguras na velocidade exigida pelo negócio. Tradicionalmente, porém, as práticas de segurança são incorporadas ao SDLC sem que o conhecimento e as práticas sejam disseminados pelas equipes de desenvolvimento. Isso cria barreiras de segurança, automatizadas ou manuais, que geram retrabalho e frustração para os desenvolvedores e tornam mais lenta a entrega do produto.
Na prática, precisamos combinar a experiência aprofundada da equipe de segurança com a abrangência e as práticas da organização de desenvolvimento, para que ela continue entregando software com rapidez e segurança. Security champions são uma ótima maneira de atender a essa necessidade, promovendo a comunicação, o compartilhamento de conhecimento e a colaboração entre as duas equipes.
Security champions são desenvolvedores interessados em segurança que fazem parte da equipe de desenvolvimento. Eles fazem a ponte entre duas equipes que, tradicionalmente, trabalham isoladas. Confira alguns dos benefícios que esses programas podem trazer para qualquer organização.
Principais benefícios de iniciar um programa de security champions
As equipes podem ter motivações e benefícios diferentes ao participar de um programa de security champions. Como mencionado, desenvolvimento e segurança compartilham o objetivo de reduzir os problemas e os riscos gerais das aplicações pelas quais são responsáveis. As equipes de desenvolvimento podem usar o programa para aprender e receber orientação, enquanto a equipe de segurança ganha visibilidade, amplia seu alcance e consegue escalar suas iniciativas.
Confira os quatro motivos mais comuns que as equipes apontaram para criar um programa de security champions:
Ter uma pessoa de referência na equipe de desenvolvimento para treinar e capacitar toda a equipe. O objetivo de tornar as equipes de desenvolvimento mais autossuficientes e autônomas só pode ser alcançado com conhecimento e compreensão. Em segurança, é importante que as técnicas de desenvolvimento seguro sejam reconhecidas e compreendidas por toda a equipe. Engenheiros ensinando outros engenheiros é uma abordagem muito mais eficaz para ampliar esse conhecimento e promover a capacitação.
Ampliar a equipe de segurança de forma não linear na organização. É comum haver 10 profissionais em funções semelhantes às de operações e apenas uma pessoa de segurança para dar suporte a cada 100 engenheiros. A única forma de escalar o desenvolvimento seguro é por meio da organização de engenharia, com a equipe de segurança capacitando e apoiando os desenvolvedores.
Se aprimorar para se tornar um desenvolvedor melhor e mais completo, possivelmente impulsionando a carreira. Muitos desenvolvedores têm curiosidade natural sobre segurança e simplesmente querem aprender mais e aprofundar seus conhecimentos e suas práticas nessa área. Para alguns, isso pode até abrir caminho para uma carreira em segurança.
Ampliar a influência da segurança no início do ciclo para incorporá-la desde o começo, em vez de adicioná-la depois. Uma fonte comum de frustração para os desenvolvedores é deixar as práticas de segurança para o fim do lançamento de um recurso ou do ciclo de desenvolvimento. Quando são incluídas no final do ciclo, elas se tornam mais frustrantes e demoradas, em vez de serem bem planejadas. A segurança deve ser considerada em todas as etapas, inclusive no design.
Para ajudar você a criar seu próprio programa de champions de segurança de aplicações, vamos compartilhar boas práticas e armadilhas a evitar, com base em experiências reais de organizações de diferentes portes, níveis de maturidade e setores. Assim, você poderá aplicar essas lições ao planejar, criar e conduzir seu programa.
Programas de security champions têm foco nos desenvolvedores
Ao considerar as necessidades das suas equipes, lembre-se de que, embora programas como esse normalmente sejam conduzidos e apoiados pela equipe de segurança, os objetivos, os desafios e as necessidades dos desenvolvedores devem vir em primeiro lugar. Se você não priorizar as necessidades das equipes de desenvolvimento, não conseguirá uma adesão espontânea nem a participação dos desenvolvedores, o que limitará bastante a eficácia do programa.
Pergunte aos desenvolvedores o que esperam do programa, quais dificuldades enfrentam no dia a dia e como você pode agregar valor às suas funções para facilitar o trabalho e ajudá-los a alcançar seus objetivos. Ao pensar em como apoiar e capacitar desenvolvedores e equipes por meio do programa, você poderá enxergar seu valor pela perspectiva de quem participa, e não apenas como responsável ou administrador.
É importante distinguir um programa de security champions de uma comunidade de segurança. Uma comunidade de segurança é um espaço para pessoas interessadas em segurança compartilharem, aprenderem e aprimorarem seus conhecimentos. Já um programa de security champions é uma iniciativa aprovada pela organização para ampliar as práticas de segurança e incorporá-las à organização de desenvolvimento.
Programas de security champions precisam do apoio da liderança
Ao começar, evite lançar e conduzir um programa de security champions sem o apoio da liderança tanto das áreas de segurança quanto de engenharia. Esse apoio permite que os profissionais dediquem tempo ao programa e às atividades relacionadas, sabendo que a gestão reconhece sua importância.
Na área de segurança, os patrocinadores executivos costumam ser o CISO, o vice-presidente de Segurança ou o diretor de Segurança de Produtos. Na área de engenharia, geralmente são o CTO ou o vice-presidente sênior de Engenharia. Isso costuma depender da estrutura organizacional da empresa. O importante é que as duas partes aprovem o programa e que essa decisão seja comunicada às equipes, aos scrum masters, à gestão e a todos os envolvidos.
Em nossas conversas, o momento em que esse patrocínio foi acordado variou. Ainda assim, os melhores resultados foram obtidos quando isso aconteceu logo no início ou após um pequeno projeto-piloto com algumas equipes. É importante explicar quais problemas o programa pretende resolver e deixar claras as atividades e responsabilidades necessárias. Isso pode incluir a dedicação de tempo, caso você queira especificar quanto tempo o champion deve investir em segurança.
Com o patrocínio da liderança e o apoio da gestão local, o champion terá disposição para reduzir outras entregas e assumir atividades de segurança, pois saberá que não será penalizado por mudar suas responsabilidades — por exemplo, em uma avaliação de desempenho.