View a markdown version of this page

AWS Transforme a modernização contínua - AWS Transformação

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á.

AWS Transforme a modernização contínua

O que é AWS Transformar a modernização contínua?

AWS A modernização contínua do Transform fornece análise e remediação para seus repositórios de código-fonte. Você pode conectar GitHub organizações, GitLab grupos, espaços de trabalho do Bitbucket e repositórios locais e, em seguida, executar análises automatizadas para identificar débitos técnicos, vulnerabilidades de segurança, oportunidades de modernização e prontidão do agente em toda a sua base de código.

Todas as análises e correções são executadas Conta da AWS usando suas credenciais. Seu código-fonte permanece sob seu controle.

nota

Recomendamos começar com o plug-in Kiro Power ou agente. A habilidade do agente coordena a configuração, a integração e o uso contínuo da modernização contínua, incluindo provisionamento de infraestrutura, configuração da fonte, execução de análises, triagem de descobertas e remediação. Para obter instruções de instalação, consulte Ferramentas de desenvolvedor.

Capacidades gerais

AWS A modernização contínua do Transform fornece os seguintes recursos:

  • Análise da dívida técnica — Examine os repositórios em busca de dependências desatualizadas, vulnerabilidades de segurança, problemas de qualidade de código e oportunidades de modernização. Execute varreduras rápidas orientadas por agentes em manifestos de pacotes ou uma análise abrangente em nível de código. Defina critérios de análise personalizados usando definições de transformação adaptadas ao seu ambiente.

  • Remediação autônoma — gere pull requests validados em grande escala. Cada descoberta pode ser corrigida automaticamente usando sua definição de transformação associada. A remediação cria ramificações e abre PRs/MRs automaticamente no Bitbucket GitHub e no Bitbucket. GitLab

  • Relatórios — Gere relatórios em HTML mostrando as descobertas por gravidade, repositório e tipo de análise. Acompanhe o progresso da remediação e encontre uma solução ao longo do tempo.

  • Monitoramento contínuo — Agende análises recorrentes para monitorar continuamente seu portfólio em busca de novos problemas. Execute-os na AWS Transform-managed infraestrutura sem configuração ou em uma pilha provisionada do Amazon EC2 ou Batch usando o Amazon Scheduler. EventBridge Configure cadências diárias, semanais ou mensais.

Tipos de análise

AWS A modernização contínua do Transform oferece suporte aos seguintes tipos de análise para atender às suas necessidades de modernização.

Tipo Description
rapid-techdebt-analysis Análise rápida de manifestos de pacotes (pom.xml,package.json,requirements.txt) usando o agente AWS Transform para identificar versões obsoletas e dependências desatualizadas. Não analisa o código-fonte.
tech-debt-comprehensive Análise técnica profunda da dívida em nível de código usando o agente AWS Transform. Examina o código-fonte para identificar padrões de dívida, problemas de qualidade do código, preocupações com a arquitetura e oportunidades de melhoria.
security Teste estático de segurança de aplicativos (SAST) usando o AWS Security Agent. Verifica o código-fonte em busca de padrões de codificação inseguros, como injeção de SQL, segredos codificados e desserialização insegura. Requer configuração única da infraestrutura.
agentic-readiness Avaliação da prontidão para integração de agentes e IA. Classifica 56 critérios em cinco categorias: infraestrutura e plataforma, arquitetura de aplicativos Identity/Security/Governance, fundamentos de dados e operações e observabilidade.
modernization-readiness Avaliação da oportunidade de modernização da nuvem. Avalia a prontidão nas dimensões de infraestrutura, aplicativos, dados, segurança e operações. Identifica candidatos para conteinerização, migração sem servidor e atualizações de plataforma.
custom Execute uma de suas próprias definições de transformação como uma análise em que cada problema descrito é relatado como uma descoberta, que pode ser vinculada a uma transformação AWS gerenciada que o corrige.

Explicação sobre os principais conceitos

Fontes

