View a markdown version of this page

AWS Trasforma la modernizzazione continua - AWS Trasformazione

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

AWS Trasforma la modernizzazione continua

Che cos'è AWS Trasformare la modernizzazione continua?

AWS La modernizzazione continua di Transform fornisce analisi e correzioni per i tuoi repository di codice sorgente. Puoi connettere GitHub organizzazioni, GitLab gruppi, aree di lavoro Bitbucket e repository locali, quindi eseguire analisi automatiche per identificare debiti tecnici, vulnerabilità di sicurezza, opportunità di modernizzazione e disponibilità agli agenti su tutta la tua base di codice.

Tutte le Account AWS analisi e le correzioni vengono eseguite utilizzando le tue credenziali. Il codice sorgente rimane sotto il tuo controllo.

Nota

Ti consigliamo di iniziare con Kiro Power o il plug-in dell'agente. L'abilità dell'agente coordina la configurazione, l'onboarding e l'uso continuo della modernizzazione continua, tra cui il provisioning dell'infrastruttura, la configurazione dei sorgenti, l'esecuzione delle analisi, la valutazione dei risultati e la correzione. Per le istruzioni di installazione, consulta Strumenti per sviluppatori.

Funzionalità chiave

AWS La modernizzazione continua di Transform offre le seguenti funzionalità:

  • Analisi del debito tecnico: analizza gli archivi per individuare dipendenze obsolete, vulnerabilità di sicurezza, problemi di qualità del codice e opportunità di modernizzazione. Esegui rapide scansioni dei metadati nei manifesti dei pacchetti o un'analisi completa a livello di codice. Definisci criteri di analisi personalizzati utilizzando definizioni di trasformazione personalizzate per il tuo ambiente.

  • Correzione autonoma: genera richieste pull convalidate su larga scala. Ogni risultato può essere corretto automaticamente utilizzando la definizione di trasformazione associata. La riparazione crea filiali e si apre PRs/MRs automaticamente tra GitHub GitLab, e Bitbucket.

  • Rapporti: genera report HTML che mostrano i risultati per gravità, archivio e tipo di analisi. Tieni traccia dei progressi delle correzioni e dei risultati raggiunti nel tempo.

  • Monitoraggio continuo: pianifica analisi ricorrenti per monitorare continuamente il tuo portafoglio per individuare nuovi problemi. Eseguili su AWS Transform-managed un'infrastruttura senza configurazione o su uno stack Amazon EC2 o Batch predisposto utilizzando Amazon Scheduler. EventBridge Configura cadenze giornaliere, settimanali o mensili.

Tipi di analisi

AWS La modernizzazione continua di Transform supporta i seguenti tipi di analisi per soddisfare le vostre esigenze di modernizzazione.

Tipo Description
rapid-techdebt-analysis Scansione rapida basata solo sui metadati dei manifesti dei pacchetti (pom.xml,package.json,requirements.txt) per identificare versioni obsolete e dipendenze obsolete. Non analizza il codice sorgente.
tech-debt-comprehensive Analisi approfondita del debito tecnico a livello di codice utilizzando l'agente AWS Transform. Esamina il codice sorgente per identificare i modelli di debito, i problemi di qualità del codice, i problemi di architettura e le opportunità di miglioramento.
security Vulnerabilità di sicurezza e rilevamento CVE tramite Security Agent. AWS Analizza il codice sorgente e le dipendenze alla ricerca di vulnerabilità note, modelli di codifica non sicuri e punti deboli sfruttabili. Richiede una configurazione dell'infrastruttura una tantum.
agentic-readiness Valutazione della preparazione all'integrazione dell'IA e degli agenti. Assegna 56 criteri in cinque categorie: Infrastruttura e piattaforma, Architettura delle applicazioni Identity/Security/Governance, Fondamenti dei dati e Operazioni e osservabilità.
modernization-readiness Valutazione delle opportunità di modernizzazione del cloud. Valuta la prontezza in tutte le dimensioni dell'infrastruttura, delle applicazioni, dei dati, della sicurezza e delle operazioni. Identifica i candidati per la containerizzazione, la migrazione senza server e gli aggiornamenti della piattaforma.
custom Esegui qualsiasi definizione di trasformazione (TD) come analisi. Utilizzate questo tipo per definire i vostri criteri di analisi o per eseguire trasformazioni AWS gestite non coperte dai tipi integrati.

