امنیت در محیط پایگاه داده
توجه :
شما می توانید با خرید این محصول فایل " قلق های پایان نامه نویسی (از عنوان تا دفاع)" را به عنوان هدیه دریافت نمایید.
امنیت اطلاعات یکی از مهمترین مفاهیم ،از آغاز زندگی بشر تاکنون بوده است. انسانهای ادوار گذشته از اهمیت این موضوع مطلع بودند و بسیاری از شکستهای انسانهای گذشته در جنگها فاش شدن اطلاعات مهم و سری بوده است. در ضمن آنها اطلاعات حساس را به رمز تبدیل کرده و برای رد و بدل کردن این اطلاعات از زبان رمزی استفاده میکردند.
با پیشرفت علم و جوامع بشری اهمیت این موضوع بیش از پیش آشکار شده و فاش شدن اطلاعات نظامی و یا سیاسی ممکن است منجر به نابودی یک جامعه بیانجامد. سرقتهای میلیاردی که گاها از بانکها میشود مثالی دیگر از اهمیت این موضوع است.
برای امن کردن جامعه مدرن باید از امکانات مدرن نیز استفاده شود زیرا سارقان اطلاعات از امکانات پیشرفته برای دستیابی به اطلاعات استفاده میکنند. در این پایان نامه به بررسی امنیت در محیط پایگاه داده میپردازیم. این محیط بر مشکلاتی نظیر افزونگی داده و ناسازگاری داده که در سیستم فایل مشکل ساز بوده ، فائق آمده و با به اشتراک گذاشتن دادهها ، امکان استفاده بیشتر از اطلاعات را مهیْا ساخته است. در این محیط امکان مدیریت تعداد زیادی کاربر تعبیه شده است. کاربر زیاد مساوی است با درد سر زیاد ! ممکن است کاربری عمدی یا غیر عمدی به داده های محرمانه دست یابد و سیستم را مختل سازد. برای تامین امنیت در چنین محیطهایی که همواره با پیچیدگیهای زیادی نیز برخوردار است لازم است در ابتدا موضوع امنیت را بصورت کلاسیک بررسی کنیم. آشنایی با مفاهیمی همچون تهدید ، صحت داده و انتشار داده ، ما را در شناخت مدلهای امنیت یاری میکند. تامین امنیت در پایگاه داده با شناسایی تهدید آغاز میشود. از دیگر واژههای مهم در این موضوع کنترل دسترسی است. هدف کنترل دسترسی محدود کردن فعالیتهایی است که کاربر مجاز میتواند بر روی سیستمهای کامپیوتری انجام دهد. کنترل دسترسی شامل سیاستهای مختلفی است. سیاستهای تشخیص ، اجباری و مبتنی بر نقش از آن جمله هستند. این سیاستها هر یک با اعمال محدودیتی خاص دسترسی کاربر را محدودتر میکنند و در تناقض با یکدیگر نیستند ،به عبارت دیگر جهت حرکت همه آنها یکی است.
امنیت کلاسیک را در فصل 2 بررسی می کنیم. سپس به بررسی امنیت در نرم افزار SQLServer2005 میپردازیم. رنگ امنیت کلاسیک در تمامی مولفههای امنیتی SQLServer2005 به چشم میخورد. در این فصل با مفاهیمی همچون مدل هویت شناسی و تفویض اختیار در SQLServer2005 آشنا می شویم. انواع کنترل دسترسی ، انواع نقش ها ، شما و بسیاری دیگر از واژهها و مفاهیم را در فصل 3 بررسی میکنیم. رمز نگاری که در نسخه SQLServer2000 نبوده به SQLServer2005 اضافه شده و این نرم افزار را از لحاظ امنیت بسیار پرقدرت ساخته است. در واقع در فصل 3 مدل امنیتی SQLServer2005 به طور کامل بررسی شده است. در فصل 4 یک محیط عملی طراحی و پیاده سازی شده است. در فصل 5 بامشکلاتی که در حین پیاده سازی چنین سیستمی با آن مواجه هستیم را بررسی میکنیم. اهمیت این پایان نامه از این جهت است که تعداد بسیار کمی از افراد متخصص این موضوع را در SQLServer2005 بررسی کرده و آن را بصورت عملی پیاده سازی کردهاند. بسیاری از سیستمهای طراحی شده از لحاظ امنیتی ناکارامد هستند و مکانیزمهای امنیتی به کار رفته در این سیستمها دارای نواقص و کمبودهای بسیاری است.
فهرست مطالب
فصل 1 کلیات.. 3
فصل 2 امنیت کلاسیک... 6
2-1 مقدمه. 6
2-2 امنیت پایگاه داده 7
2-3 تهدید امنیت در پایگاه داده 7
2-4 کنترل امنیت پایگاه داده 8
2-4-1 کنترل انتشار. 8
2-4-2 کنترل استنباط.. 8
2-4-3 کنترل دسترسی.. 9
2-4-3-1 ارتباط کنترل دسترسی با سایر سرویسهای امنیتی.. 12
2-4-3-2 ماتریس دسترسی.. 14
2-4-3-3 سیاستهای کنترل دسترسی.. 15
2-4-3-3-1 سیاست تشخیص.... 16
2-4-3-3-2 سیاست اجباری.. 18
2-4-3-3-3 سیاست مبتنی بر نقش... 22
2-5 مدیریت تفویض اختیار. 24
2-6 جمعبندی.. 25
فصل سوم بررسی امنیت در نرم افزار SQLServer2005. 26
3-1 مقدمه. 26
3-2 هویت شناسی.. 27
3-2-1 مد هویت شناسی ویندوزی (WAM) 27
3-2-2 مد ترکیبی (MM) 28
3-3 Logins. 30
3-3-1 Loginهای ویندوز و کاربران پایگاهداده 30
3-3-1-1 ایجاد گروه در ویندوز. 30
3-3-1-2 ارتباط گروههای ویندوز با کاربران SQLServer با استفاده از GUI 32
3-3-1-3 ارتباط گروههای ویندوز با کاربران SQLServer با استفاده از کدهای T-SQL. 36
3-3-2 Loginهای سرویس دهنده و کاربران پایگاهداده 38
3-3-2-1 ایجاد Login در سطح سرویس دهنده با استفاده از GUI 38
3-3-2-2 ایجاد Login در سطح سرویس دهنده با استفاده از کد T-SQL. 40
3-3-3 Sa Login. 40
3-4 کنترل دسترسی(Access Control) 41
3-5 نقشها 42
3-5-1 نقشهای ثابت سرویس دهنده (FSR) 42
3-5-2 نقشهای پایگاهدادهای (DBR) 44
3-5-3 نقشهای برنامهای (APR) 50
3-6 شِما 53
3-7 Principal 55
3-8 Securable. 56
3-9 Permission. 57
3-10 رمز نگاری.. 60
3-10-1 رمزنگاری با استفاده از کلمه عبور کاربر. 61
3-10-2 رمزنگاری کلید متقارن. 62
3-10-3 رمزنگاری کلید نامتقارن. 63
3-10-4 رمزنگاری با استفاده از گواهینامه. 64
3-11 جمع بندی.. 66
فصل چهارم طراحی سیستم پرسنلی.. 67
4-1 مقدمه. 67
4-2 UseCase. 68
4-2-1 شرح UseCase. 68
4-3 نمودار توالی.. 70
4-4 Class Diagram.. 74
4-5 واژهنامه دادهای.. 74
فصل پنجم معرفی نرم افزار و بررسی موانع هنگام برنامه نویسی.. 76
5-1 مقدمه. 76
5-2 رشته ارتباط.. 77
5-3 ارتباط برنامه با نقش برنامهای(APR) 78
5-4 معرفی فرم پرسنل. 83
5-5 رمز نمودن اطلاعات.. 87
5-6 کار با استثناها 88
5-7 جمع بندی.. 92
فصل ششم نتیجهگیری و راهکارهای آینده 93
منابع و ماخذ. 95