As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Como usar o plug-in Jenkins do Amazon Inspector
O Jenkins plug-in utiliza o binário do Amazon SBOM Inspector Generator e o Amazon Inspector API Scan para produzir relatórios detalhados no final de sua compilação, para que você possa investigar e corrigir riscos antes da implantação. Com o Jenkins plug-in do Amazon Inspector, você pode adicionar escaneamentos de vulnerabilidade do Amazon Inspector ao seu pipeline. Jenkins As varreduras de vulnerabilidade do Amazon Inspector podem ser configuradas para aprovar ou falhar nas execuções do pipeline com base no número e na gravidade das vulnerabilidades detectadas. Você pode ver a versão mais recente do Jenkins plug-in no Jenkins mercado em https://plugins.jenkins.io/amazon-inspector-image-scanner/
Importante
Antes de concluir as etapas a seguir, você deve atualizar o Jenkins para a versão 2.387.3 ou superior para que o plug-in seja executado.
Etapa 1. Configurar um Conta da AWS
Configure um Conta da AWS com uma IAM função que permita o acesso ao Amazon Inspector Scan. API Para obter instruções, consulte Configurando uma AWS conta para usar a integração CI/CD do Amazon Inspector.
Etapa 2. Instale o plug-in Amazon Inspector Jenkins
O procedimento a seguir descreve como instalar o plug-in Jenkins do Amazon Inspector a partir do painel. Jenkins
-
No painel do Jenkins, escolha Gerenciar Jenkins e, em seguida, selecione Gerenciar plug-ins.
-
Escolha Disponível.
-
Na guia Disponível, pesquise Amazon Inspector Scans e, em seguida, instale o plug-in.
(Opcional) Etapa 3. Adicione credenciais do docker ao Jenkins
nota
Adicione credenciais do docker somente se a imagem do docker estiver em um repositório privado. Caso contrário, ignore essa etapa.
O procedimento a seguir descreve como adicionar credenciais do docker a Jenkins partir do painel. Jenkins
-
No painel do Jenkins, escolha Gerenciar Jenkins, Credenciais e, em seguida, Sistema.
-
Escolha Credenciais globais e, em seguida, Adicionar credenciais.
-
Em Tipo, selecione Nome de usuário com senha.
-
Em Escopo, selecione Global (Jenkins, nós, itens, todos os itens secundários etc.).
-
Insira seus detalhes e, em seguida, escolha OK.
(Opcional) Etapa 4. Adicionar AWS credenciais
nota
Adicione AWS credenciais somente se quiser se autenticar com base em um IAM usuário. Caso contrário, ignore essa etapa.
O procedimento a seguir descreve como adicionar AWS credenciais do Jenkins painel.
-
No painel do Jenkins, escolha Gerenciar Jenkins, Credenciais e, em seguida, Sistema.
-
Escolha Credenciais globais e, em seguida, Adicionar credenciais.
-
Em Tipo, selecione AWSCredenciais.
-
Insira seus detalhes, incluindo a ID da chave de acesso e a chave de acesso secreta, e escolha OK.
Etapa 5. Adicionar CSS suporte em um Jenkins script
O procedimento a seguir descreve como adicionar CSS suporte em um Jenkins script.
-
Reinicie o Jenkins.
-
No Painel, escolha Gerenciar Jenkins, Nodes, Built-Node e, em seguida, Script Console.
-
Na caixa de texto, adicione a linha
System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", "")
e escolha Executar.
Etapa 6. Adicione o Amazon Inspector Scan à sua compilação
Você pode adicionar o Amazon Inspector Scan à criação inserindo uma etapa de criação ao projeto ou usando o pipeline declarativo Jenkins.
Amazon Inspector Digitalize sua compilação adicionando uma etapa de compilação em seu projeto
-
Na página de configuração, role para baixo até Etapas de compilação e escolha Adicionar etapa de compilação. Em seguida, selecione Amazon Inspector Scan.
-
Escolha entre dois métodos de instalação do inspector-sbomgen: Automático ou Manual.
-
(Opção 1) Escolha Automático para baixar a versão mais recente do inspector-sbomgen. Se você escolher esse método, certifique-se de selecionar a CPU arquitetura que corresponde ao sistema que executa o plug-in.
-
(Opção 2) Escolha Manual se quiser configurar o binário do Amazon Inspector SBOM Generator para digitalização. Se você escolher esse método, certifique-se de fornecer o caminho completo para uma versão baixada anteriormente do inspector-sbomgen.
Para obter mais informações, consulte Instalando o Amazon Inspector SBOM Generator (Sbomgen) no Amazon Inspector Generator. SBOM
-
-
Faça o seguinte para realizar a configuração da etapa de criação do Amazon Inspector Scan:
-
Insira o ID da imagem. A imagem pode ser local, remota ou arquivada. Os nomes das imagens devem seguir a convenção de nomenclatura do Docker. Se estiver analisando uma imagem exportada, forneça o caminho para o arquivo tar previsto. Veja os seguintes exemplos de caminhos de ID da imagem:
-
Para contêineres locais ou remotos:
NAME[:TAG|@DIGEST]
-
Para um arquivo tar:
/path/to/image.tar
-
-
Selecione uma Região da AWS para enviar a solicitação de escaneamento.
-
(Opcional) Para credenciais do Docker, selecione o nome de usuário Docker. Faça isso apenas se a imagem de contêiner estiver em um repositório privado.
-
(Opcional) Você pode fornecer os seguintes métodos de AWS autenticação compatíveis:
-
(Opcional) Para IAMfunção, forneça uma função ARN (arn:aws:iam::
AccountNumber
:função/RoleName
). -
(Opcional) Para AWScredenciais, selecione ID para autenticar com base em um IAM usuário.
-
(Opcional) Em nome AWS do perfil, forneça o nome de um perfil a ser autenticado usando um nome de perfil.
-
-
(Opcional) Especifique os Limites de vulnerabilidade por grau. Se o número especificado for excedido durante uma verificação, a construção da imagem falhará. Se todos os valores forem
0
, a compilação será bem-sucedida, independentemente de alguma vulnerabilidade ser encontrada.
-
-
Escolha Salvar.
Adicione o Amazon Inspector Scan à sua compilação usando o pipeline declarativo Jenkins
Você pode adicionar o Amazon Inspector Scan à sua compilação usando o pipeline declarativo Jenkins de forma automática ou manual.
Para baixar automaticamente o pipeline SBOMGen declarativo
-
Para adicionar o Amazon Inspector Scan a uma compilação, use o seguinte exemplo de sintaxe. Com base na sua arquitetura de sistema operacional preferida do Amazon Inspector SBOM Generator, baixe
SBOMGEN_SOURCE
com linuxAmd 64 ou linuxArm 64. SubstituirIMAGE_PATH
com o caminho para sua imagem (comoalpine:latest
),IAM_ROLE
com ARN a IAM função que você configurou na etapa 1 eID
com seu ID de Docker credencial se você estiver usando um repositório privado. Se desejar, você poderá ativar os limites de vulnerabilidade e especificar valores para cada grau.
pipeline { agent any stages { stage('amazon-inspector-image-scanner') { steps { script { step([ $class: 'com.amazon.inspector.jenkins.amazoninspectorbuildstep.AmazonInspectorBuilder', sbomgenSource: '
SBOMGEN_SOURCE
', // this can be linuxAmd64 or linuxArm64 archivePath: 'IMAGE_PATH
', awsRegion: 'REGION
', iamRole: 'IAM ROLE
', credentialId: 'Id
', // provide empty string if image not in private repositories awsCredentialId: ''AWS ID
;', awsProfileName: 'Profile Name
', isThresholdEnabled:false
, countCritical:0
, countHigh:0
, countLow:10
, countMedium:5
, ]) } } } } }
Para baixar manualmente o pipeline SBOMGen declarativo
-
Para adicionar o Amazon Inspector Scan a uma compilação, use o seguinte exemplo de sintaxe. Substituir
SBOMGEN_PATH
com o caminho para o Amazon Inspector SBOM Generator que você instalou na etapa 3,IMAGE_PATH
com o caminho para sua imagem (comoalpine:latest
),IAM_ROLE
com ARN a IAM função que você configurou na etapa 1 eID
com seu ID de Docker credencial se você estiver usando um repositório privado. Se desejar, você poderá ativar os limites de vulnerabilidade e especificar valores para cada grau.
nota
Coloque Sbomgen no diretório Jenkins e forneça o caminho para o diretório Jenkins no plugin (como /opt/folder/arm64/inspector-sbomgen
).
pipeline { agent any stages { stage('amazon-inspector-image-scanner') { steps { script { step([ $class: 'com.amazon.inspector.jenkins.amazoninspectorbuildstep.AmazonInspectorBuilder', sbomgenPath: '
SBOMGEN_PATH
', archivePath: 'IMAGE_PATH
', awsRegion: 'REGION
', iamRole: 'IAM ROLE
', awsCredentialId: ''AWS ID
;', credentialId: 'Id
;', // provide empty string if image not in private repositories awsProfileName: 'Profile Name
', isThresholdEnabled:false
, countCritical:0
, countHigh:0
, countLow:10
, countMedium:5
, ]) } } } } }
Etapa 7. Veja seu relatório de vulnerabilidade do Amazon Inspector
-
Realize nova compilação do projeto.
-
Depois que a compilação for concluída, selecione um formato de saída nos resultados. Se você selecionarHTML, terá a opção de baixar uma CSV versão JSON SBOM ou do relatório. Veja a seguir um exemplo de HTML relatório:
Solução de problemas
A seguir estão os erros comuns que você pode encontrar ao usar o plug-in Amazon Inspector Scan para. Jenkins
Falha ao carregar credenciais ou erro de exceção do STS
Erro:
InstanceProfileCredentialsProvider(): Failed to load credentials or sts exception.
Resolução
Obtenha aws_access_key_id
e aws_secret_access_key
para sua AWS conta. Configure aws_access_key_id
e aws_secret_access_key
em ~/.aws/credentials
.
Erro de caminho do Inspector-SBOMgen
Erro:
Exception:com.amazon.inspector.jenkins.amazoninspectorbuildstep.exception.SbomgenNotFoundException: There was an issue running inspector-sbomgen, is /opt/inspector/inspector-sbomgen the correct path?
Resolução:
Conclua o procedimento a seguir para resolver o problema.
-
Conceda permissões executáveis ao binário usando o seguinte comando:
chmod +x inspector-sbomgen
. -
Forneça o caminho correto da Jenkins máquina no plug-in, como
/opt/folder/arm64/inspector-sbomgen
. -
Salve a configuração e execute o Jenkins trabalho.