
پروژه دانشجویی مقاله امنیت پایگاه داده تحت word دارای 96 صفحه می باشد و دارای تنظیمات و فهرست کامل در microsoft word می باشد و آماده پرینت یا چاپ است
فایل ورد پروژه دانشجویی مقاله امنیت پایگاه داده تحت word کاملا فرمت بندی و تنظیم شده در استاندارد دانشگاه و مراکز دولتی می باشد.
این پروژه توسط مرکز مرکز پروژه های دانشجویی آماده و تنظیم شده است
توجه : توضیحات زیر بخشی از متن اصلی می باشد که بدون قالب و فرمت بندی کپی شده است
بخشی از فهرست مطالب پروژه پروژه دانشجویی مقاله امنیت پایگاه داده تحت word
فصل 1 کلیات
فصل 2 امنیت کلاسیک
2-1 مقدمه
2-2 امنیت پایگاه داده
2-3 تهدید امنیت در پایگاه داده
2-4 کنترل امنیت پایگاه داده
2-4-1 کنترل انتشار
2-4-2 کنترل استنباط
2-4-3 کنترل دسترسی
2-4-3-1 ارتباط کنترل دسترسی با سایر سرویسهای امنیتی
2-4-3-2 ماتریس دسترسی
2-4-3-3 سیاستهای کنترل دسترسی
2-4-3-3-1 سیاست تشخیص
2-4-3-3-2 سیاست اجباری
2-4-3-3-3 سیاست مبتنی بر نقش
2-5 مدیریت تفویض اختیار
2-6 جمعبندی
فصل سوم بررسی امنیت در نرم افزار SQLServer
3-1 مقدمه
3-2 هویت شناسی
3-2-1 مد هویت شناسی ویندوزی (WAM)
3-2-2 مد ترکیبی (MM)
3-3 Logins
3-3-1 Loginهای ویندوز و کاربران پایگاهداده
3-3-1-1 ایجاد گروه در ویندوز
3-3-1-2 ارتباط گروههای ویندوز با کاربران SQLServer با استفاده از GUI
3-3-1-3 ارتباط گروههای ویندوز با کاربران SQLServer با استفاده از کدهای T-SQL
3-3-2 Loginهای سرویس دهنده و کاربران پایگاهداده
3-3-2-1 ایجاد Login در سطح سرویس دهنده با استفاده از GUI
3-3-2-2 ایجاد Login در سطح سرویس دهنده با استفاده از کد T-SQL
3-3-3 Sa Login
3-4 کنترل دسترسی(Access Control)
3-5 نقشها
3-5-1 نقشهای ثابت سرویس دهنده (FSR)
3-5-2 نقشهای پایگاهدادهای (DBR)
3-5-3 نقشهای برنامهای (APR)
3-6 شِما
3-7 Principal
3-8 Securable
3-9 Permission
3-10 رمز نگاری
3-10-1 رمزنگاری با استفاده از کلمه عبور کاربر
3-10-2 رمزنگاری کلید متقارن
3-10-3 رمزنگاری کلید نامتقارن
3-10-4 رمزنگاری با استفاده از گواهینامه
3-11 جمع بندی
فصل چهارم طراحی سیستم پرسنلی
4-1 مقدمه
4-2 UseCase
4-2-1 شرح UseCase
4-3 نمودار توالی
4-4 Class Diagram
4-5 واژهنامه دادهای
فصل پنجم معرفی نرم افزار و بررسی موانع هنگام برنامه نویسی
5-1 مقدمه
5-2 رشته ارتباط
5-3 ارتباط برنامه با نقش برنامهای(APR)
5-4 معرفی فرم پرسنل
5-5 رمز نمودن اطلاعات
5-6 کار با استثناها
5-7 جمع بندی
فصل ششم نتیجهگیری و راهکارهای آینده
منابع و ماخذ
بخشی از منابع و مراجع پروژه پروژه دانشجویی مقاله امنیت پایگاه داده تحت word
1Robin Dewson , “Beginning SQL Server 2005 for Developers From Novice to Professional” , Apress , year
2.Rajesh George and Lance Delano ,” SQL Server 2005 Express edition STARTER KIT”, Wiley ,year
3.Ravi s.Sandhu and Pierangela Samarati , “Access control principle and practice” , IEEE communication magazin , year
4.Andrew Watt, “Microsoft SQL Server 2005 FOR DUMMIES”, WILEY ,
5.Bob Beauchemin , Niels Berglund and Dan Sullivan , “A First Look at SQL Server 2005 for Developers” , Addison – Wesley , year
6.Thomas Rizzo, Adam Machanic,Julian Skinner , Louis Davidson,Robin Dewson, Jan Narkiewicz , Joseph Sack and Rob Walters , ” Pro SQL Server 2005″, Apress, year
7.Stephen Dranger, Robert H. Sloan , and Jon A. Solworth / “The Complexity of Discretionary Access Control”/
8.Jonathan D. Moffett, “Specification of Management Policies and Discretionary Access Control”,
9.Fort George G.Meade and Patrick R. Gallagher , “A GUIDE TO UNDERSTANDING DISCRETIONARY ACCESS CONTROL IN TRUSTED SYSTEMS” , National Computer Security Center , year
10Principal ,Microsoft SQLServer2005 Books Online/DataBase Engin / Database Engin Concept / Security Considerations for Databases and Database Applications / Principal , Microsoft Corporation , last visit September
11.Securable Microsoft SQLServer2005 Books Online/DataBase Engin / Database Engin Concept / Security Considerations for Databases and Database Applications / Securable, Microsoft Corporation , last visit September
12.Permition ,Microsoft SQLServer2005 Books Online/DataBase Engin / Database Engin Concept / Security Considerations for Databases and Database Applications /Permition Securable, Microsoft Corporation , last visit September
13.Encryption , Microsoft SQLServer2005 Books Online/DataBase Engin / Database Engin Concept / Security Considerations for Databases and Database Applications / Encryption, Microsoft Corporation , last visit September
2-1 مقدمه
در محیط پایگاهداده ، برنامهها و کاربران مختلف سازمان به یک مجموعه اطلاعات واحد و یکپارچه در DBMS دسترسی دارند. مشکلاتی نظیر ناسازگاری و افزونگی دادهها که در سیستمهای گذشته نمایان بودند از بین رفته و در عوض مسأله تامین امنیت در پایگاهداده اهمیت بسیاری پیدا کرده است. تامین امنیت در محیط پایگاه داده یعنی شناسایی تهدیدهایی[1] که امنیت آن را به خطر میاندازند و همچنین انتخاب سیاستها و مکانیسمهای مناسب برای مقابله با آن. یکی از راههای مبارزه با تهدیدها ، کنترل دسترسی است. هدف کنترل دسترسی[2]، محدود کردن اعمال و فعالیتهایی است که کاربر مجاز ، میتواند بر روی سیستم کامپیوتری انجام دهد. کنترل دسترسی ، آنچه را که کاربر و یا برنامه تحت کنترل او میتواند انجام دهد را کنترل میکند. در این راستا ، کنترل دسترسی ، مانع از انجام فعالیتهایی میشود که امنیت سیستم را تهدید میکنند
در این فصل پس از بیان چند مفهوم پایه در رابطه با امنیت پایگاهداده ، به بررسی کنترل دسترسی و رابطه آن با سایر سرویسهای امنیتی از جمله سرویس هویت شناسی[3]، سرویس حسابرسی[4] و سرویس مدیریت[5] میپردازیم. سپس ماتریس دسترسی[6] و چگونگی پیادهسازی آن در محیطهای کاربردی را بررسی میکنیم. در پایان به مطالعه سیاستهای کنترل دسترسی و مختصری درباره چگونگی مدیریت آنها میپردازد
2-2 امنیت پایگاه داده
امنیت اطلاعات در پایگاهداده دارای سه بخش اصلی است
محرمانگی[7] : تضمین محرمانگی اطلاعات شامل جلوگیری از فاش شدن غیر مجاز اطلاعات و شناسایی و تحذیر عوامل آن میباشد
صحت[8] : تضمین صحت اطلاعات شامل جلوگیری از تغییر غیر مجاز اطلاعات و شناسایی وتحذیر عوامل آن میباشد
دسترس پذیری : تضمین در دسترس پذیری اطلاعات شامل جلوگیری از رد غیر مجاز دسترسی به سرویسهای ارائه شده توسط سیستم و شناسایی و تحذیر عوامل آن میباشد
2-3 تهدید امنیت در پایگاه داده
در اینجا لازم است تا تعریف مناسبی از تهدید در پایگاهداده ارائه شود. تهدید به معنی تجاوز تصادفی ، یا عمدی و برنامهریزی شده به پایگاهداده ، به منظور فاشسازی و یا تغییر اطلاعات مدیریت شده توسط سیستم میباشد. تجاوز به پایگاهداده و تهدید امنیت آن شامل خواندن ، تغییر و حذف غیر مجاز و نادرست اطلاعات میباشد. عوامل ایجاد کننده تجاوز در پایگاهداده تهدید نامیده میشوند. نتایج تجاوز به پایگاهداده مختصرا در ذیل آورده شده است
انتشار نامناسب اطلاعات[9] : خواندن عمدی و یا غیر عمدی اطلاعات توسط کاربر غیر مجاز که موجب انتشار غیر مجاز اطلاعات میشود
تغییر نامناسب داده[10] : تغییر نامناسب داده شامل تمام تجاوزهایی میشود که صحت داده را به خطر میاندازند
عدم پذیرش سرویسها : عدم پذیرش سرویسها شامل تمام اعمالی است که مانع دسترسی کاربر به دادهها و یا استفاده از منابع میشود
2-4 کنترل امنیت پایگاه داده
امنیت پایگاهداده از طریق کنترل انتشار[11] ، کنترل استنباط[12] و کنترل دسترسی[13] اعمال میشود که به بررسی آنها میپردازیم
2-4-1 کنترل انتشار
کنترل انتشار ، انتقال اطلاعات میان منابع را کنترل میکند. یک انتشار میان منابع X و Y هنگامیرخ میدهد که اطلاعاتی از X خوانده شده و در Y نوشته شود. کنترل انتشار ، از انتقال دادههای موجود در منابع سطح بالا به منابع سطح پایین جلوگیری میکند
2-4-2 کنترل استنباط
منظور از استنباط یعنی دستیابی به اطلاعات محرمانه از روی دادههای غیر محرمانه است. مسأله استنباط از دادهها بیشتر در پایگاهدادههای آماری اتفاق میافتد. در این نوع پایگاهدادهها کاربر باید از بازگشت به عقب و نتیجهگیری از روی دادههای آماری بر حذر داشته شود. به عنوان مثال فرض کنید کاربری طی یک پرس و جو[14] متوسط حقوق کارمندان زن را در سازمان رویت کند. سپس این کاربر، تعداد کارمندان زن را در سازمان مورد پرس و جو قرار میدهد. اگر نتیجه بدست آمده از آخرین پرس و جو عدد یک باشد ، این کاربر قادر خواهد بود حقوق این کارمند زن را استنباط کند
2-4-3 کنترل دسترسی
مسئولیت کنترل دسترسی در قبال دادههای موجود در سیستم این است که تمام دسترسیهای مستقیم به منابع سیستم منحصرا بر اساس مدها و قانونهای تعیین شده توسط سیاستهای امنیتی[15] انجام پذیرد. در یک سیستم کنترل دسترسی(شکل 2-1) ، درخواستکننده[16] (کاربر ، فرایند) به منابع[17] (داده ، برنامه) از طریق اعمالی نظیر خواندن ، نوشتن و یا اجرا دسترسی پیدا میکند
شکل 2-1 : سیستم کنترل دسترسی
از لحاظ عملکرد این سیستم از دو قسمت تشکیل شده است
سیاستهای امنیتی: سیاستهای امنیتی سیستم ، راهبردهایی هستند که با طراحی امنیت سیستم و مدیریت اختیارهای افراد در سیستم ، مرتبط هستند. این سیاستها بیانگر اصولی[18] هستند که بر اساس آنها دسترسی ، اعطا[19] و یا رد[20] میشوند. قوانین دسترسی[21] بیانگر سیاستهای امنیتی هستند و رفتار سیستم را در زمان اجرا مشخص میکنند
سوالی که در اینجا مطرح است این است که چه مقدار از اطلاعات باید در دسترس هر درخواستکننده باشد؟ برای پاسخ به این سوال به بررسی محدودیتهای دسترسی[22] و دو سیاست پایه میپردازیم
سیاست کمترین اختیار[23] : بر اساس این سیاست به درخواستکنندهگان سیستم کمترین مقدار اطلاعاتی را که برای انجام فعالیتهای آنها مورد نیاز است ، در اختیار آنها میگذارند. در این سیاست فرض بر این است که امکان تعریف این حد پایین وجود دارد(در اکثر مواقع این کار با دشواریهای بسیاری همراه است). ایراد این سیاست این است که ممکن است منجر به محدودیتهای بزرگ برای بعضی از درخواستکنندهگان شده و مانع فعالیت آنها شود
سیاست بیشترین اختیار[24] : این سیاست برای محیطهایی مانند دانشگاهها و مراکز تحقیقاتی که محافظت از دادهها اهمیت چندانی ندارد مناسب است. در این محیطها کاربران قابل اعتماد هستند و در ضمن دادهها باید بین افراد رد و بدل شوند. پس غالبا افراد به بیشتر دادههای مورد نیاز خود دسترسی دارند
از نظر کنترل دسترسی سیستمها به دو دسته تقسیم میشوند : سیستمهای باز و سیستمهای بسته
در یک سیستم بسته[25] فقط دسترسیهایی معتبر هستند که صریحا به درخواستکننده اعطا شده باشند. در یک سیستم باز[26] دسترسیهایی معتبر هستند که صریحا ممنوع شناخته نشده باشند. بر اساس سیاستهای یک سیستم بسته برای هر درخواستکننده باید قانونهای دسترسی که بیانگر سطح دسترسی درخواستکننده به منابع سیستم است ، وجود داشته باشند. این سطوح دسترسی معیّن شده برای هر درخواستکننده تنها حقوقی[27] هستند که در اختیار وی قرار دارند. بر اساس سیاستهای یک سیستم باز برای هر درخواستکننده باید قانونهای دسترسی وجود داشته باشند که بیانگر دسترسی غیر مجاز برای درخواستکننده هستند. این دسترسیهای غیر مجاز تنها حقوقی هستند که از وی سلب شدهاست
سیستمهای باز و بسته در انحصار متقابل[28] با یکدیگر هستند. تصمیم گیری برای انتخاب یک استراتژی امنیتی ، بر اساس نیازهای پایگاهداده ، کاربران ، برنامهها و سازمان گرفته میشود. یک سیستم بسته سیاست کمترین اختیار و سیستم باز سیاست بیشترین اختیار را اعمال میکند. حفاظت در سیستم بسته ، قوی تر است زیرا اشتباه در تعریف قوانین دسترسی ممکن است مانع از یک دسترسی مجاز شود ولی باعث خرابی نمیشود در صورتی که در یک سیستم باز چنین اشتباهی ممکن است منجر به دسترسی غیر مجاز و نتیجتا خرابی شود. همانطور که گفته شد انتخاب یکی از این دو سیستم به شرایط بستگی دارد. در محیطهایی که اعطای دسترسی بیشتر از ممنوعیت دسترسی است ، مدیریت سیستمهای بسته دشوار است و بهتر است از سیستم باز استفاده شود. در شکلهای 1-2 و 1-3 کنترل دسترسی در سیستمهای باز و بسته نشان داده شده اند
شکل 2-2 : کنترل دسترسی در سیستم بسته
اعطا و بازپس گیری اختیارات تنها به عهده یک مدیر نیست. بعضی مواقع مدیریت تفویض اختیار باید بصورت غیر متمرکز و توسط افراد مختلفی انجام شود. در سیستمهای توزیع شده که از چندین سیستم محلی تشکیل شدهاند مدیریت باید بصورت غیر متمرکز اعمال شود
شکل 2-3 : کنترل دسترسی در سیستم باز
2-4-3-1 ارتباط کنترل دسترسی با سایر سرویسهای امنیتی
کنترل دسترسی به سایر سرویسهای امنیت متکی است و با آنها نوعی همزیستی دارد. وظیفه کنترل دسترسی محدود کردن فعالیتهای کاربر مجاز[29] میباشد و بوسیله ناظر مرجع[30] شروع به کار میکند. ناظر مرجع بصورت یک واسط در بین سیستم و کاربر قرار میگیرد و هر تلاش برای دسترسی کاربر و یا برنامه تحت فرمان او به منابع سیستم ، باید از سد ناظر منابع عبور کند. این ناظر برای تشخیص اینکه آیا کاربر مورد نظر مجاز به انجام فعالیتی میباشد یا خیر ، با یک پایگاه داده تفویض اختیار[31] مشاوره میکند. این پایگاه دادهها ، بوسیله یک مدیر امنیت[32] ، مدیریت و نگهداری میشود. مدیر امنیت ، این اختیارات را براساس سیاستهای موجود در سازمان ، در اختیار افراد مختلف قرار میدهد. البته کاربران ، قادر به تغییر قسمتی از این پایگاه داده هستند ، برای مثال آنها میتوانند در مورد فایلهای شخصی خود ، اختیارات مرتبط با سایر کاربران را تغییر دهند. شکل 2-4 ، یک تصویر منطقی از سرویسهای امنیت و ارتباط آنها با یکدیگر است. این تقسیمبندی سرویسها ، ممکن است تا حدی ایدهآل بنظر برسد و در بسیاری از سیستمها بگونهای که در شکل نشان داده شده است ، پیادهسازی نشود ولی هر چه مدل امنیت سیستم به این تقسیمبندی نزدیک شود ، امنیت سیستم بالا میرود
حال ، وقت آن فرا رسیده که به بیان تفاوتهای میان کنترل دسترسی و سرویس تعیین اعتبار بپردازیم. تعریف دقیق و درست اطلاعات کاربر ، وظیفه سرویس تعیین اعتبار است. کنترل دسترسی فرض میکند که سرویس تعیین اعتبار ، کار خود را بدرستی قبل از اجرایش توسط ناظر منابع انجام داده است. کارایی کنترل دسترسی ، به درستی تعیین هویت کاربر و همچنین به درستی تفویض اختیار بستگی دارد
دانستن این نکته ضروری است که کنترل دسترسی راه حل کاملی برای برقراری امنیت نیست و باید با سرویس حسابرس همراه باشد. سرویس حسابرس به بررسی و آنالیز تمامی فعالیتها و درخواستهای کاربر در سیستم میپردازد و تمامی آنها را برای بررسیهای آینده ثبت میکند
شکل 2-4 : کنترل دسترسی و سایر سرویسهای امنیتی
این سرویس از دو جنبه حائز اهمیت است. اول به عنوان بازدارنده (تمامی درخواستهای کاربران ثبت و آنالیز میشود و آنهارا از تخطی کردن مایوس میکند) و دوم با توجه به آنالیزهای انجام شده راهها و روزنههای نفوذ تشخیص داده میشوند. در واقع حسابرسی ، این اطمینان را به ما میدهد که کاربران از امتیازات و اختیارات خود سوء استفاده نکنند. توجه به این نکته ضروری است که کارایی سرویس حسابرس ، به کیفیت تعیین هویت بستگی دارد
2-4-3-2 ماتریس دسترسی
فعالیتها[33]، در یک سیستم بوسیل موجودیتهایی با عنوان درخواستکننده آغاز به کار می کنند. درخواستکنندهها کاربران و یا برنامه تحت فرمان کاربران میباشند.در واقع درخواستکنندهها آغازگر فعالیتها بر روی منابع میباشند. کاربران ممکن است با عناوین متفاوتی ، بسته به اینکه میخواهند از کدامیک از امتیازات[34] خود استفاده کنند ، به سیستم متصل شوند. به عنوان مثال ، کاربرانی که بر روی دو پروژ متفاوت فعالیت میکنند ، ممکن است برای کار بر روی هر یک از این پروژهها به سیستم متصل شوند. در این حالت دو درخواست کننده ، متناظر با این کاربر وجود دارد. درک تفاوت میان درخواستکنندهها و منابع بسیار ضروری و مهم است. درخواستکنندهها آغازگر فعالیتها بر روی منابع میباشند. این فعالیتها ، با تفویض اختیار به درخواستکنندهها ، داده میشوند. تفویض اختیار ، تحت عنوان حق دسترسی[35] و یا مد دسترسی[36] بیان میشود. مفهوم حق دسترسی به نوع منبع مورد نظر بستگی دارد. به عنوان مثال در فایلها حق دسترسی ، شامل خواندن ، نوشتن ، اجرا کردن و مالک بودن میباشد. مفهوم سه حق دسترسی اول مشخص میباشد. مالک بودن به این معنی میباشد که مالک قادر به تغییر دسترسیها میباشد
ماتریس دسترسی یک مدل مفهومی است که حق دسترسی هر درخواستکننده را به هر یک از منابع موجود در سیستم ، مشخص میکند. برای هر درخواستکننده یک سطر ، و یک ستون برای هر منبع در این ماتریس وجود دارد. هر سلول این ماتریس ، نشان دهنده این است که آیا درخواستکننده مورد نظر به منبع مورد نظر دسترسی دارد یا نه. شکل1-5 ماتریس دسترسی را نشان میدهد. وظیفه کنترل دسترسی این است که تنها به فعالیتهایی اجازه اجرا دهد که در ماتریس قید شدهاند. این عمل به کمک ناظر منابع که واسط بین درخواستکننده و منابع میباشد صورت میگیرد
Threat-[1]
[2]- access control
[3]- authentication
[4]- auditing
administration-[5]
access matrix-[6]
[7]- Secrecy
Integrity-[8]
Improper release of information-[9]
Improper modification of data-[10]
Flow control-[11]
Inference control-[12]
Access control-[13]
Query-[14]
Security policies-[15]
Subject-[16]
Object-[17]
Principle-[18]
Grant-[19]
Revoke-[20]
Access rules-[21]
Access limitation-[22]
Minimum privilege policy-[23]
Maximum privilege policy-[24]
Closed system-[25]
Open system-[26]
Rights-[27]
Mutual exclusion -[28]
legitimate-[29]
reference monitor-[30]
[31]- authorization data base
Security administrator-[32]
[33]- activity
privilege-[34]
Access right-[35]
Access mode-[36]
