Genel

PowerShell “Not Digitally Signed” Hatası ve Çözümü

Merhaba, bir işleminiz var ve bu işlemi PowerShell aracılığıyla gerçekleştirmeniz gerekiyor. Ancak, indirmiş olduğunuz PowerShell dosyasını çalıştırmaya çalıştığınızda “Not digitally signed” hatasıyla karşılaşıyor ve script çalışmıyor. Bu durum, PowerShell üzerinden çalıştırdığınız diğer komutlar sorunsuz çalışsa bile, sadece belirli bir scriptin çalışmamasına neden olabilir.

“Not Digitally Signed” Hatası

Öncelikle, indirdiğiniz PowerShell dosyasını örneğin C:\Script dizinine taşıyın. Ardından aşağıdaki hatayı alırsınız:

C:Path>.cengiz.ps1
.cengiz.ps1 : File C:Path\cengiz.ps1 cannot be loaded. The file C:Path\cengiz.ps1 is not digitally signed. You cannot run this script on the current system. For more information about running scripts and setting execution policy, see about_Execution_Policies at .
At line:1 char:1
+ .cengiz.ps1
+ ~~~~~~~~~~~
    + CategoryInfo          : SecurityError: (:) [], PSSecurityException
    + FullyQualifiedErrorId : UnauthorizedAccess

PowerShell Not Digitally Signed Hatasının Çözümü

İlk adım olarak, indirdiğiniz .ps1 uzantılı PowerShell dosyasına sağ tıklayıp Özellikler menüsüne girin. Açılan pencerede Genel sekmesinin alt kısmında yer alan “Engellemeyi Kaldır” seçeneğini işaretleyin ve ardından Uygula butonuna tıklayın.

Alternatif olarak aşağıdaki PowerShell komutunu da kullanarak dosyanın engelini kaldırabilirsiniz:

Get-Item C:\Path\cengiz.ps1 | Unblock-File

Bu komutun açıklaması:

  • Get-Item: Belirtilen yoldaki (C:\Path\cengiz.ps1) dosyayı nesne olarak alır.
  • | (Pipe): Komutun çıktısını bir başka komuta aktarır.
  • Unblock-File: Dosya üzerindeki engellemeyi kaldırır. Böylece dosya, Windows tarafından “güvenli değil” olarak işaretlenmişse bile artık sorunsuz şekilde çalıştırılabilir hale gelir.

Alternatif Yöntem: Execution Policy Değiştirme

Eğer dosya hâlâ çalışmıyorsa ve kalıcı bir değişiklik yapmadan geçici olarak bu hatayı aşmak istiyorsanız aşağıdaki komutu kullanabilirsiniz:

Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass

Bu komut sayesinde, sadece mevcut PowerShell oturumu boyunca çalıştırma politikası Bypass olarak ayarlanır ve imzasız scriptler çalıştırılabilir.


Bu yöntemlerle, “Not Digitally Signed” hatasıyla karşılaştığınız durumlarda PowerShell scriptlerinizi sorunsuz bir şekilde çalıştırabilirsiniz.

İlgili Makaleler

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu