Anasayfa » nasıl » Windows 7'de PowerShell Komut Dosyalarının Yürütülmesine İzin Verme

    Windows 7'de PowerShell Komut Dosyalarının Yürütülmesine İzin Verme

    İnternetten bir komut dosyası indirip çalıştırmayı denediğinizde, daha önce PowerShell'i yapılandırmadıysanız, kırmızı yazı tipinde kötü bir hata ortaya çıkarır. Bu çoğu kullanıcıyı korkutmak için yeterli, ancak kolay bir düzeltme var.

    PowerShell, hangi kod türünü çalıştırmasına izin verildiğini tanımlayan çok sayıda yürütme moduna sahiptir, bu HKLM kovanında yaşayan bir kayıt defteri anahtarı tarafından yönetilir. 4 farklı çalıştırma modu vardır, bunlar:

    • Kısıtlı: Varsayılan yürütme politikası, komut dosyalarını çalıştırmaz, yalnızca etkileşimli komutları çalıştırır.
    • Tüm İmzalar: Komut dosyalarını çalıştırır; Tüm komut dosyaları ve yapılandırma dosyaları güvendiğiniz bir yayıncı tarafından imzalanmalıdır; yayıncıya güvendiğinizi onayladıktan sonra sizi imzalı (ancak kötü amaçlı) komut dosyaları çalıştırma riskine açar.
    • Uzaktan İmzalı: Yerel komut dosyaları imza olmadan çalıştırılır. İndirilen herhangi bir komut dosyası, bir UNC yolunda bile dijital imzaya ihtiyaç duyar.
    • kısıtlanmamış: Komut dosyalarını çalıştırır; Microsoft Outlook, Internet Explorer, Outlook Express ve Windows Messenger gibi iletişim uygulamalarından indirilen tüm komut dosyaları ve yapılandırma dosyaları, Internet'ten kaynaklanan dosyayı anladığınızı doğruladıktan sonra çalıştırılır; dijital imza gerekmez; sizi bu uygulamalardan indirilen imzasız, kötü amaçlı komut dosyalarını çalıştırma riskine açar

    PowerShell'in varsayılan çalıştırma politikasına Kısıtlı denir. Bu modda, PowerShell sadece etkileşimli bir kabuk olarak çalışır. Komut dosyalarını çalıştırmaz ve yalnızca güvendiğiniz bir yayıncı tarafından imzalanan yapılandırma dosyalarını yükler. Kötü kırmızı hatayı alıyorsanız, en muhtemel neden, imzasız bir betiği çalıştırmaya çalışıyor olmanızdır. Yapılacak en güvenli şey, Yürütme Politikasını sınırsız olarak değiştirmek, komut dosyanızı çalıştırmak ve sonra kısıtlı olarak değiştir.

    Sınırsız olarak değiştirmek için, bir yönetimsel PowerShell'den aşağıdaki komutu çalıştırın:

    Set-ExecutionPolicy Sınırsız

    Yürütme Politikasını değiştirmek istediğinizden emin olup olmadığınız sorulacak, enter düğmesine tekrar basılacak..

    Artık indirdiğiniz komut dosyalarını sorunsuz çalıştırabilirsiniz. Ancak, Yürütme Politikasını Sınırlı moda geri getirmeyi unutursanız, ciddi bir güvenlik riski vardır. Muhtemelen onu Kısıtlı olarak nasıl ayarlayacağınızı tahmin edebilirsiniz, ancak bunu yapmayın:

    Set-ExecutionPolicy Sınırlı

    Yine, yürütme modunu değiştirmek istediğinizden emin olup olmadığınız sorulacaktır, devam edin ve enter tuşuna basın..