View a markdown version of this page

AWS Transformez la modernisation continue - AWS Transformation

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

AWS Transformez la modernisation continue

Qu'est-ce que AWS Transformer la modernisation continue ?

AWS La modernisation continue de Transform permet d'analyser et de corriger vos référentiels de code source. Vous pouvez connecter GitHub des organisations, des GitLab groupes, des espaces de travail Bitbucket et des référentiels locaux, puis exécuter des analyses automatisées pour identifier la dette technique, les failles de sécurité, les opportunités de modernisation et l'état de préparation des agents sur l'ensemble de votre base de code.

Toutes les analyses et mesures correctives sont exécutées sur votre ordinateur à Compte AWS l'aide de vos informations d'identification. Votre code source reste sous votre contrôle.

Note

Nous vous recommandons de commencer par le plug-in Kiro Power ou agent. La compétence de l'agent orchestre la configuration, l'intégration et l'utilisation continue de la modernisation continue, y compris le provisionnement de l'infrastructure, la configuration des sources, l'exécution des analyses, le triage des résultats et la correction. Pour obtenir des instructions d’installation, consultez Outils pour développeurs.

Principales fonctionnalités

AWS La modernisation continue de Transform fournit les fonctionnalités suivantes :

  • Analyse de la dette technologique  : analysez les référentiels pour détecter les dépendances obsolètes, les failles de sécurité, les problèmes de qualité du code et les opportunités de modernisation. Effectuez des analyses rapides des métadonnées des manifestes de packages ou effectuez une analyse complète au niveau du code. Définissez des critères d'analyse personnalisés à l'aide de définitions de transformation adaptées à votre environnement.

  • Remédiation autonome  : générez des pull requests validées à grande échelle. Chaque résultat peut être corrigé automatiquement à l'aide de la définition de transformation qui lui est associée. La correction crée des branches et les ouvre PRs/MRs automatiquement sur GitHub GitLab, et Bitbucket.

  • Rapports  : générez des rapports HTML présentant les résultats par gravité, référentiel et type d'analyse. Suivez les progrès de la remédiation et trouvez des solutions au fil du temps.

  • Surveillance continue — Planifiez des analyses récurrentes pour surveiller en permanence votre portefeuille afin de détecter de nouveaux problèmes. Exécutez-les sur une AWS Transform-managed infrastructure sans configuration, ou sur une pile Amazon EC2 ou Batch provisionnée à l'aide d'Amazon EventBridge Scheduler. Configurez des cadences quotidiennes, hebdomadaires ou mensuelles.

Types d'analyses

AWS La modernisation continue de Transform prend en charge les types d'analyse suivants pour répondre à vos besoins de modernisation.

Type Description
rapid-techdebt-analysis Analyse rapide des manifestes de packages (pom.xml,, package.jsonrequirements.txt) uniquement basée sur les métadonnées pour identifier les versions obsolètes et les dépendances obsolètes. N'analyse pas le code source.
tech-debt-comprehensive Analyse approfondie de la dette technique au niveau du code à l'aide de l'agent AWS Transform. Examine le code source pour identifier les modèles d'endettement, les problèmes de qualité du code, les problèmes d'architecture et les opportunités d'amélioration.
security Vulnérabilité de sécurité et détection du CVE à l'aide du AWS Security Agent. Analyse le code source et les dépendances à la recherche de vulnérabilités connues, de modèles de codage non sécurisés et de faiblesses exploitables. Nécessite une configuration d'infrastructure unique.
agentic-readiness Évaluation de l'état de préparation à l'intégration de l'IA et des agents Note 56 critères répartis dans cinq catégories : infrastructure et plateforme, architecture des applications, fondements des données Identity/Security/Governance, et opérations et observabilité.
modernization-readiness Évaluation des opportunités de modernisation du cloud. Évalue l'état de préparation sur les plans de l'infrastructure, des applications, des données, de la sécurité et des opérations. Identifie les candidats pour la conteneurisation, la migration sans serveur et les mises à niveau de la plateforme.
custom Exécutez n'importe quelle définition de transformation (TD) en tant qu'analyse. Utilisez ce type pour définir vos propres critères d'analyse ou pour exécuter des transformations AWS gérées non couvertes par les types intégrés.