Uma fonte informa à modernização contínua onde estão seus repositórios. Tipos de origem com suporte:

  • GitHub— Organizações com tokens de acesso pessoal (clássico)

  • GitLab— Grupos ou usuários, incluindo instâncias auto-hospedadas

  • Bitbucket — Espaços de trabalho (nuvem) ou projetos (data center)

  • Local — Diretórios principais contendo repositórios git

Repositórios

Os repositórios são descobertos pelas fontes de varredura. Após a descoberta, você pode filtrar por origem, rótulos ou outros critérios; aplicar rótulos para organização (equipe, prioridade, onda de migração); e direcionar repositórios específicos para análise ou remediação.

Análises

Uma análise é uma verificação de um ou mais repositórios usando um tipo de análise específico. Cada análise produz descobertas que identificam problemas em seu código. Você pode executar análises sob demanda ou programá-las para serem executadas automaticamente. Os tipos de análise incluem análise rápida da dívida tecnológica, abrangente da dívida técnica, segurança, prontidão para agentes, prontidão para modernização e personalização. Cada análise rastreia seu status (pendente, em execução, concluído, cancelado ou com falha) e os repositórios que ela examinou.

Conclusões

As descobertas são os resultados da análise. Cada descoberta inclui severidade (alta, média ou baixa), status (aberta, rejeitada ou obsoleta) e a transformação de correção que pode remediá-la (se for corrigida automaticamente). As novas descobertas começam como abertas e os usuários podem descartá-las por um motivo. Re-analysis marca automaticamente as descobertas resolvidas como obsoletas.

Remediações

As remediações aplicam definições de transformação para corrigir as descobertas. Três modos: baseado em descobertas (cada descoberta usa sua própria transformação fixa), substituição de TD (substituir a definição de transformação para descobertas especificadas) e TD direto (executar uma transformação em um repositório sem descobertas). A saída depende do provedor de origem (GitHub PR, GitLab MR, Bitbucket PR ou filial local).

Definições de transformação

Uma definição de transformação contém as instruções e o conhecimento necessários para realizar uma transformação de código específica. Há dois tipos:

  • AWS as definições de transformação gerenciada são pré-criadas AWS, examinadas e estão prontas para uso sem qualquer configuração. Seus nomes começam comAWS/, por exemploAWS/java-version-upgrade. As descobertas estão vinculadas a elas como solução.

  • As definições de transformação personalizadas são aquelas que você cria e publica no registro de transformação em seu Conta da AWS. Use-os para procurar seus próprios problemas com uma análise personalizada ou para fazer suas próprias alterações com uma correção.

A categoria de uma definição de transformação determina onde ela pode ser usada: a análise personalizada executa as definições de transformação com a analysis categoria e a remediação executa as definições de transformação com a remediation categoria ou as transformações AWS gerenciadas. Para obter mais informações, consulte Categorias de definição de transformação.

Como AWS Transforme os trabalhos de modernização contínua

AWS A modernização contínua do Transform é normalmente usada em projetos de grande escala em que várias bases de código precisam de análise e remediação contínuas. Normalmente, as equipes seguem esse fluxo de trabalho:

  1. Connect Sources — Adicione GitHub organizações, GitLab grupos, espaços de trabalho do Bitbucket ou diretórios locais como fontes. Forneça tokens de autenticação com escopos apropriados.

  2. Descubra repositórios — Execute escaneamentos de descoberta para enumerar todos os repositórios em suas fontes. Use rótulos para organizar repositórios por equipe, prioridade ou onda de migração.

  3. Execute análises — Execute análises em todo o seu portfólio. Escolha escaneamentos rápidos para resultados rápidos ou análises abrangentes para descobertas detalhadas. A análise de segurança requer uma configuração única da infraestrutura.

  4. Triagem de resultados — Analise os resultados por gravidade, repositório ou tipo de análise. Ignore os falsos positivos com motivos documentados. Re-runanálise para marcar problemas resolvidos como obsoletos.

  5. Remediar — crie correções para corrigir as descobertas. A modernização contínua cria filiais automaticamente e abre pull/merge solicitações com as correções. Acompanhe o status da remediação e repita as falhas.

  6. Configure a análise contínua — Agende análises recorrentes com os atx ct schedule comandos, que usam o Amazon EventBridge Scheduler. Configure a cadência da análise (diária, semanal ou mensal) para monitorar continuamente seu portfólio em busca de novos problemas. Combine com a remediação automatizada para manter a integridade do código ao longo do tempo.

