Skip to main content

Como escalar com sucesso usando os atributos e as tags de projeto da Snyk

Escrito por
Headshot of Josefa Riveros

Josefa Riveros

imageonline co vibranceimage

30 de setembro de 2020

0 minutos de leitura

Crescer é uma sensação ótima! Seja quando falamos de plantas no jardim, massa crescendo ou do aumento no número de desenvolvedores e equipes que criam aplicações e serviços na sua organização, é impossível não adorar ver as coisas crescerem.

Mas crescer sem as ferramentas certas para atender às suas necessidades de escala pode expor sua organização a riscos de segurança que podem virar notícia. Esses riscos incluem:

  • Os desenvolvedores podem perder muito tempo procurando os projetos em que precisam trabalhar. Com isso, o trabalho pode ser feito às pressas ou com atalhos para cumprir novos prazos apertados.

  • Vulnerabilidades críticas podem se perder em meio a uma enxurrada de problemas menos graves, à medida que aumenta muito o uso de projetos open source.

  • Entregar diferentes tipos de aplicações rapidamente, usando uma variedade cada vez maior de projetos, significa que a governança de alto nível já não é uma opção segura e suficiente.

Manter a produtividade alta, uma governança granular e prioridades de trabalho claras é essencial para minimizar as ameaças à segurança. Por isso, você precisa de algo que ajude a organizar seus projetos e, ao mesmo tempo, permita controlá-los em detalhes.

Painel de projetos do Snyk com lista pesquisável de projetos, filtros de integração, indicadores de gravidade e tags de projeto
Os atributos e as tags de projeto do Snyk organizam seus projetos e, ao mesmo tempo, permitem um controle detalhado sobre eles

Project Attributes e Tags, com uma pitada de Policies

É com grande satisfação que anunciamos o lançamento de soluções para ajudar você a escalar o uso de projetos na Snyk com eficiência: Project Attributes e Project Tags.

An Introduction to Management at Scale with Snyk

Além de parecerem a próxima dupla de combate ao crime que vai conquistar as telas, elas também trabalham juntas para ajudar você a manter a produtividade, implementar a governança no nível do projeto e definir prioridades. Vamos apresentar rapidamente o que são Project Attributes e Tags e, em seguida, mostrar como aplicar policies aos projetos.

Os atributos de projeto são fixos e não podem ser configurados. São atributos comuns pelos quais as organizações costumam agrupar projetos. Cada atributo tem vários valores que podem ser atribuídos para ajudar você a organizar seus projetos com eficiência:

  • O ambiente em que estão: interno, externo, frontend, backend e outros.

  • A criticidade para os negócios: alta, média ou baixa.

  • A etapa do ciclo de vida de desenvolvimento de software: produção, desenvolvimento ou sandbox.

Além de permitir uma governança granular — falaremos disso daqui a pouco —, os atributos podem ser usados para filtrar projetos na página de listagem. Assim, você encontra facilmente um grupo pequeno de projetos em uma organização com milhares deles.

Página de visão geral de um projeto Maven com detalhes do grupo do projeto, tags de ambiente, criticidade e um problema de alta gravidade.

Se, além dos atributos de projeto disponibilizados pela Snyk, você quiser organizar e priorizar o trabalho com base em critérios específicos da sua organização, pode criar e atribuir tags aos projetos. As tags são totalmente flexíveis: você escolhe o que elas representam e a quais projetos se aplicam. Alguns exemplos comuns de tags:

  1. É provável que várias equipes trabalhem na Snyk, cada uma responsável por um conjunto específico de projetos. Então, que tal agrupar esses projetos com tags que indiquem o nome da equipe e aumentar a produtividade de todos?

  2. O que é importante para uma organização pode não ser para outra, e cada organização costuma ter seu próprio vocabulário para descrever riscos. Use tags para agrupar projetos de acordo com seus critérios internos de risco.

  3. Aplicações e serviços podem ter nomes bem interessantes e, às vezes, usar projetos de um ou mais repositórios. Agrupar projetos pela aplicação ou pelo serviço a que pertencem é uma maneira prática de garantir que suas equipes priorizem o trabalho certo.

