PDA

View Full Version : شروع اعمال امنیت در sql



Fahime_FM
شنبه 27 آبان 1391, 08:14 صبح
سلام دوستان
من قبلا db های زیادی ساختم اما تا حالا تو بحث امنیت کار نکردم
من می خوام در db که ساختم امنیت رو اعمال کنم از کجا باید شروع کنم؟ممنون میشم کمکم کنید.

baktash.n81@gmail.com
شنبه 27 آبان 1391, 10:56 صبح
فکر کنم بهترین کار اینکه اول سئوال درستی بپرسید ... یعنی شما چه توقعی از امنیت در SQL دارید ... ؟ بعد از این که امنیت رو روی بانک پیاده سازی کردید (بقول شما البته ...) بانک شما دارای چه ویژگی خواهد شد ؟!

Fahime_FM
پنج شنبه 02 آذر 1391, 15:17 عصر
با سلام
من می خوام در بانکم کنترل login ها و دسترسی های کاربران رو داشته باشم
براب داده هام سطح دسترسی تعریف کنم
به طور کلی discretionary access control و mandatory access control
در ضمن علاوه بر امنیت اگه تو زمینه های زیر هم به من کمک کنید ممنون میشم
log گیری
تعریف transaction(تراکنش)
همزمانی (cuncurrency)

KhabatA
پنج شنبه 22 فروردین 1392, 22:48 عصر
با سلام.
من میخام بدونم که
دلیل اینکه میگن اعتبار سنجی Sql Server Authentication، از لحاظ امنیتی خوب نیس چیه؟

در این روش اعتبار سنجی باید یوزر و پسورد در رشته اتصال ذکر بشه.و اگر کسی بخاد میتونه با استفاده از نرم افزارهای کرک برنامه پایگاه داده ما را دی اسمبل کنه و به راحتی یوزر و پسورد ما را پیدا کنه.

آیا دلیلش همینه؟ نمیشه یوزر و پسورد رو از توی یه فایل DLL خوند یا از روشهایی مثل hash استفاده کرد. تا اطمینان بالا بره؟ آیا با استفاده از رمز گذاری یوزر و پسورد بازهم میشه اونو کرک کرد؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟

حمیدرضاصادقیان
جمعه 23 فروردین 1392, 01:13 صبح
سلام
بحث اینه که وقتی به وسیله Windows Authentication اعتبارسنجی بشه شما هم از Domain Control ، کاربر مورد نظر رو محدود میکنید هم اینکه میتونید کل دسترسی هاشو ار SQL server ببندید.
ولی در SQL Server هرچقدر پسورد قوی باشه و امنیت بالایی باشه، کاربر اگر دسترسی Administrator Local خودش رو داشته باشه و SQl server نیز روی سیستم خودش باشه میتونه سرویس رو Stop کنه و داده ها رو منتقل کنه.

KhabatA
شنبه 24 فروردین 1392, 22:18 عصر
سلام دوستان
من قبلا db های زیادی ساختم اما تا حالا تو بحث امنیت کار نکردم
من می خوام در db که ساختم امنیت رو اعمال کنم از کجا باید شروع کنم؟ممنون میشم کمکم کنید.


اول در زمینه اعمال امنیت در اس کیوال سرور یه کم مطالعه کن. بهتره اول با Management studio شروع کنی و در این محیط گرافیکی اعمال امنیت رو یاد بگیری. و یوزر ها و نقش ها رو بسازی. تو اینترنت متاسفانه من نتونستم کتاب خوبی گیر بیارم ولی با سرچ کردن عباراتی مث How to create login in Management studio و امثال آن میتونی اطلاعات خوبی بدس بیاری. پک های مولتی مدیای آموزشی هم هس البته زیاد بحث امنیتو بخوبی پوشش نمیدن ولی برای شروع بد نیست. مث پک SQl اینیاک.

در محیط Management studio برای شروع یک دیتا بیس ایجاد کن .در پوشه security مربوط به محیط Management studio بصورت پیش فرض ، Builtin Administrator قرار دارد اگه قبلا حذفش نکردی. وجود Builtin Administratorیعنی اینکه هر اکانت ویندوزی که از نوع ادمینستراتور باشه میتونه به SQL وصل بشه. حال ویندوزت را لوگاف کن و تو یه اکانت از نوع ادمین برو.بعد یه پروژه جدید بساز و به بانکت وصل شود بدون ذکر کردن یوزر و پسورد در رشته اتصال. میبینی که میتونی به بانکت وصل بشی.

حال این پروژه رو ببند و در قسمت کنترل پانل و User Account ، اکانت Guest را فعال کن و ویندوزت رو با اسفاده از اکانت Guest بیار بالا.
یه پروژه مث پروژه قبلیت بساز و به بانک متصل شو.میبینی که دسترسی مجاز نیست. (اکانت Guest بصورت پیش فرص نمیتونه به SQL دسترسی داشته باشه مگر اینکه قبلا مجوز دسترسیشو فعال کرده باشی.

Mehdi Naderi
سه شنبه 27 فروردین 1392, 01:56 صبح
بحث اینه که وقتی به وسیله Windows Authentication اعتبارسنجی بشه شما هم از Domain Control ، کاربر مورد نظر رو محدود میکنید هم اینکه میتونید کل دسترسی هاشو ار SQL server ببندید.
ولی در SQL Server هرچقدر پسورد قوی باشه و امنیت بالایی باشه، کاربر اگر دسترسی Administrator Local خودش رو داشته باشه و SQl server نیز روی سیستم خودش باشه میتونه سرویس رو Stop کنه و داده ها رو منتقل کنه
منظور شما اینه که در اعتبارسنجی Windows Authentication امنیت بیشتری برقراره؟
اگر دیتابیس روی سرور باشه کدام روش بهتره؟
با تشکر

حمیدرضاصادقیان
سه شنبه 27 فروردین 1392, 06:51 صبح
بله ، به صورت Windows authentication شما از امنیت بیشتری برخوردار هستید.
برای اطلاعات بیشتر اینجا (http://msdn.microsoft.com/en-us/library/ms144284.aspx) رو ببینید.