Comprensione dei concetti chiave

Origini

Una fonte indica alla modernizzazione continua dove si trovano i tuoi repository. Tipi di sorgenti supportati:

  • GitHub— Organizzazioni con token di accesso personali (classico)

  • GitLab— Gruppi o utenti, incluse le istanze ospitate autonomamente

  • Bitbucket — Spazi di lavoro (Cloud) o progetti (Data Center)

  • Locale: directory principali contenenti repository git

Repositories

I repository vengono scoperti scansionando le fonti. Dopo il rilevamento, è possibile filtrare per origine, etichette o altri criteri, applicare etichette per l'organizzazione (team, priorità, ondata di migrazione) e indirizzare repository specifici per l'analisi o la correzione.

Analisi

Un'analisi è una scansione di uno o più repository utilizzando un tipo di analisi specifico. Ogni analisi produce risultati che identificano i problemi nel codice. Puoi eseguire analisi su richiesta o pianificarne l'esecuzione automatica. I tipi di analisi includono Rapid-TechDebt-Analysis, Tech-Debt-Comprehensive, Security, Agentic-Readiness, Agentic-Readiness, Modernization-Readiness e Custom. Ogni analisi tiene traccia del suo stato (in sospeso, in esecuzione, completa, annullata o non riuscita) e dei repository scansionati.

Esiti

I risultati sono i risultati dell'analisi. Ogni risultato include la gravità (alta, media o bassa), lo stato (aperto, ignorato o obsoleto) e la trasformazione della correzione che può porvi rimedio (se risolvibile automaticamente). I nuovi risultati iniziano quando sono aperti. Gli utenti possono respingere i risultati indicando un motivo. Re-analysis contrassegna automaticamente i risultati risolti come obsoleti.

Correzioni

Le correzioni applicano le definizioni di trasformazione per correggere i risultati. Tre modalità: basata sui risultati (ogni risultato utilizza la propria trasformazione di correzione), TD override (sovrascrive la definizione di trasformazione per i risultati specificati) e TD diretto (esegue una trasformazione su un repository senza risultati). L'output dipende dal fornitore di origine (GitHub PR, GitLab MR, Bitbucket PR o filiale locale).

Definizioni di trasformazione

Una definizione di trasformazione contiene le istruzioni e le conoscenze necessarie per eseguire una trasformazione specifica del codice. La modernizzazione continua utilizza definizioni di trasformazione per l'analisi personalizzata (--type custom --transformation-name name) e la correzione (--transformation-name name). Elenca le definizioni di trasformazione disponibili con. atx custom def list

In che modo AWS Transform: opere di modernizzazione continua

AWS La modernizzazione continua di Transform viene in genere utilizzata in progetti su larga scala in cui più basi di codice richiedono analisi e correzioni continue. I team in genere seguono questo flusso di lavoro:

  1. Collega fonti: aggiungi GitHub organizzazioni, GitLab gruppi, aree di lavoro Bitbucket o directory locali come fonti. Fornisci i token di autenticazione con gli ambiti appropriati.

  2. Scopri i repository: esegui scansioni di rilevamento per enumerare tutti i repository nelle tue fonti. Usa le etichette per organizzare i repository per team, priorità o ondata di migrazione.

  3. Esegui analisi: esegui analisi su tutto il tuo portafoglio. Scegli scansioni rapide per risultati rapidi o analisi complete per risultati dettagliati. L'analisi della sicurezza richiede una sola configurazione dell'infrastruttura.

  4. Triage dei risultati: esamina i risultati per gravità, archivio o tipo di analisi. Elimina i falsi positivi con motivazioni documentate. Re-runanalisi per contrassegnare i problemi risolti come obsoleti.

  5. Correzione: crea soluzioni per correggere i risultati. La modernizzazione continua crea automaticamente filiali e apre pull/merge le richieste con le correzioni. Monitora lo stato delle correzioni e riprova gli errori.

  6. Configura l'analisi continua: pianifica analisi ricorrenti con i atx ct schedule comandi, che utilizzano Amazon Scheduler. EventBridge Configura la cadenza di analisi (giornaliera, settimanale o mensile) per monitorare continuamente il tuo portafoglio per individuare nuovi problemi. Combinalo con una correzione automatica per mantenere l'integrità del codice nel tempo.