Comprendre les concepts clés

Sources

Une source indique la localisation de vos référentiels en cours de modernisation. Types de sources pris en charge :

  • GitHub— Organisations disposant de jetons d'accès personnels (classique)

  • GitLab— Groupes ou utilisateurs, y compris les instances auto-hébergées

  • Bitbucket — Espaces de travail (cloud) ou projets (centre de données)

  • Local — Répertoires parents contenant des dépôts git

Référentiels

Les référentiels sont découverts en scannant les sources. Après la découverte, vous pouvez filtrer par source, étiquettes ou autres critères, appliquer des libellés pour l'organisation (équipe, priorité, vague de migration) et cibler des référentiels spécifiques à des fins d'analyse ou de correction.

Analyses

Une analyse est une analyse d'un ou de plusieurs référentiels à l'aide d'un type d'analyse spécifique. Chaque analyse produit des résultats qui permettent d'identifier les problèmes liés à votre code. Vous pouvez exécuter des analyses à la demande ou les programmer pour qu'elles s'exécutent automatiquement. Les types d'analyse incluent l'analyse rapide de la dette technologique, l'analyse complète de la dette technologique, la sécurité, la préparation des agences, la préparation à la modernisation et la personnalisation. Chaque analyse suit son statut (en attente, en cours, terminée, annulée ou échouée) et les référentiels qu'elle a analysés.

Résultats

Les résultats sont les résultats de l'analyse. Chaque découverte inclut la gravité (élevée, moyenne ou faible), l'état (ouvert, ignoré ou obsolète) et la transformation qui peut y remédier (si elle est réparable automatiquement). Les nouvelles découvertes commencent comme ouvertes. Les utilisateurs peuvent rejeter les résultats en indiquant une raison. Re-analysis marque automatiquement les résultats résolus comme obsolètes.

Remédiations

Les mesures correctives appliquent des définitions de transformation pour corriger les résultats. Trois modes : basé sur les résultats (chaque résultat utilise sa propre transformation fixe), TD override (remplace la définition de la transformation pour des résultats spécifiés) et TD direct (exécute une transformation sur un référentiel sans résultats). La sortie dépend du fournisseur source (GitHub PR, GitLab MR, Bitbucket PR ou branche locale).

Définitions des transformations

Une définition de transformation contient les instructions et les connaissances nécessaires pour effectuer une transformation de code spécifique. La modernisation continue utilise des définitions de transformation pour l'analyse personnalisée (--type custom --transformation-name name) et la correction (--transformation-name name). Répertoriez les définitions de transformation disponibles avecatx custom def list.

Comment ? AWS Transformez les travaux de modernisation continue

AWS La modernisation continue de Transform est généralement utilisée dans les projets à grande échelle où plusieurs bases de code nécessitent une analyse et une correction continues. Les équipes suivent généralement ce flux de travail :

  1. Connecter des sources  : ajoutez GitHub des organisations, GitLab des groupes, des espaces de travail Bitbucket ou des annuaires locaux en tant que sources. Fournissez des jetons d'authentification avec des étendues appropriées.

  2. Découverte de référentiels — Exécutez des analyses de découverte pour énumérer tous les référentiels de vos sources. Utilisez des étiquettes pour organiser les référentiels par équipe, priorité ou vague de migration.

  3. Exécuter une analyse — Exécutez des analyses sur l'ensemble de votre portefeuille. Choisissez des scans rapides pour des résultats rapides ou une analyse complète pour des résultats détaillés. L'analyse de sécurité nécessite une configuration unique de l'infrastructure.

  4. Résultats du triage  : examinez les résultats par gravité, par référentiel ou par type d'analyse. Rejetez les faux positifs avec des raisons documentées. Re-runanalyse pour marquer les problèmes résolus comme obsolètes.

  5. Corriger  : créez des correctifs pour corriger les résultats. La modernisation continue crée automatiquement des branches et ouvre pull/merge des demandes avec les correctifs. Suivez l'état des mesures correctives et réessayez les échecs.

  6. Configurer l'analyse continue  : planifiez des analyses récurrentes à l'aide des atx ct schedule commandes, qui utilisent Amazon EventBridge Scheduler. Configurez la cadence d'analyse (quotidienne, hebdomadaire ou mensuelle) pour surveiller en permanence votre portefeuille afin de détecter de nouveaux problèmes. Associez-le à une correction automatique pour préserver l'intégrité du code au fil du temps.

