আমার কাছে কয়েকটি বেস সরঞ্জাম রয়েছে যা mysql -e "{command}"
ফাংশনটি ব্যবহার করে । পাসওয়ার্ডটি প্রবেশ করার সময় আমি যখন এই সরঞ্জামগুলি ব্যবহার করি তখন ব্যথা হয়, সুতরাং কোডটির সাথে একটি সরলখর ফাইলটিতে পাসওয়ার্ড লেখা এড়াতে আমি এটিকে স্মৃতিতে (ব্যবহার করে read -s
) সংরক্ষণ করি এবং যখনই এটি আদেশগুলি চালায় তখন BASH এটি পড়তে বাধ্য করে।
MySQL এখনও মনে করে যে কমান্ড লাইনের মাধ্যমে পাসওয়ার্ড জমা দেওয়া হচ্ছে (কারণ, কথা বলার পদ্ধতিতে এটি হ'ল) এবং তবুও আমাকে ত্রুটি দেয় "কমান্ড লাইন ইন্টারফেসে একটি পাসওয়ার্ড ব্যবহার করা নিরাপত্তাহীন হতে পারে।"
আমার উদ্দেশ্যে, আমার এই বার্তাটি দমন করার দরকার নেই। আমি কি জানা প্রয়োজন, এটা যে কি পারে এটা অনিরাপদ করা? পাসওয়ার্ডটি কখনও শারীরিকভাবে দৃশ্যমান হয় না, তাই কাঁধে সার্ফিং এটি করতে পারে না এবং এমনকি আমার এসএসএইচ পাসওয়ার্ড অনুমানকারী কেউ এটি স্ক্রিপ্টগুলির চেয়ে স্মৃতিতে সঞ্চয় না করে এটি করতে সক্ষম হবে না। একজন মধ্য-আক্রমণে বা এরকম কিছু কি সম্ভব?
bash
কমান্ডটি চালানোর সময় আপনি এটি কীভাবে পড়বেন? আপনি যদি করেন mysql -p"$pass"
তবে যে কেউ এটিকে দেখতে পাবে ps
।
~/.my.cnf
উদাহরণের মধ্যে রাখুন আপনি প্রতিটি হোস্টকে নির্দিষ্ট করে নির্দিষ্ট করে দিতে পারেন[client<hostname>]
যেমন[clientlocalhost]
মাইএসকিউএল সরঞ্জামগুলি এটি স্বয়ংক্রিয়ভাবে ব্যবহার করবে যাতে এটি আরও সহজ এবং নিরাপদ