Opzioni di calcolo

La modernizzazione continua supporta diverse opzioni di calcolo per l'esecuzione di analisi e correzioni. Le analisi possono essere eseguite localmente, sull'infrastruttura fornita e gestita nella tua azienda Account AWS (Amazon Amazon EC2 o AWS Batch) o su AWS Transform-managed un'infrastruttura che non richiede alcuna configurazione. Le competenze degli agenti di Kiro Power e del plugin per agenti ti aiutano a configurare ciascuna opzione.

Nota

Indipendentemente dall'opzione di calcolo, tu crei e possiedi tutte le risorse Account AWS utilizzando le tue credenziali e il tuo codice sorgente rimane sotto il tuo controllo. L'infrastruttura che esegue le analisi e le correzioni è gestita dal cliente, ovvero uno stack di cui esegui il provisioning nel tuo account, oppure AWS Transform-managed, dove AWS gestisce l'elaborazione al posto tuo e non c'è nulla di cui effettuare il provisioning.

Locale (impostazione predefinita)

Per impostazione predefinita, le analisi vengono eseguite sul computer locale. Questa opzione non richiede alcuna infrastruttura aggiuntiva. Il server viene eseguito localmente ed esegue le analisi utilizzando risorse di calcolo locali. Ottimo per provare lo strumento, i piccoli repository o per l'uso individuale.

AWS Transform-managed (nessuna infrastruttura da mettere a disposizione)

Esegui analisi sull' AWS Transform-managed infrastruttura senza effettuare il provisioning o gestire uno stack. Con--mode aws-managed, invii l'analisi a AWS Transform, che la esegue su AWS un'infrastruttura gestita. Non ci sono istanze Amazon EC2, stack AWS Batch e VPC o sottoreti da configurare. Non c'è nulla da predisporre o eliminare: l'invio è il momento giusto. Questo è il modo più veloce per eseguire in remoto quando non si desidera gestire alcuna infrastruttura.

Questa opzione richiede una fonte ospitata su un provider SCM supportato (GitHub,GitLab, oBitbucket). AWS Transform-managed l'infrastruttura non supporta le fonti locali perché non può raggiungere i repository sul computer. Puoi scegliere la AWS regione in cui eseguire il carico di lavoro con l'--regionopzione.

AWS Transform-managed l'infrastruttura esegue solo analisi. Per la correzione o per eseguire una definizione di trasformazione personalizzata (--type custom), usa AWS Batch o Amazon EC2.

Per l'esecuzione sull' AWS Transform-managed infrastruttura, usa il atx ct remote analysis --mode aws-managed comando (vediEsecuzione remota) o installa Kiro Power o il plug-in dell'agente (vediStrumenti per sviluppatori) e chiedi all'agente: «Esegui la mia analisi AWS senza infrastruttura». Un'analisi ricorrente sull' AWS Transform-managed infrastruttura richiede un ruolo di esecuzione (vedi). Pianificazione di analisi ricorrenti

È inoltre possibile avviare un'analisi AWS Transform-managed dell'infrastruttura dalla pagina di modernizzazione continua nell'applicazione web AWS Transform (vedere). AWS Trasforma l'applicazione web

AWS Batch (Fargate) (consigliato)

Per la maggior parte dei portafogli, è possibile eseguire analisi su AWS Batch con Fargate, che è l'opzione di calcolo consigliata. Ogni analisi viene eseguita come un processo isolato nel proprio contenitore con elaborazione serverless, quindi non c'è un'infrastruttura persistente da gestire e i processi sono scalabili per l'analisi parallela di più fonti o tipi di analisi.

