{"id":271731,"date":"2022-07-22T09:32:48","date_gmt":"2022-07-22T11:32:48","guid":{"rendered":"https:\/\/teknomers.com\/fr\/un-moyen-plus-simple-de-garder-lancien-code-python-sain-et-securise\/"},"modified":"2022-07-22T09:32:49","modified_gmt":"2022-07-22T11:32:49","slug":"un-moyen-plus-simple-de-garder-lancien-code-python-sain-et-securise","status":"publish","type":"post","link":"https:\/\/teknomers.com\/fr\/un-moyen-plus-simple-de-garder-lancien-code-python-sain-et-securise\/","title":{"rendered":"Un moyen plus simple de garder l&#8217;ancien code Python sain et s\u00e9curis\u00e9"},"content":{"rendered":"<p> <br \/>\n<\/p>\n<div id=\"articlebody\">\n<div class=\"separator\" style=\"clear: both\"><\/div>\n<p>Python a ses avantages et ses inconv\u00e9nients, mais il est n\u00e9anmoins largement utilis\u00e9.  Par exemple, Python est fr\u00e9quemment utilis\u00e9 dans les t\u00e2ches de traitement des donn\u00e9es, m\u00eame lorsqu&#8217;il existe des langages plus appropri\u00e9s parmi lesquels choisir.<\/p>\n<p>Pourquoi?  Eh bien, Python est relativement facile \u00e0 apprendre.  Quelqu&#8217;un avec une formation scientifique peut comprendre Python beaucoup plus rapidement que, disons, C. Cependant, l&#8217;accessibilit\u00e9 inh\u00e9rente \u00e0 Python cr\u00e9e \u00e9galement quelques probl\u00e8mes.<\/p>\n<p>Chaque fois que Python est mis \u00e0 jour, cela signifie une charge de travail de refactorisation importante, qui est souvent mal g\u00e9r\u00e9e, voire pas du tout.  Cela conduit \u00e0 de mauvaises performances et \u00e0 des vuln\u00e9rabilit\u00e9s de s\u00e9curit\u00e9.  Mais peut-\u00eatre existe-t-il un meilleur moyen : un outil pour assurer le bon d\u00e9roulement et la s\u00e9curit\u00e9 de vos t\u00e2ches Python jour apr\u00e8s jour.  Nous allons jeter un coup d&#8217;oeil.<\/p>\n<h2 style=\"text-align: left\"><strong>C&#8217;est lent, mais \u00e7a fait le job<\/strong><\/h2>\n<p>Python n&#8217;est pas le langage le plus rapide, mais malgr\u00e9 ses inconv\u00e9nients comparatifs, vous le verrez souvent utilis\u00e9 pour des op\u00e9rations intensives de traitement de donn\u00e9es.  Pensez \u00e0 l&#8217;apprentissage automatique, \u00e0 la vision par ordinateur ou m\u00eame aux math\u00e9matiques pures dans les syst\u00e8mes de calcul haute performance (HPC).<\/p>\n<p>Ainsi, malgr\u00e9 sa r\u00e9putation de performance, les charges de travail tr\u00e8s difficiles sont g\u00e9n\u00e9ralement g\u00e9r\u00e9es avec du code Python, simplement parce qu&#8217;il est si pratique \u00e0 utiliser.  Si vous avez une formation en sciences ou en math\u00e9matiques, vous pouvez relativement facilement apprendre Python et produire votre propre code qui fera le travail.<\/p>\n<p>Mais, comme c&#8217;est souvent le cas, quelque chose qui est accessible peut aussi cr\u00e9er beaucoup de risques.  Les programmeurs inexp\u00e9riment\u00e9s qui \u00e9crivent du code Python peuvent avoir du mal avec des t\u00e2ches que les programmeurs plus exp\u00e9riment\u00e9s tiennent pour acquises.<\/p>\n<h2 style=\"text-align: left\"><strong>Le refactoring est une corv\u00e9e\u2026 et un risque<\/strong><\/h2>\n<p>Comme tous les langages de programmation, Python subit des mises \u00e0 jour fr\u00e9quentes.  Le passage de Python 2.7 \u00e0 Python 3.0, par exemple, a apport\u00e9 tout un tas de fonctionnalit\u00e9s et d&#8217;am\u00e9liorations.  Cela signifie \u00e9galement que tout ce qui est \u00e9crit pour Python 2.7 doit \u00eatre &#8220;refactoris\u00e9&#8221; pour Python 3.0 en raison de changements dans le fonctionnement de Python.<\/p>\n<p>La refactorisation fait r\u00e9f\u00e9rence \u00e0 la fa\u00e7on dont les programmeurs ajustent une base de code pour r\u00e9pondre aux changements environnementaux, comme un changement de version linguistique, ou simplement pour am\u00e9liorer le code existant sous une forme ou une autre.  Sans refactorisation, un passage de Python 2.7 \u00e0 Python 3.0 signifie souvent que le code de Python 2.7 ne fonctionne plus aussi bien, voire pas du tout.<\/p>\n<p>Et voici le probl\u00e8me\u00a0: les utilisateurs qui ont \u00e9crit le code Python d&#8217;origine n&#8217;ont peut-\u00eatre pas l&#8217;expertise n\u00e9cessaire pour refactoriser.  Apr\u00e8s tout, ce sont souvent des scientifiques \u2013 et non des programmeurs exp\u00e9riment\u00e9s.  Lorsque des programmeurs inexp\u00e9riment\u00e9s tentent d&#8217;ajuster le code, il existe un risque r\u00e9el que les performances se d\u00e9gradent et que des bogues s&#8217;infiltrent &#8211; parfois uniquement visibles lorsqu&#8217;un cas limite appara\u00eet.  Les petits bogues deviennent une pr\u00e9occupation majeure lorsque le code Python est utilis\u00e9 \u00e0 des fins critiques, 24 heures sur 24, 7 jours sur 7, telles que l&#8217;analyse scientifique.<\/p>\n<p>La refactorisation peut \u00e9galement entra\u00eener une d\u00e9gradation inattendue des performances.  M\u00eame s&#8217;il ne s&#8217;agit que d&#8217;une baisse des performances de 5\u00a0%, une mise \u00e0 jour de code mal ex\u00e9cut\u00e9e peut rapidement cr\u00e9er des factures beaucoup plus importantes sur des plates-formes HPC co\u00fbteuses et payantes.<\/p>\n<h2 style=\"text-align: left\"><strong>Vous vous en tenez \u00e0 l&#8217;ancien Python\u00a0?  C&#8217;est un risque encore plus grand<\/strong><\/h2>\n<p>Si vous pensez au travail acharn\u00e9 et aux risques li\u00e9s \u00e0 l&#8217;ajustement du code, il n&#8217;est pas surprenant que les utilisateurs choisissent souvent de s&#8217;en tenir aux anciennes versions de Python.  L&#8217;ex\u00e9cution de code existant sur une version obsol\u00e8te de Python \u00e9vite de nombreux d\u00e9fis car vous n&#8217;avez pas besoin de refactoriser : vous conservez votre code tel qu&#8217;il \u00e9tait.<\/p>\n<p>G\u00e9n\u00e9ralement, les \u00e9diteurs de logiciels font exactement cela &#8211; ne mettent \u00e0 jour leur logiciel qu&#8217;en fonction d&#8217;une nouvelle version de Python lorsqu&#8217;ils publient une nouvelle version du produit logiciel.  Si vous avez achet\u00e9 une version sp\u00e9cifique &#8211; fonctionnant sur, disons, Python 2.7, vous \u00eates bloqu\u00e9 et vous devez continuer \u00e0 ex\u00e9cuter Python 2.7 quoi qu&#8217;il arrive.<\/p>\n<p>Cela ne semble pas \u00eatre un gros probl\u00e8me, mais s&#8217;appuyer sur des blocs de construction obsol\u00e8tes et non pris en charge pour votre informatique est un cauchemar DevSecOps.  De nouvelles vuln\u00e9rabilit\u00e9s appara\u00eetront et les correctifs n\u00e9cessaires ne viendront tout simplement pas.  S&#8217;appuyer sur d&#8217;anciennes versions de langages de programmation introduit donc d&#8217;\u00e9normes risques dans votre environnement informatique.<\/p>\n<h2 style=\"text-align: left\"><strong>Il y a peu de choix &#8211; ou est-ce qu&#8217;il y en a ?<\/strong><\/h2>\n<p>La chose responsable \u00e0 faire est de mettre \u00e0 jour la version Python en cas de besoin et de modifier le code qui s&#8217;y ex\u00e9cute, mais il n&#8217;y a tout simplement pas de moyen indolore de le faire.  De mani\u00e8re r\u00e9aliste, en raison d&#8217;un manque de ressources, la refactorisation n&#8217;est souvent pas effectu\u00e9e, avec des cons\u00e9quences potentiellement co\u00fbteuses.<\/p>\n<p>Il y a un grand besoin d&#8217;une meilleure approche, et voici ce qui est int\u00e9ressant.  La situation que nous venons de d\u00e9crire autour des versions Python est fr\u00e9quente dans le monde de l&#8217;informatique.  Par exemple, il est courant pour les organisations d&#8217;ex\u00e9cuter des versions du syst\u00e8me d&#8217;exploitation Linux qui ne sont plus couvertes par le support officiel des fournisseurs, prenant le risque que les vuln\u00e9rabilit\u00e9s de s\u00e9curit\u00e9 ne soient pas corrig\u00e9es. <em>juste pour s&#8217;assurer que les applications critiques ne se cassent pas<\/em>.<\/p>\n<p>C&#8217;est un probl\u00e8me pour les mises \u00e0 jour linguistiques ainsi que pour d&#8217;autres \u00e9l\u00e9ments de l&#8217;infrastructure informatique.  Mais, ces derni\u00e8res ann\u00e9es, les solutions de correctifs avanc\u00e9es permettent aux entreprises d&#8217;\u00e9tendre le cycle de vie habituel du support pour plusieurs composants, des syst\u00e8mes d&#8217;exploitation entiers aux biblioth\u00e8ques partag\u00e9es critiques sp\u00e9cifiques.  Chez TuxCare, nous avons d\u00e9velopp\u00e9 plusieurs solutions qui prolongent le fonctionnement s\u00fbr et s\u00e9curis\u00e9 des anciens logiciels au-del\u00e0 de la fin de vie du fournisseur.<\/p>\n<h2 style=\"text-align: left\"><strong>Ex\u00e9cution d&#8217;anciennes applications Python en toute s\u00e9curit\u00e9<\/strong><\/h2>\n<p>Et si la m\u00eame chose pouvait \u00eatre faite pour les versions linguistiques ?  Eh bien, vous pouvez maintenant vous attendre \u00e0 ex\u00e9cuter votre ancien code Python, sur une ancienne version de Python, mais sans les risques que cela comporte.  Pas de constructions de langage obsol\u00e8tes &#8211; et pas de vuln\u00e9rabilit\u00e9s non plus.<\/p>\n<p>En d&#8217;autres termes, la prise en charge \u00e9tendue du cycle de vie des versions linguistiques, telles que Python, devient une r\u00e9alit\u00e9.  Vous pourrez bient\u00f4t conserver votre code Python en toute s\u00e9curit\u00e9 sans avoir \u00e0 r\u00e9\u00e9crire une seule ligne de code, simplement en b\u00e9n\u00e9ficiant d&#8217;une prise en charge \u00e9tendue du cycle de vie de Python, qui vous offre la m\u00eame protection de s\u00e9curit\u00e9 qu&#8217;une mise \u00e0 niveau de version compl\u00e8te.<\/p>\n<p>Pr\u00eat \u00e0 \u00eatre d\u00e9ploy\u00e9 \u00e0 des prix accessibles, le support du cycle de vie \u00e9tendu Python de TuxCare aidera votre organisation \u00e0 traiter les questions difficiles concernant les anciennes charges de travail Python.  Gardez un \u0153il sur notre annonce &#8211; qui arrive bient\u00f4t. <\/p>\n<p><\/p>\n<\/div>\n<p><br \/>\n<br \/><a href=\"https:\/\/thehackernews.com\/2022\/07\/an-easier-way-to-keep-old-python-code.html\" rel=\"nofollow noopener\" target=\"_blank\">ttn-fr-57<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Python a ses avantages et ses inconv\u00e9nients, mais il est n\u00e9anmoins largement utilis\u00e9. Par exemple, Python est fr\u00e9quemment utilis\u00e9 dans les t\u00e2ches de traitement des donn\u00e9es, m\u00eame lorsqu&#8217;il existe des langages plus appropri\u00e9s parmi lesquels choisir. Pourquoi? Eh bien, Python est relativement facile \u00e0 apprendre. Quelqu&#8217;un avec une formation scientifique peut comprendre Python beaucoup plus [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":271732,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[5597,4168,4158,4165,4161,836,4157,4159,4171,4170,2122,4167,4160,1874,4163,4162,39385,11234,36264,4172,4169,2199,4166,4164],"class_list":["post-271731","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-technologie","tag-code","tag-comment-pirater","tag-cyber-actualites","tag-cyber-attaques","tag-cyber-mises-a-jour","tag-garder","tag-lactualite-de-la-cybersecurite","tag-lactualite-de-la-cybersecurite-aujourdhui","tag-lactualite-des-hackers","tag-la-securite-des-informations","tag-lancien","tag-logiciel-malveillant-de-ransomware","tag-mises-a-jour-de-la-cybersecurite","tag-moyen","tag-nouvelles-de-piratage","tag-nouvelles-de-pirates","tag-python","tag-sain","tag-securise","tag-securite-informatique","tag-securite-internet","tag-simple","tag-violation-de-donnees","tag-vulnerabilite-logicielle"],"_links":{"self":[{"href":"https:\/\/teknomers.com\/fr\/wp-json\/wp\/v2\/posts\/271731","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/teknomers.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/teknomers.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/teknomers.com\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/teknomers.com\/fr\/wp-json\/wp\/v2\/comments?post=271731"}],"version-history":[{"count":0,"href":"https:\/\/teknomers.com\/fr\/wp-json\/wp\/v2\/posts\/271731\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/teknomers.com\/fr\/wp-json\/wp\/v2\/media\/271732"}],"wp:attachment":[{"href":"https:\/\/teknomers.com\/fr\/wp-json\/wp\/v2\/media?parent=271731"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/teknomers.com\/fr\/wp-json\/wp\/v2\/categories?post=271731"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/teknomers.com\/fr\/wp-json\/wp\/v2\/tags?post=271731"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}