| | | |
Minder é uma plataforma de código aberto que ajuda equipes de desenvolvimento e comunidades de código aberto a criar software mais seguro e provar aos outros que o que construíram é seguro. A Minder ajuda os proprietários de projetos a gerenciar proativamente sua postura de segurança, fornecendo um conjunto de verificações e políticas para minimizar riscos ao longo da cadeia de fornecimento de software e atestar suas práticas de segurança para consumidores posteriores.
O Minder permite que os usuários registrem repositórios e definam políticas para garantir que os repositórios e os artefatos sejam configurados de forma consistente e segura. As políticas podem ser definidas para alertar apenas ou corrigir automaticamente. Minder fornece um conjunto predefinido de regras e também pode ser configurado para aplicar regras personalizadas.
O Minder pode ser implantado como um gráfico Helm e fornece um minder
de ferramentas CLI. Stacklok, uma empresa que oferece suporte ao Minder, também fornece uma versão hospedada gratuita do Minder (apenas para repositórios públicos). O Minder foi projetado para ser extensível, permitindo que os usuários se integrem às ferramentas e processos existentes.
Stacklok, uma empresa que apoia o Minder, fornece uma instância pública do Minder gratuita para uso. Esta é a instância padrão usada quando você usa a CLI minder
. Esta instância está disponível apenas para repositórios públicos.
Começar a usar o Minder leva menos de um minuto e é tão fácil quanto:
minder quickstart
para criar seu primeiro perfil.Em apenas alguns segundos, você registrará seus repositórios e ativará a proteção de verificação secreta para todos eles! ?
Escolha seu método preferido para instalar minder
:
Certifique-se de ter o Homebrew instalado.
brew install minder
Certifique-se de ter o Winget instalado.
winget install stacklok.minder
Baixe a versão mais recente em minder/releases.
Crie minder
e minder-server
a partir da fonte seguindo o guia de compilação a partir da fonte.
Para usar minder
com a instância pública do Minder ( api.stacklok.com
), faça login executando:
minder auth login
Após a conclusão, você verá que o Minder Server está configurado para api.stacklok.com
.
O comando quickstart
orienta você na criação de seu primeiro perfil no Minder, no registro de seus repositórios e na ativação da proteção de verificação secreta para seus repositórios em segundos.
Para fazer isso, execute:
minder quickstart
Isso solicitará que você registre seu provedor, selecione os repositórios desejados, crie o tipo de regra secret_scanning
e crie um perfil que permita a verificação secreta dos repositórios selecionados.
Para ver o status do seu perfil, execute:
minder profile status list --profile quickstart-profile --detailed
Você deverá ver o status geral do perfil e uma visão detalhada dos status de avaliação de regras para cada um dos seus repositórios registrados.
Minder continuará monitorando seus repositórios e garantirá a correção de quaisquer desvios do estado desejado usando o recurso remediate
ou alertando você, se necessário, usando o recurso alert
.
Parabéns! ? Agora você criou com sucesso seu primeiro perfil!
Agora você pode continuar explorando os recursos do Minder adicionando ou removendo mais repositórios, criando mais perfis com várias regras e muito mais. Há muito mais no Minder do que apenas digitalização secreta.
A regra secret_scanning
é apenas um dos muitos tipos de regras que o Minder suporta.
Você pode ver a lista completa de regras e perfis prontos para uso mantidos pela equipe do Minder aqui - mindersec/minder-rules-and-profiles.
Caso haja algo que você ainda não encontrou, o Minder foi projetado para ser extensível. Isso permite que os usuários criem seus próprios tipos de regras e perfis personalizados e garantam que as especificidades de sua postura de segurança sejam atestadas.
Agora que você tem tudo configurado, você pode continuar a executar comandos minder
na instância pública do Minder, onde você pode gerenciar seus repositórios registrados, criar perfis, regras e muito mais, para garantir que seus repositórios sejam configurados de forma consistente e segura.
Para obter mais informações sobre minder
, consulte:
minder
- Documentos.minder
- Docs.minder
mantidos pela equipe do Minder - GitHub.A comunidade Minder está trabalhando ativamente em novos recursos e melhorias para o Minder.
Você pode encontrar nosso roteiro aqui.
Se você deseja solicitar ou contribuir com um recurso ou melhoria, use o seguinte modelo de problema
Esta seção descreve como construir e executar o Minder a partir do código-fonte.
Você precisaria das seguintes ferramentas disponíveis – Go, Docker e Docker Compose.
Para construir e executar minder-server
, você também precisará do ko.
Para executar o conjunto de testes via make test
, você precisará do gotestfmt e do helm.
Para invocar o alvo run-docker
make, você precisará de yq.
git clone [email protected]:mindersec/minder.git
Execute o seguinte para construir minder
e minder-server
(os binários estarão presentes em ./bin/
)
make build
Para usar minder
com a instância pública do Minder ( api.stacklok.com
), execute:
minder auth login
Após a conclusão, você verá que o Minder Server está configurado para api.stacklok.com
.
Se você deseja executar minder
em uma instância local minder-server
, prossiga com as etapas abaixo.
Crie o arquivo de configuração inicial para minder
. Você pode fazer isso fazendo.
cp config/config.yaml.example config.yaml
Crie o arquivo de configuração inicial para minder-server
. Você pode fazer isso fazendo.
cp config/server-config.yaml.example server-config.yaml
Você também teria que configurar um aplicativo OAuth2 para uso minder-server
. Depois de concluído, atualize o arquivo de configuração com os valores apropriados. Veja a documentação sobre como fazer isso - Documentos.
minder-server
Inicie minder-server
junto com seus serviços dependentes ( keycloak
e postgres
) executando:
make run-docker
minder-server
usa Keycloak como um IAM. Para fazer login, você precisará configurar um aplicativo GitHub OAuth2 e configurar o Keycloak para usá-lo.
Crie um aplicativo OAuth2 para GitHub aqui. Selecione New OAuth App
e preencha os detalhes. O URL de retorno de chamada deve ser http://localhost:8081/realms/stacklok/broker/github/endpoint
. Crie um novo segredo de cliente para seu cliente OAuth2.
Usando client_id
e client_secret
que você criou acima, habilite o login do GitHub no Keycloak executando o seguinte comando:
make KC_GITHUB_CLIENT_ID= < client_id > KC_GITHUB_CLIENT_SECRET= < client_secret > github-login
Certifique-se de que o arquivo config.yaml
esteja presente no diretório atual para que minder
possa usá-lo.
Execute minder
em sua instância local do Minder ( localhost:8090
):
minder auth login
Após a conclusão, você verá que o Minder Server está definido como localhost:8090
.
Por padrão, a CLI minder
apontará para o ambiente Stacklok de produção se um arquivo de configuração não estiver presente, mas a criação do config.yaml
para executar o servidor apontará a CLI para o seu ambiente de desenvolvimento local. Se você quiser usar explicitamente uma instância diferente, poderá definir a variável de ambiente MINDER_CONFIG
para apontar para uma configuração específica. Temos configurações para desenvolvimento local, o ambiente de produção Stacklok e o ambiente de teste Stacklok (atualizado com frequência) com check-in no diretório config
.
Você pode encontrar informações mais detalhadas sobre o processo de desenvolvimento no Guia do Desenvolvedor.
Documentação da API REST - Link.
Documentação da API proto - Link.
Protobuf - Link.
Especificação OpenAPI/swagger (JSON) - Link.
Aceitamos contribuições para o Minder. Consulte nosso guia de contribuição para obter mais informações.
O projeto Minder segue as melhores práticas para segurança e transparência da cadeia de fornecimento de software.
Todos os ativos liberados:
Minder é licenciado sob a licença Apache 2.0.