Bagaimana cara memperbaiki kesalahan- nodemon.ps1 tidak dapat dimuat karena skrip yang berjalan dinonaktifkan pada sistem ini, (tanpa risiko keamanan)?

Aug 15 2020

Kesalahan pada terminal: nodemon.ps1 tidak dapat dimuat karena menjalankan skrip dinonaktifkan pada sistem ini. Untuk informasi lebih lanjut, lihat about_Execution_Policies di https: /go.microsoft.com/fwlink/? LinkID = 135170.

Saya memiliki solusi untuk memperbaiki masalah dengan cara ini

  1. Buka Windows PowerShell dengan Run as Administrator
  2. Jalankan perintah ini: Set-ExecutionPolicy Unrestricted

Itu menyelesaikan masalah, tetapi dengan cara ini sistem menampilkan Peringatan Risiko Keamanan. Pertanyaan saya: Apakah ada cara lain untuk mengatasi ini tanpa risiko keamanan? Targetnya adalah menggunakan nodemon.

Jawaban

22 derekbaker783 Aug 15 2020 at 16:56

Saya akan merekomendasikan menggunakan RemoteSignedsebagai lawan Unrestricted, dan membatasi kebijakan untuk pengguna saat ini jika memungkinkan.

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

RemoteSigned : "Kebijakan eksekusi default untuk komputer server Windows."



Selain itu, saya tidak akan terlalu mengkhawatirkannya, karena ini tidak dimaksudkan sebagai mekanisme keamanan. Lihat kutipan ini dari dokumen:

"Kebijakan eksekusi bukanlah sistem keamanan yang membatasi tindakan pengguna. Misalnya, pengguna dapat dengan mudah melewati kebijakan dengan mengetikkan konten skrip pada baris perintah ketika mereka tidak dapat menjalankan skrip. Sebaliknya, kebijakan eksekusi membantu pengguna untuk menetapkan dasar aturan dan mencegah mereka melanggarnya secara tidak sengaja. "

8 web_walkerX Aug 15 2020 at 22:41

Tidak ada risiko keamanan apa pun yang terkait dengan mengizinkan skrip bertanda tangan jarak jauh untuk berjalan di komputer lokal Anda. Ini pada dasarnya berarti Anda dapat menjalankan skrip lokal yang tidak ditandatangani yaitu skrip yang Anda tulis sementara skrip dari sumber jarak jauh (dalam hal ini nodemon) harus ditandatangani oleh otoritas tepercaya.

PS: Jika Anda menggunakan windows, Anda bisa pergi ke pengaturan >> pembaruan dan keamanan >> untuk pengembang >> centang kotak di samping change execution policy to allow local powershell scripts to run without signing

1 stp_ Dec 29 2020 at 13:32

Bagi mereka yang tidak mengetahui cara mengatasi kesalahan ini menggunakan Windows PowerShell

  1. Buka PowerShell (Jalankan Sebagai Administrator)

  2. Periksa kebijakan eksekusi saat ini menggunakan perintah ini

    Get-ExecutionPolicy Anda harus mendapatkan 'Restricted'

  3. Jalankan perintah ini untuk membuatnya 'Tidak Terbatas'

    Set-ExecutionPolicy Unrestricted

  4. Periksa lagi apakah kebijakan eksekusi berubah dengan menjalankan perintah ini Get-ExecutionPolicy Anda harus mendapatkan 'Unrestricted'

  5. Sekarang coba jalankan nodemon pada proyek Anda nodemon 'filename.js'

Semoga ini bisa membantu

AmanSingh Oct 20 2020 at 20:27

Perintah ini mungkin membantu

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
kmgt Dec 22 2020 at 16:36

Saat menggunakan npm saya merekomendasikan untuk menjembatani perintah nodemon di scriptsbagian tersebut dan membiarkan pengaturan keamanan apa adanya.

package.json:

{
    "scripts": {
        "hmr": "nodemon index.js",
        "nodemon": "npm run hmr",
        "start": "node index.js"
    },
    "dependencies": {}
}

Jalankan saja npm run nodemonyang akan menjalankan hmrbaris di belakang layar.