Options de calcul

La modernisation continue prend en charge plusieurs options de calcul pour exécuter des analyses et des mesures correctives. Les analyses peuvent être exécutées localement, sur une infrastructure que vous provisionnez et gérez dans votre Compte AWS (Amazon EC2 ou AWS Batch), ou sur une AWS Transform-managed infrastructure ne nécessitant aucune configuration. Les compétences des agents présentes dans le module Kiro Power et le plug-in d'agent vous aident à configurer chaque option.

Note

Quelle que soit l'option de calcul, vous créez et possédez toutes les ressources que vous utilisez à Compte AWS l'aide de vos informations d'identification, et votre code source reste sous votre contrôle. L'infrastructure qui exécute les analyses et les mesures correctives est soit gérée par le client (une pile que vous provisionnez dans votre compte) soit gérée par le client AWS Transform-managed, soit AWS elle gère le calcul pour vous et il n'y a rien à provisionner.

Local (par défaut)

Par défaut, les analyses s'exécutent sur votre machine locale. Cette option ne nécessite aucune infrastructure supplémentaire. Le serveur s'exécute localement et exécute des analyses à l'aide de ressources de calcul locales. Idéal pour essayer l'outil, de petits référentiels ou pour une utilisation individuelle.

AWS Transform-managed (aucune infrastructure à fournir)

Exécutez des analyses sur AWS Transform-managed l'infrastructure sans provisionner ni gérer de pile. Avec--mode aws-managed, vous soumettez l'analyse à AWS Transform, qui l'exécute sur une infrastructure AWS gérée. Il n'y a aucune instance Amazon EC2, aucune pile AWS Batch, aucun VPC ou sous-réseau à configurer. Il n'y a rien à mettre en place ou à démolir : la soumission est la solution. Il s'agit du moyen le plus rapide de fonctionner à distance lorsque vous ne souhaitez gérer aucune infrastructure.

Cette option nécessite une source hébergée sur un fournisseur SCM pris en charge (GitHubGitLab, ouBitbucket). AWS Transform-managed l'infrastructure ne prend pas en charge les sources locales car elle ne peut pas accéder aux référentiels de votre machine. Vous pouvez choisir la AWS région dans laquelle s'exécute la charge de travail à l'aide de l'--regionoption.

AWS Transform-managed l'infrastructure exécute uniquement des analyses. Pour y remédier ou pour exécuter une définition de transformation personnalisée (--type custom), utilisez AWS Batch ou Amazon EC2.

Pour exécuter sur l' AWS Transform-managed infrastructure, utilisez la atx ct remote analysis --mode aws-managed commande (voirExécution à distance), ou installez le plug-in Kiro Power ou agent (voirOutils pour développeurs) et demandez à l'agent : « Exécutez mon analyse AWS sans infrastructure ». Une analyse récurrente sur AWS Transform-managed l'infrastructure nécessite un rôle d'exécution (voirPlanifier une analyse récurrente).

Vous pouvez également démarrer une analyse de l' AWS Transform-managed infrastructure depuis la page de modernisation continue de l'application Web AWS Transform (voirAWS Transformez les applications Web).

AWS Lot (Fargate) (recommandé)

Pour la plupart des portefeuilles, vous pouvez exécuter des analyses sur AWS Batch avec Fargate, qui est l'option de calcul recommandée. Chaque analyse s'exécute comme une tâche isolée dans son propre conteneur avec calcul sans serveur. Il n'y a donc aucune infrastructure persistante à gérer, et les tâches sont évolutives pour permettre l'analyse parallèle de plusieurs sources ou types d'analyses.