Opções de computação

A modernização contínua oferece suporte a várias opções de computação para executar análises e remediações. As análises podem ser executadas localmente, na infraestrutura que você provisiona e gerencia na sua Conta da AWS (Amazon Amazon EC2 ou AWS Batch) ou em uma AWS Transform-managed infraestrutura que não requer configuração. As habilidades do agente no Kiro Power e no plug-in do agente ajudam você a configurar cada opção.

nota

Independentemente da opção de computação, você cria e possui todos os recursos Conta da AWS usando suas credenciais, e seu código-fonte permanece sob seu controle. A infraestrutura que executa análises e correções é gerenciada pelo cliente — uma pilha que você provisiona em sua conta — ou AWS Transform-managed, onde AWS opera a computação para você e não há nada para provisionar.

Local (padrão)

Por padrão, as análises são executadas em sua máquina local. Essa opção não requer infraestrutura adicional. O servidor é executado localmente e executa análises usando recursos computacionais locais. Bom para testar a ferramenta, pequenos repositórios ou uso individual.

AWS Transform-managed (sem infraestrutura para provisionar)

Execute análises na AWS Transform-managed infraestrutura sem provisionar ou gerenciar uma pilha. Com isso--mode aws-managed, você envia a análise para a AWS Transform, que a executa em uma infraestrutura AWS operada. Não há instância do Amazon EC2, nem AWS Batch stack, nem VPC ou sub-redes para configurar. Não há nada para provisionar ou derrubar — a submissão é a corrida. Essa é a maneira mais rápida de executar remotamente quando você não quer gerenciar nenhuma infraestrutura.

Essa opção requer uma fonte hospedada em um provedor de SCM compatível (GitHubGitLab, ouBitbucket). AWS Transform-managed a infraestrutura não oferece suporte a fontes locais porque não consegue acessar repositórios em sua máquina. Você pode escolher a AWS região em que a carga de trabalho é executada com a --region opção.

AWS Transform-managed a infraestrutura executa somente análises. Para remediação ou para executar uma definição de transformação personalizada (--type custom), use AWS Batch ou Amazon EC2.

Para executar na AWS Transform-managed infraestrutura, use o atx ct remote analysis --mode aws-managed comando (consulteExecução remota) ou instale o plug-in Kiro Power ou agente (consulteFerramentas de desenvolvedor) e pergunte ao agente: “Execute minha análise AWS sem infraestrutura”. Uma análise recorrente da AWS Transform-managed infraestrutura requer uma função de execução (consulteAgendamento de análises recorrentes).

Você também pode iniciar uma análise da AWS Transform-managed infraestrutura na página de modernização contínua no aplicativo web AWS Transform (consulteAWS Transforme o aplicativo web).

AWS Batch (Fargate) (recomendado)

Para a maioria dos portfólios, você pode executar análises em AWS Batch com Fargate, que é a opção de computação recomendada. Cada análise é executada como um trabalho isolado em seu próprio contêiner com computação sem servidor, portanto, não há infraestrutura persistente para gerenciar e os trabalhos se expandem para análise paralela de várias fontes ou tipos de análise.

O provisionamento implanta a infraestrutura necessária, incluindo:

  • AWS Fila de trabalhos em lote e ambiente de computação

  • Definição do trabalho com a imagem do contêiner de modernização contínua

  • Funções do IAM para execução de trabalhos em lote

  • Uma função Lambda para envio de trabalhos

