Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
O Microsoft Defender for Cloud Command-Line Interface (Defender for Cloud CLI) permite-lhe incorporar a varredura de segurança diretamente nos seus fluxos de trabalho de integração contínua e implementação contínua (CI/CD). A CLI organiza scanners de segurança e pode funcionar localmente para os programadores.
Capacidades chave
- Avaliação da vulnerabilidade da imagem do contentor e ingestão automática no Cloud Security Explorer.
- CLI unificada e multiplataforma que funciona com qualquer runner de CI (Azure Pipelines, GitHub Actions, Jenkins, Bitbucket, GitLab, CircleCI, Travis CI, AWS CodeBuild e mais).
- Saída SARIF baseada em padrões que se integra com anotações de pull-request e controlos de qualidade.
- Autenticação baseada em tokens, limitada a uma única subscrição do Azure, para controlo granular ou autenticação com o conector do Azure DevOps.
Pré-requisitos
Uma Subscrição do Azure com o Defender for Cloud integrado. Se ainda não tiver uma conta do Azure, crie uma gratuitamente.
Defender CSPM ativado.
Uma das seguintes ferramentas de pipeline CI/CD: Jenkins, BitBucket Pipelines, Google Cloud Build, Bamboo, CircleCI, Travis CI, TeamCity, Oracle DevOps services ou AWS CodeBuild.
Terminal Windows ou Linux/WSL para varreduras locais no ambiente de trabalho.
Permissão de Administrador de Segurança para criar o ID do cliente e os tokens secretos caso se utilize autenticação baseada em tokens, ou um conector Azure DevOps ou GitHub estabelecido no caso de se utilizar autenticação baseada em conectores.
Configuração da autenticação
O Defender for Cloud CLI suporta dois métodos de autenticação para se alinhar com as práticas de segurança empresarial.
Autenticação baseada em token
Os administradores de segurança criam tokens no portal Microsoft Defender para a Nuvem (MDC) e configuram-nos como variáveis de ambiente em pipelines CI/CD ou terminais locais. Esta abordagem oferece flexibilidade entre sistemas de build e permite definir âmbitos específicos por assinatura.
Autenticação com base em conector
A autenticação baseada em conectores está atualmente disponível para o Azure DevOps ou o GitHub. Quando estabeleces um conector entre Azure DevOps e Defender for Cloud, o processo de autenticação acontece automaticamente. Não precisas de adicionar tokens aos teus pipelines.
Para passos detalhados e exemplos, veja:
- Instruções da CLI do Defender para a Cloud baseadas em tokens de autenticação
- Ligue as suas organizações Azure DevOps
Configure a sua pipeline de CI/CD
Escolha o exemplo de configuração que corresponda à sua plataforma CI/CD e ao método de autenticação.
Azure DevOps (autenticação baseada em conectores)
- task: MicrosoftDefenderCLI@2
inputs:
command: 'run'
scanType: 'image'
imageName: $(ImageName)
break: false
GitHub (autenticação baseada em tokens)
- name: Download Defender for Cloud CLI
run: |
curl -L -o defender "https://aka.ms/defender-cli_linux-x64" && chmod +x defender
- name: Run Defender for Cloud CLI Scan (Built)
run: |
#replace image-name with the Container image built
./defender scan image '${{ image-name }}'
continue-on-error: true
env:
DEFENDER_TENANT_ID: ${{ secrets.DEFENDER_TENANT_ID }}
DEFENDER_CLIENT_ID: ${{ secrets.DEFENDER_CLIENT_ID }}
DEFENDER_CLIENT_SECRET: ${{ secrets.DEFENDER_CLIENT_SECRET }}
Jenkins (autenticação baseada em token)
environment {
DEFENDER_TENANT_ID=credentials('defender-tenant-id')
DEFENDER_CLIENT_ID=credentials('defender-client-id')
DEFENDER_CLIENT_SECRET=credentials('defender-client-secret')
}
stage('Download & Run Defender for Cloud CLI') {
steps {
script {
node {
sh 'curl -L -o defender "https://aka.ms/defender-cli_linux-x64"'
sh 'chmod +x defender'
sh './defender scan image ${IMAGE_NAME}'
}
}
}
}