যেহেতু এই প্রশ্নটি প্রতিক্রিয়াগুলিকে আকর্ষণ করে যা প্রশ্নবিদ্ধ সংস্থার দ্বারা খণ্ডিত হয় বা প্রকৃত সমস্যাটির সমাধান করে না , তাই আপনার কী জানা দরকার তা সম্পর্কে এই সাধারণ সংক্ষিপ্তসারটি পড়ুন :
- এই না একটি "কেন চালানো PowerShell আমার ডিফল্ট ইনস্টলেশন করা হবে না স্ক্রিপ্ট?" প্রশ্ন।
- এই না একটি "কেন PowerShell রান স্ক্রিপ্ট আমার ইনস্টলেশন ইন্টারনেট থেকে ডাউনলোড করা হবে না?" প্রশ্ন।
- প্রশ্নটি হ'ল
RemoteSigned
কার্যকর করা নীতি যখন স্ক্রিপ্ট সম্পাদনটি করা উচিত নয় তখন কেন তা বাধা দিচ্ছে ।RemoteSigned
হয় শুধুমাত্র মৃত্যুদন্ড নীতি আমি ব্যবহার করতে চাই। আমি সচেতন যে অন্যান্য, কম-সীমাবদ্ধ নীতি উপলব্ধ। যদি এই নীতিগুলি গ্রহণযোগ্য বিকল্প হয় তবে আমি কেবল তাদের পরিবর্তে এগুলি ব্যবহার করতাম এবং এই প্রশ্নের অস্তিত্ব থাকত না।- ইতিমধ্যে কার্যকরকরণের নীতি সেট করা আছে
RemoteSigned
। থেকে এটিকে পরিবর্তন করাRemoteSigned
থেকেRemoteSigned
একটি সমাধান নয়।- স্ক্রিপ্ট ফাইলটি স্থানীয়ভাবে তৈরি এবং সংরক্ষণ করা হয়।
- স্ক্রিপ্ট ফাইলটি অবরুদ্ধ করা হয়নি। স্ক্রিপ্ট ফাইলটি কখনও অবরুদ্ধ ছিল না (পূর্ববর্তী পয়েন্টটি দেখুন)।
- স্ক্রিপ্ট ফাইলটি অবরোধ মুক্ত করা যাবে না কারণ আনব্লক করার মতো কিছু নেই (পূর্ববর্তী পয়েন্টটি দেখুন)।
- প্রশাসক কর্তৃক স্ক্রিপ্ট ফাইলটি কার্যকর করার চেষ্টা করা হয়েছে।
Windows PowerShell
জড়িত একমাত্র আবেদন। নাWindows PowerShell ISE
বাCommand Prompt
অন্য কোনও সরঞ্জাম বা সম্পাদক প্রাসঙ্গিক নয়।- সমস্যার কারণ ইতিমধ্যে সনাক্ত করা হয়েছে (স্বীকৃত উত্তর দেখুন)। প্রায় 8 বছর পরে, আমি মনে করি অন্যান্য প্রাসঙ্গিক ব্যাখ্যাগুলি প্রযোজ্য কিনা তাও পোস্ট করা হয়েছে। আপনি যদি অন্যথায় মনে করেন তবে আপনার যোগ করার আগে দয়া করে প্রশ্ন এবং বিদ্যমান উত্তরগুলি তাদের সম্পূর্ণতার মধ্যে পড়ুন ।
আমি 64-বিট উইন্ডোজ 7 পেশাদারে উইন্ডোজ পাওয়ারশেল 2.0 ব্যবহার করছি। আমার কাছে আমার একটি স্ক্রিপ্ট রয়েছে Desktop
যা যখন আমি এটি চালানোর চেষ্টা করি তখন নিম্নলিখিত ত্রুটির কারণ হয়:
File C:\Users\UserName\Desktop\Script.ps1 cannot be loaded. The file C:\Users\UserName\Desktop\Script.ps1 is not digitally signed. The script will not execute on the system. Please see "get-help about_signing" for more details..
At line:1 char:54
+ C:\Users\UserName\Desktop\TestGetWindowsUpdateLog.ps1 <<<<
+ CategoryInfo : NotSpecified: (:) [], PSSecurityException
+ FullyQualifiedErrorId : RuntimeException
আমি উভয়ই একটি ডোমেন প্রশাসক এবং স্থানীয় প্রশাসক এবং আমি যদি চালনা করি তবে Get-ExecutionPolicy -List
দেখতে পাব যে Group Policy Object
পাওয়ারশেলটি কনফিগার করতে আমি তৈরি করেছি তা সঠিকভাবে RemoteSigned
মেশিন স্তরে কার্যকরকরণের নীতি প্রয়োগ করছে :
Scope ExecutionPolicy
----- ---------------
MachinePolicy RemoteSigned
UserPolicy Undefined
Process Undefined
CurrentUser Undefined
LocalMachine Undefined
আমি স্ক্রিপ্ট নিজেকে তৈরি করা Notepad
, এবং ব্যবহৃত Sysinternals ' streams
উপযোগ এবং ফাইল Properties
নিশ্চিত করার জন্য ডায়ালগটি স্ক্রিপ্ট ইন্টারনেট থেকে এসে বলে গণ্য হচ্ছে না। যদি আমি কোনও ডোমেন সার্ভারে কোনও নেটওয়ার্ক ভাগ করে স্ক্রিপ্টটি অনুলিপি করি তবে তা কার্যকর করার অনুমতি দেওয়া হয়েছে। যদি আমি চালনা করি Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Scope LocalMachine
তবে স্থানীয় স্ক্রিপ্টটি এখনও কার্যকর করার অনুমতি নেই, এটি স্কোপটিতে কার্যকর করার নীতিকে MachinePolicy
অগ্রাধিকার দেবে বলেই বোঝা যায়।
about_Execution_Policies
( বর্তমান ; প্রশ্নের সময় ) দ্বারা নথিযুক্ত হিসাবে , RemoteSigned
নীতিটির অর্থ:
স্ক্রিপ্টগুলি চলতে পারে।
ইন্টারনেট থেকে ডাউনলোড করা স্ক্রিপ্ট এবং কনফিগারেশন ফাইলগুলির উপর কোনও বিশ্বস্ত প্রকাশকের কাছ থেকে ডিজিটাল স্বাক্ষর প্রয়োজন (
আপনি চালিত স্ক্রিপ্টগুলিতে এবং আপনি স্থানীয় কম্পিউটারে লিখেছেন যে ডিজিটাল স্বাক্ষর প্রয়োজন হয় না (ইন্টারনেট থেকে ডাউনলোড করা হয়নি)।
ইন্টারনেট ব্যতীত অন্য উত্স থেকে স্বাক্ষরবিহীন স্ক্রিপ্টগুলি চালনার ঝুঁকি এবং স্বাক্ষরিত, তবে দূষিত, স্ক্রিপ্টগুলি।
আমার স্ক্রিপ্ট স্বাক্ষরিত নয়, তবে এটি স্থানীয়ভাবে তৈরি এবং কার্যকর উভয়ই হওয়ায় এটি উপরের তৃতীয় বুলেট পয়েন্টটি সন্তুষ্ট করা উচিত। অতএব ...
- আমার স্ক্রিপ্টটি চালানোর অনুমতি দেওয়া হচ্ছে না কেন?
- যখন প্রয়োজনীয়তাটি কেবলমাত্র ইন্টারনেট থেকে ফাইলগুলিতে প্রয়োগ করা উচিত তখন পাওয়ারশেল কেন অভিযোগ করেন যে আমার স্ক্রিপ্টটি "ডিজিটালি স্বাক্ষরিত নয়"?
- নেটওয়ার্ক শেয়ার থেকে চালিত হওয়ার পরে পাওয়ারশেল কেন স্ক্রিপ্ট স্বাক্ষরিত হচ্ছে না সে সম্পর্কে আর চিন্তা করে না?