Le provisionnement déploie l'infrastructure requise, notamment :

  • AWS File d'attente de tâches par lots et environnement de calcul

  • Définition du poste avec l'image du conteneur de modernisation continue

  • Rôles IAM pour l'exécution de tâches par lots

  • Une fonction Lambda pour la soumission de tâches

Le provisionnement de l'infrastructure nécessite des autorisations d'administrateur. Pour exécuter des analyses et des corrections sur une pile de commandes déjà provisionnée avec le minimum de privilèges, joignez la politique gérée. AWS AWSTransformInfrastructureExecutorAccessBatch

Pour configurer l'exécution par lots, utilisez directement les atx ct remote commandes (voirExécution à distance), ou installez le plug-in Kiro Power ou agent (voirOutils pour développeurs) et demandez à l'agent : « Exécutez mon analyse sur Fargate » ou « Configurer l'exécution par lots pour une modernisation continue ». L'agent déploie la pile, stocke vos informations d'identification source dans Secrets Manager et soumet les tâches d'analyse à AWS Batch.

Amazon Amazon EC2

Exécutez des analyses sur une instance Amazon EC2 persistante dans votre Compte AWS. Cette option décharge le calcul de votre machine locale, prend en charge des analyses plus importantes et permet des analyses planifiées récurrentes. L'instance continue de fonctionner entre les soumissions.

Le provisionnement déploie une AWS CloudFormation pile qui inclut :

  • Une instance Amazon EC2 (Amazon Linux 2023) avec Docker et le conteneur de modernisation continue

  • Un rôle IAM avec des autorisations pour AWS Transform, Amazon S3, AWS KMS, Secrets Manager et l'agent de sécurité

  • AmazonSSMManagedInstanceCorepour l'accès au shell via SSM (aucune paire de clés SSH ni aucun port entrant requis)

  • Un groupe de sécurité sans règles entrantes

L'infrastructure de provisionnement nécessite des autorisations d'administrateur pour la gestion du cycle de vie d'Amazon EC2, les opérations de AWS CloudFormation pile, la création de rôles IAM, les opérations de compartiment Amazon S3, la gestion des secrets Secrets Manager et les commandes SSM. Pour exécuter des analyses et des corrections sur une pile Amazon EC2 déjà provisionnée avec le minimum de privilèges, joignez la politique gérée. AWS AWSTransformInfrastructureExecutorAccessEC2

Pour configurer l'exécution d'Amazon EC2, utilisez les atx ct remote commandes directement (voirExécution à distance), ou installez le plug-in Kiro Power ou agent (voirOutils pour développeurs) et demandez à l'agent : « Configurer une instance EC2 pour une analyse de modernisation continue ». L'agent approvisionne l'infrastructure, vérifie que le conteneur est en bon état et soumet vos analyses via SSM, aucun SSH n'est requis.

Configuration de l'agent de sécurité

Le type security d'analyse utilise le service AWS Security Agent pour la détection des vulnérabilités et des CVE. Contrairement aux autres types d'analyse, elle nécessite une configuration d'infrastructure unique dans votre Compte AWS.

Note

Le type d'securityanalyse n'est pas disponible dans les régions suivantes : Canada (Centreca-central-1) (), Europe (Londreseu-west-2) () et Asie-Pacifique (Séoul) (ap-northeast-2). Les autres types d'analyse ne sont pas affectés.

La commande setup fournit une AWS CloudFormation pile qui inclut :

  • Un compartiment Amazon S3 pour le téléchargement du code source

  • Un rôle IAM assumé par securityagent.amazonaws.com

  • Une politique gérée pour le rôle d'agent de sécurité

Pour exécuter des analyses de sécurité avec le moins de privilèges possible après la configuration, associez la politique AWS gérée AWSTransformSecurityAgentExecutorAccess à votre utilisateur ou à votre rôle IAM.

Votre utilisateur ou rôle IAM doit disposer des autorisations supplémentaires suivantes pour exécuter la configuration :

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

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

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

Utilisez les commandes suivantes pour gérer l'infrastructure des agents de sécurité :

# 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

Une fois la configuration terminée, vous pouvez exécuter des analyses de sécurité de la même manière que les autres types d'analyses.