A infraestrutura de provisionamento requer permissões de administrador. Para executar análises e remediações em uma pilha de Batch já provisionada com menos privilégios, anexe a política gerenciada. AWS AWSTransformInfrastructureExecutorAccessBatch

Para configurar a execução em lote, use os atx ct remote comandos diretamente (consulteExecução remota) ou instale o plug-in do Kiro Power ou do agente (consulteFerramentas de desenvolvedor) e pergunte ao agente: “Executar minha análise no Fargate” ou “Configurar a execução em lote para modernização contínua”. O agente implanta a pilha, armazena suas credenciais de origem no Secrets Manager e envia trabalhos de análise para o Batch. AWS

Amazon EC2

Execute análises em uma instância persistente do Amazon EC2 em seu. Conta da AWS Essa opção descarrega a computação de sua máquina local, suporta análises maiores e permite análises programadas recorrentes. A instância permanece em execução entre os envios.

O provisionamento implanta uma AWS CloudFormation pilha que inclui:

  • Uma instância do Amazon EC2 (Amazon Linux 2023) com Docker e o contêiner de modernização contínua

  • Uma função do IAM com permissões para AWS Transform, Amazon S3, AWS KMS, Secrets Manager e o agente de segurança

  • AmazonSSMManagedInstanceCorepara acesso ao shell via SSM (não é necessário par de chaves SSH ou portas de entrada)

  • Um grupo de segurança sem regras de entrada

A infraestrutura de provisionamento requer permissões de administrador para o gerenciamento do ciclo de vida do Amazon EC2, operações de pilha AWS CloudFormation , criação de funções do IAM, operações de bucket do Amazon S3, gerenciamento de segredos do Secrets Manager e comandos SSM. Para executar análises e remediações em uma pilha Amazon EC2 já provisionada com menos privilégios, anexe a política gerenciada. AWS AWSTransformInfrastructureExecutorAccessEC2

Para configurar a execução do Amazon EC2, use os atx ct remote comandos diretamente (consulteExecução remota) ou instale o plug-in Kiro Power ou agente (consulteFerramentas de desenvolvedor) e pergunte ao agente: “Configure uma instância do EC2 para análise de modernização contínua”. O agente provisiona a infraestrutura, verifica se o contêiner está íntegro e envia suas análises via SSM, sem a necessidade de SSH.

Configuração do agente de segurança

O tipo de security análise usa o serviço AWS Security Agent para testes estáticos de segurança de aplicativos (SAST) do seu código-fonte. Ao contrário de outros tipos de análise, ela requer uma configuração única de infraestrutura em seu Conta da AWS.

nota

O tipo de security análise não está disponível nas seguintes regiões: Canadá (Central) ca-central-1 (), Europa (Londres) eu-west-2 () e Ásia-Pacífico (Seul) ap-northeast-2 (). Os outros tipos de análise não são afetados.

O comando setup provisiona uma AWS CloudFormation pilha que inclui:

  • Um bucket Amazon S3 para upload de código-fonte

  • Uma função do IAM assumida por securityagent.amazonaws.com

  • Uma política gerenciada para a função de agente de segurança

Para executar análises de segurança com o mínimo de privilégios após a configuração, anexe a política AWS gerenciada AWSTransformSecurityAgentExecutorAccess ao seu usuário ou função do IAM.

Seu usuário ou função do IAM deve ter as seguintes permissões adicionais para executar a configuração:

  • cloudformation:CreateStack, cloudformation:UpdateStack, cloudformation:DescribeStacks

  • iam:CreateRole, iam:PutRolePolicy, iam:AttachRolePolicy, iam:CreatePolicy

  • s3:CreateBucket, s3:PutBucketEncryption, s3:PutBucketPublicAccessBlock

Use os comandos a seguir para gerenciar a infraestrutura do agente de segurança:

# Provision the security agent infrastructure atx ct setup security-agent # Check the status atx ct setup security-agent --status # Delete the infrastructure atx ct setup security-agent --delete

Após a conclusão da configuração, você pode executar análises de segurança da mesma forma que outros tipos de análise.