Il provisioning implementa l'infrastruttura richiesta, tra cui:

  • AWS Coda dei lavori in batch e ambiente di elaborazione

  • Definizione del lavoro con l'immagine del contenitore di modernizzazione continua

  • Ruoli IAM per l'esecuzione di job in batch

  • Una funzione Lambda per l'invio dei lavori

L'infrastruttura di provisioning richiede le autorizzazioni di amministratore. Per eseguire analisi e correzioni su uno stack Batch già fornito con privilegi minimi, allega la policy gestita. AWS AWSTransformInfrastructureExecutorAccessBatch

Per configurare l'esecuzione in batch, usa direttamente i atx ct remote comandi (vediEsecuzione remota) o installa il plug-in Kiro Power o agent (vediStrumenti per sviluppatori) e chiedi all'agente: «Esegui la mia analisi su Fargate» o «Imposta l'esecuzione in batch per la modernizzazione continua». L'agente distribuisce lo stack, memorizza le credenziali di origine in Secrets Manager e invia i lavori di analisi a Batch. AWS

Amazon Amazon EC2

Esegui analisi su un'istanza Amazon EC2 persistente nel tuo. Account AWS Questa opzione consente di scaricare il calcolo dal computer locale, supporta analisi più ampie e consente analisi pianificate ricorrenti. L'istanza rimane in esecuzione tra un invio e l'altro.

Il provisioning implementa uno AWS CloudFormation stack che include:

  • Un'istanza Amazon EC2 (Amazon Linux 2023) con Docker e il contenitore di modernizzazione continua

  • Un ruolo IAM con autorizzazioni per AWS Transform, Amazon S3, AWS KMS, Secrets Manager e l'agente di sicurezza

  • AmazonSSMManagedInstanceCoreper l'accesso alla shell tramite SSM (non sono richieste coppie di chiavi SSH o porte in entrata)

  • Un gruppo di sicurezza senza regole in entrata

L'infrastruttura di provisioning richiede autorizzazioni di amministratore per la gestione del ciclo di vita di Amazon EC2, le operazioni sugli AWS CloudFormation stack, la creazione di ruoli IAM, le operazioni sui bucket di Amazon S3, la gestione segreta di Secrets Manager e i comandi SSM. Per eseguire analisi e correzioni su uno stack Amazon EC2 già fornito con privilegi minimi, allega la policy gestita. AWS AWSTransformInfrastructureExecutorAccessEC2

Per configurare l'esecuzione di Amazon EC2, utilizza direttamente atx ct remote i comandi (vediEsecuzione remota) o installa il plug-in Kiro Power o agent (vediStrumenti per sviluppatori) e chiedi all'agente: «Configura un'istanza EC2 per un'analisi di modernizzazione continua». L'agente esegue il provisioning dell'infrastruttura, verifica che il contenitore sia integro e invia le analisi tramite SSM, non è richiesto SSH.

Configurazione del Security Agent

Il tipo di security analisi utilizza il servizio AWS Security Agent per il rilevamento delle vulnerabilità e del CVE. A differenza di altri tipi di analisi, richiede una sola configurazione dell'infrastruttura nel tuo. Account AWS

Nota

Il tipo di security analisi non è disponibile nelle seguenti regioni: Canada (Centrale) (ca-central-1), Europa (Londra) (eu-west-2) e Asia Pacifico (Seoul) (ap-northeast-2). Gli altri tipi di analisi sono inalterati.

Il comando setup fornisce uno AWS CloudFormation stack che include:

  • Un bucket Amazon S3 per il caricamento del codice sorgente

  • Un ruolo IAM assunto da securityagent.amazonaws.com

  • Una politica gestita per il ruolo di agente di sicurezza

Per eseguire analisi di sicurezza con il minimo privilegio dopo la configurazione, allega la policy AWS gestita AWSTransformSecurityAgentExecutorAccess al tuo utente o ruolo IAM.

L'utente o il ruolo IAM deve disporre delle seguenti autorizzazioni aggiuntive per eseguire la configurazione:

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

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

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

Utilizza i seguenti comandi per gestire l'infrastruttura del security agent:

# 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

Una volta completata la configurazione, è possibile eseguire le analisi di sicurezza allo stesso modo degli altri tipi di analisi.