افزایش امنیت در SQL با نوین هاست : در زمان کار با بانک های اطلاعاتی , خصوصا زمانی که متصل به اینترنت هستید یکی از موارد بسیار مهمی که باید بدانیم امنیت است .
حال قصد داریم در این جا چند مورد از موارد امنیتی را در هنگام کار با SQL بیان نماییم .
امنیت در SQL
در زمان کار با بانک های اطلاعاتی , خصوصا زمانی که متصل به اینترنت هستید یکی از موارد بسیار مهمی که باید بدانیم امنیت است .
حال قصد داریم در این جا چند مورد از موارد امنیتی را در هنگام کار با SQL بیان نماییم .
- فقط کامپوننت ها و network library هایی را که لازم است را نصب می کنیم .
- بعد از نصب از ابزار SQL server configuration manager , خوصوصیات و سرویس های غیر استفاده و غیر ضروری را غیر فعال می نماییم .
- حالت SQL Authentication نا امن تر از Windows Authentication است و توصیه می شود بیشتر , از Windows Authentication mode استفاده کنید و اگر به طور اجبار دست به استفاده از SQL Authentication کردید حتما از رمز عبور استفاده نمایید .
امنیت نام کاربری و رمز عبور SQL
موارد ذکر شده در زیر مواردی است که برای نام کاربری و رمز عبور مورد استفاده برای ما قرار می گیرد:
- رمزی که انتخاب می نماییم مرقوب تر است از حروف کوچک و بزرگ , سمبل ها , کاراکتر ها و اعداد باشد .
- از نام های کاربری که بیشتر در همه جا استفاده می شود مانند admin , administrator,… استفاده نکنید .
- برای انتخاب رمز سعی شود بیشتر از ۸ کاراکتر باشد .
- حال اگر از حالت SQL Authentication استفاده کردید سعی کنید از گواهینامه SSL معتبر استفاده نمایید .
- در نسخه ۲۰۰۵ از SQL Server زمانی که اکانت Sa بدون پسورد باشد , باید رمز عبور اکانت های Sa را با مد نظر گرفتن موارد بالا تنظیم کنیم .
نکته :
حال اگر از حالت Authentication mode استفاده شود به صورت پیش فرض Login sa غیر فعال است . اگر حالت Authentication انتخاب شده باشد و بعد از نصب به SQL server تغییر دهیم . اکانت sa غیر فعال می شود . و برای فعال کردن آن از روش دستی استفاده می کنیم .
- زمانی که می خواهید از کاربران غیر ویندوزی و یا برای برنامه های کاربردی Legacy باید از mixed mode Authentication استفاده نماییم. و برای امنیت بیشتر اکانت sa را تغییر نام می دهیم .
- قبل از اینکه اکانت sa تغییر نام دهید , جستجو کنید که اکانتی به SQL دسترسی دارد یا خیر .
- رمز عبور sa را به صورت زمان بندی شده با توجه به موارد ذکر شده تغییر دهید .
- پورت SQL به صورت پیش فرض ۱۴۴۳ می باشد و برای افراد سود جو و هکر ها شناخته شده است. و برای مقابله با هک شدن می بایست آن را تغییر دهید , موارد TCP dynamic , TCP port را پاک کنید ولی به IP all دست نزنید.
Instance های SQL را hidden نمایید. و یا SQL server browser را غیر فعال نمایید .
Buildin Administrator را حذف نمایید , به صورت زیر :
Stored Procedures را غیر فعال نمایید:
SQL server دارای Stored Procedure های گوناگون است. مانند xp_cmdshell orps_send_dbmail که تعامل با سیستم عامل دارد . این نوع از Stored Procedure ها ریسک های امنیتی را دارند زیرا که کد هایی خارج از SQL server اجرا می کنند .
در نسخه ۲۰۰۵ از SQL server گاهی می شود Stored Procedure در ابزار surface area configuration فعال می شود این مورد را در مسیر زیر می توانید فعال نمایید :
Start >> all program >> Microsoft SQL server 2055 >> configuration tools >> surface area configuration tool.
ویژگی های که در زیر ذکر شده باید غیر فعال بمانند :
Xp_cmdshell در صورت عدم نیاز غیر فعال کنیم .
- غیر فعال نمودن کامپوننت ها.
- غیر فعال نمودن procedure های مرتبط به ایمیل در مواردی که نیاز به ایمیل در SQL server ندارید .
نکته :
برخی از stored procedure ها را نمی توان با SQL server surface area مدیریت کرد. و باید به صورت مستقیم توسط the SQL server management studio (ssms) ویا sp_configure مدیریت شوند .
- کد گذاری و رمز گذاری اطلاعات بسیار مهم مانند شماره حساب بانکی , …. ذخیره شوند .
- دسترسی را محدود کردن در SQL server
- تعداد یوزر ها را محدود نمودن که نقش db_owner برای هر یک از Data base
- حذف یوزر های مهمان از همه data base ها به جز msdb , master , tempdb
NTFS FILE SYSTEM :
یک از مزایای این فایل سیستم امنیت فولدر ها وفایل ها می باشد. که امکان تایین کردن مجوز امنیت برای کار با فولدر و فایل ها ی مهم را فراهم کرده است .
Patching server :
ماکروسافت به صورت دوره های زمانی مشخص و منظم service pack ها را بروز رسانی می کند. سعی کنید که همیشه از آخرین نسخه این service pack ها استفاده نمایید زیرا که از نظر امنیتی نسخه های جدید بسیا قوی تر از قبل می شوند .
- بعد از نصب فایل های setup را نیز پاک کنید . این نوع فابل ها ممکن است در هنگام نصب اطلاعات مهم و تنظیمات را ذخیره نماید که منایب است بعد از نصب آن ها حذف شوند .
Audit : هدف از فعال کردن این قابلیت نظارت بر عملیات های در حال انجام است و وقایع توسط logfile انجام میگیرد و این امکان را میدهد که پیش بینی آسیب هایی که می تواند ایجاد شود را انجام دهد . حال ۴ سطح برای این قابلیت در نظر گرفته شده که سطح both failed and successful logins توصیه میشود .