Depois de criar e aplicar tags aos seus projetos, você poderá aproveitar mais um recurso que estará disponível (muito) em breve: filtrar projetos pelas tags na página de listagem. Assim, fica mais fácil encontrar uma agulha no palheiro. O recurso estará disponível na interface em breve. Fique de olho! 

Página de detalhes do projeto no Snyk, exibindo tags do projeto, ambiente, criticidade para os negócios e controles de filtragem
filtrando seus projetos de acordo com as tags com o Snyk

Aplique policies aos projetos para manter a segurança em escala

Como já adiantamos, a nova combinação de policies e atributos oferece a governança granular necessária para aplicar policies no nível do projeto.

Os projetos são diferentes entre si, e é bem provável que você queira aplicar padrões diferentes a cada um. Um projeto voltado ao público externo e essencial para os negócios provavelmente terá regras diferentes das de um projeto interno de backend. Ao criar uma policy de segurança ou de licenças, você pode atribuí-la a um grupo específico de projetos com base nos atributos e valores associados a eles.

Vamos ver um exemplo rápido:

A equipe jurídica da minha organização tem uma policy que determina que é essencial não corrermos o risco de violar licenças em qualquer conteúdo com que nossos clientes interajam na interface da aplicação. Isso pode acontecer se os projetos que compõem a aplicação incluírem licenças que a equipe jurídica tenha identificado como proibidas. Também recebemos uma lista priorizada de violações de licença, da gravidade baixa à alta. Para evitar violações, preciso criar uma policy que identifique licenças proibidas nos projetos da minha equipe.

Começo atribuindo os valores adequados aos atributos dos meus projetos para agrupar os projetos críticos. Os valores que identifiquei para esses projetos são:

  • críticos para os negócios

  • em produção

  • voltados ao frontend

  • externos

Visão geral de um projeto Java no Snyk, mostrando o arquivo pom.xml, o responsável pelo projeto, o ambiente, a criticidade para os negócios e as tags importadas.

Depois de aplicar os valores aos atributos corretos de todos os projetos em questão, posso criar uma policy para aplicá-la a eles.

Na aba de policies, posso escolher se quero criar uma policy de licenças para organizações ou para atributos. Neste exemplo, vou criar uma especificamente para atributos. 

Depois de alterar a gravidade das licenças proibidas para “Alta”, posso associá-las aos atributos dos projetos relevantes. Ao clicar em enviar, a policy será aplicada. Se algum dos projetos associados incluir uma das licenças contempladas pela policy, minha equipe receberá notificações em vários lugares, como na página de problemas do projeto e nos relatórios. Também posso configurar minhas verificações de PR para falhar quando houver problemas com licenças de alta gravidade.

Tela da política de licenças do Snyk mostrando atributos do projeto e uma lista de licenças com níveis de gravidade

O que você está esperando?

Se você quer trabalhar com segurança em escala nos seus projetos, sejam cem ou cem mil, aproveite hoje mesmo o poder das tags, dos atributos e das policies de projeto.

Project Attributes estão disponíveis em todos os planos do Snyk Open Source e do Snyk Container, inclusive no plano Free. Project Tags estão disponíveis nos planos Pro e Enterprise do Snyk Open Source e do Snyk Container. Esses recursos podem ser usados pela API e pela interface.

Policies estão disponíveis nos planos Pro e Enterprise. As policies de licenças já estão disponíveis; as Security Policies e a possibilidade de aplicar policies a atributos de projeto estão atualmente em beta. Fale com seu Customer Success Manager se quiser participar!

Comece a jogar Capture the Flag

Aprenda a resolver desafios de Capture the Flag assistindo sob demanda ao nosso workshop virtual introdutório.

Publicado em: