{"id":182580,"date":"2026-07-09T22:53:44","date_gmt":"2026-07-09T20:53:44","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/v-npm-12-0-po-umolchaniyu-otklyuchyon-zapusk-skriptov-pri-ustanovke-paketov"},"modified":"2026-07-09T22:53:44","modified_gmt":"2026-07-09T20:53:44","slug":"v-npm-12-0-po-umolchaniyu-otklyuchyon-zapusk-skriptov-pri-ustanovke-paketov","status":"publish","type":"post","link":"https:\/\/prohoster.info\/cs\/blog\/news\/v-npm-12-0-po-umolchaniyu-otklyuchyon-zapusk-skriptov-pri-ustanovke-paketov","title":{"rendered":"Ve verzi NPM 12.0 je ve v\u00fdchoz\u00edm nastaven\u00ed deaktivov\u00e1n spou\u0161t\u011bn\u00ed skript\u016f p\u0159i instalaci bal\u00ed\u010dk\u016f.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Byl vyd\u00e1n nov\u00fd bal\u00ed\u010dek spr\u00e1vce NPM 12.0, kter\u00fd je sou\u010d\u00e1st\u00ed Node.js a pou\u017e\u00edv\u00e1 se k distribuci modul\u016f v jazyce JavaScript. Nov\u00e1 verze se vyzna\u010duje v\u00fdchoz\u00edm zak\u00e1z\u00e1n\u00edm spou\u0161t\u011bn\u00ed skript\u016f b\u011bhem instalace bal\u00ed\u010dk\u016f. Toto zm\u011bna m\u00e1 zt\u00ed\u017eit prov\u00e1d\u011bn\u00ed \u00fatok\u016f prost\u0159ednictv\u00edm kompromitace z\u00e1vislost\u00ed a zpomalit \u0161\u00ed\u0159en\u00ed \u010derv\u016f aktivovan\u00fdch instala\u010dn\u00edmi skripty.    <\/p>\n<p>K zak\u00e1z\u00e1n\u00ed automatick\u00e9ho spu\u0161t\u011bn\u00ed skript\u016f uveden\u00fdch v package.json prost\u0159ednictv\u00edm parametr\u016f preinstall, install nebo postinstall je nastaven\u00ed allowScripts ve v\u00fdchoz\u00edm nastaven\u00ed uvedeno na hodnotu \u201eoff\u201c. Spou\u0161t\u011bn\u00ed takov\u00fdch skript\u016f a tak\u00e9 kompilace k\u00f3du C\/C++ pomoc\u00ed n\u00e1stroje node-gyp, pokud je v bal\u00ed\u010dku p\u0159\u00edtomen soubor binding.gyp, nyn\u00ed prob\u00edh\u00e1 pouze na z\u00e1klad\u011b v\u00fdslovn\u00e9ho pokynu od u\u017eivatele. Krom\u011b toho jsou parametry \u201e\u2014allow-git\u201c a \u201e\u2014allow-remote\u201c ve v\u00fdchoz\u00edm nastaven\u00ed nastaveny na hodnotu \u201enone\u201c, co\u017e zakazuje automatick\u00e9 stahov\u00e1n\u00ed z\u00e1vislost\u00ed z Git repozit\u00e1\u0159\u016f a p\u0159\u00edm\u00fdch odkaz\u016f na weby s tar archivy.    <\/p>\n<p>Pro organizaci spu\u0161t\u011bn\u00ed instala\u010dn\u00edch skript\u016f by m\u011bla b\u00fdt pou\u017eita p\u0159\u00edkaz \u201enpm approve-scripts\u201c, do jeho\u017e argumentu se p\u0159ed\u00e1vaj\u00ed n\u00e1zvy bal\u00ed\u010dk\u016f, kter\u00e9 jsou d\u016fv\u011bryhodn\u00e9, nebo volba \u201e\u2014all\u201c pro ud\u011blen\u00ed povolen\u00ed v\u0161em bal\u00ed\u010dk\u016fm. U podez\u0159el\u00fdch bal\u00ed\u010dk\u016f se doporu\u010duje spustit p\u0159\u00edkaz \u201enpm approve-scripts \u2014allow-scripts-pending\u201c, kter\u00fd zobraz\u00ed seznam skript\u016f uch\u00e1zej\u00edc\u00edch se o spu\u0161t\u011bn\u00ed. Po kontrole t\u011bchto skript\u016f je mo\u017en\u00e9 je povolit p\u0159\u00edkazem \u201enpm approve-scripts\u201c a p\u0159idat do b\u00edl\u00e9ho seznamu v package.json.    <\/p>\n<p>Krom\u011b toho byl ozn\u00e1men z\u00e1kaz pou\u017e\u00edv\u00e1n\u00ed GAT token\u016f p\u0159\u00edstupu (Granular Access Tokens) v repozit\u00e1\u0159i NPM, kter\u00e9 jsou nastavena na prov\u00e1d\u011bn\u00ed akc\u00ed bez dvoufaktorov\u00e9 autentifikace (2FA). Od srpna nebudou tyto tokeny bez dal\u0161\u00edho ru\u010dn\u00edho potvrzen\u00ed umo\u017e\u0148ovat prov\u00e1d\u011bt takov\u00e9 operace, jako je vytv\u00e1\u0159en\u00ed nebo maz\u00e1n\u00ed token\u016f, zm\u011bna profilu, hesla nebo e-mailu, nastaven\u00ed dvoufaktorov\u00e9 autentifikace, generov\u00e1n\u00ed obnovovac\u00edch k\u00f3d\u016f, zm\u011bna p\u0159\u00edstupov\u00fdch pr\u00e1v a spr\u00e1va doprovodn\u00fdch \u00fa\u010dt\u016f.    <\/p>\n<p>V lednu 2027 hodlaj\u00ed zak\u00e1zat p\u0159\u00edm\u00e9 publikov\u00e1n\u00ed bal\u00ed\u010dk\u016f s pou\u017eit\u00edm token\u016f obch\u00e1zej\u00edc\u00edch 2FA. Bal\u00ed\u010dky v\u0161ak bude mo\u017en\u00e9 publikovat v staging sekci, kde z\u016fstanou a\u017e do ru\u010dn\u00edho potvrzen\u00ed vyd\u00e1n\u00ed spr\u00e1vcem. Po ru\u010dn\u00edm potvrzen\u00ed budou publikovan\u00e9 bal\u00ed\u010dky dostupn\u00e9 pro instalaci u\u017eivateli.     <\/p>\n<p>Pro automatick\u00e9 publikov\u00e1n\u00ed se doporu\u010duje pou\u017e\u00edt mechanismus \u201eTrusted Publishers\u201c, zalo\u017een\u00fd na standardu OpenID Connect (OIDC) a autentiza\u010dn\u00edch tokenech s omezenou dobou platnosti, kter\u00fdmi si extern\u00ed slu\u017eby a katalog bal\u00ed\u010dk\u016f vym\u011b\u0148uj\u00ed pro potvrzen\u00ed operace publikov\u00e1n\u00ed bal\u00ed\u010dku m\u00edsto pou\u017e\u00edv\u00e1n\u00ed tradi\u010dn\u00edch hesel nebo trval\u00fdch token\u016f p\u0159\u00edstupu k API.<br \/>\n<br \/>Zdroj: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=65878\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a \u043f\u0430\u043a\u0435\u0442\u043d\u043e\u0433\u043e \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u0430 NPM 12.0, \u0432\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e \u0432 \u043f\u043e\u0441\u0442\u0430\u0432\u043a\u0443 Node.js \u0438 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u043c\u043e\u0433\u043e \u0434\u043b\u044f \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u043c\u043e\u0434\u0443\u043b\u0435\u0439 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 JavaScript. \u041d\u043e\u0432\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u043f\u0440\u0438\u043c\u0435\u0447\u0430\u0442\u0435\u043b\u044c\u043d\u0430 \u043f\u0440\u0435\u043a\u0440\u0430\u0449\u0435\u043d\u0438\u0435\u043c \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0432 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u043f\u0430\u043a\u0435\u0442\u043e\u0432. \u041f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u0442\u0441\u044f, \u0447\u0442\u043e \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0443\u0441\u043b\u043e\u0436\u043d\u0438\u0442 \u043f\u0440\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0430\u0442\u0430\u043a \u0447\u0435\u0440\u0435\u0437 \u043a\u043e\u043c\u043f\u0440\u043e\u043c\u0435\u0442\u0430\u0446\u0438\u044e \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0435\u0439 \u0438 \u0437\u0430\u043c\u0435\u0434\u043b\u0438\u0442 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0447\u0435\u0440\u0432\u0435\u0439, \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u0443\u0435\u043c\u044b\u0445 \u0438\u0437 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043e\u0447\u043d\u044b\u0445 \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0432. \u0414\u043b\u044f \u0437\u0430\u043f\u0440\u0435\u0442\u0430 \u0430\u0432\u0442\u043e\u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0432, \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0445 \u0432 package.json \u0447\u0435\u0440\u0435\u0437 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":10,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-182580","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a \u043f\u0430\u043a\u0435\u0442\u043d\u043e\u0433\u043e \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u0430 NPM 12.0, \u0432\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e \u0432 \u043f\u043e\u0441\u0442\u0430\u0432\u043a\u0443 Node.js \u0438 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u043c\u043e\u0433\u043e \u0434\u043b\u044f \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u043c\u043e\u0434\u0443\u043b\u0435\u0439 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 JavaScript.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Alexander Kovalev\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/cs\/blog\/news\/v-npm-12-0-po-umolchaniyu-otklyuchyon-zapusk-skriptov-pri-ustanovke-paketov\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"cs_CZ\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0412 NPM 12.0 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043e\u0442\u043a\u043b\u044e\u0447\u0451\u043d \u0437\u0430\u043f\u0443\u0441\u043a \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0432 \u043f\u0440\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a \u043f\u0430\u043a\u0435\u0442\u043d\u043e\u0433\u043e \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u0430 NPM 12.0, \u0432\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e \u0432 \u043f\u043e\u0441\u0442\u0430\u0432\u043a\u0443 Node.js \u0438 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u043c\u043e\u0433\u043e \u0434\u043b\u044f \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u043c\u043e\u0434\u0443\u043b\u0435\u0439 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 JavaScript.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/cs\/blog\/news\/v-npm-12-0-po-umolchaniyu-otklyuchyon-zapusk-skriptov-pri-ustanovke-paketov\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-07-09T20:53:44+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-07-09T20:53:44+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Ve verzi NPM 12.0 je ve v\u00fdchoz\u00edm nastaven\u00ed zak\u00e1z\u00e1no spu\u0161t\u011bn\u00ed skript\u016f p\u0159i instalaci bal\u00ed\u010dk\u016f | ProHoster","description":"Bylo vyd\u00e1no vyd\u00e1n\u00ed spr\u00e1vce bal\u00ed\u010dk\u016f NPM 12.0, kter\u00e9 je sou\u010d\u00e1st\u00ed dod\u00e1vky Node.js a slou\u017e\u00ed k distribuci modul\u016f v jazyce JavaScript.","canonical_url":"https:\/\/prohoster.info\/cs\/blog\/news\/v-npm-12-0-po-umolchaniyu-otklyuchyon-zapusk-skriptov-pri-ustanovke-paketov","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"cs_CZ","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0412 NPM 12.0 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043e\u0442\u043a\u043b\u044e\u0447\u0451\u043d \u0437\u0430\u043f\u0443\u0441\u043a \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0432 \u043f\u0440\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 | ProHoster","og:description":"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a \u043f\u0430\u043a\u0435\u0442\u043d\u043e\u0433\u043e \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u0430 NPM 12.0, \u0432\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e \u0432 \u043f\u043e\u0441\u0442\u0430\u0432\u043a\u0443 Node.js \u0438 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u043c\u043e\u0433\u043e \u0434\u043b\u044f \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u043c\u043e\u0434\u0443\u043b\u0435\u0439 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 JavaScript.","og:url":"https:\/\/prohoster.info\/cs\/blog\/news\/v-npm-12-0-po-umolchaniyu-otklyuchyon-zapusk-skriptov-pri-ustanovke-paketov","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2026-07-09T20:53:44+00:00","article:modified_time":"2026-07-09T20:53:44+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"182580","title":null,"description":null,"keywords":null,"keyphrases":{"focus":[],"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-08-05 12:22:05","updated":"2026-08-05 12:22:05","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/182580","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/users\/10"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/comments?post=182580"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/182580\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media?parent=182580"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/categories?post=182580"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/tags?post=182580"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}