عنوان :
تعداد صفحات : ۹۶
نوع فایل : ورد و قابل ویرایش
امنیت یکی از مهمترین مساله دنیا و تکنولوژی روز است. این مساله به قدری حیاتی است که اگر برآورده نشود جامعه صدمات زیادی را متحمل میشود. متاسفانه در کشور ایران به مساله امنیت بهای کمی داده میشود. بسیاری از برنامههای کامپیوتری که توسط شرکتهای نرم افزاری تهیه میشود ، از درجه امنیت پایینی برخوردار هستند. این برنامهها پس از تزریق به بازار تجاری پس از مدتی به علت مشکلات امنیتی که دارند اغلب از رده خارج میشوند و در ضمن شرکتها و سازمانهای دیگر را دچار مشکل میکنند.
بنابراین در فصل اول در ابتدا موضوع امنیت را بصورت کلاسیک بررسی کنیم. آشنایی با مفاهیمی همچون تهدید ، صحت داده و انتشار داده ، ما را در شناخت مدلهای امنیت یاری میکند. تامین امنیت در پایگاه داده با شناسایی تهدید آغاز میشود. از دیگر واژههای مهم در این موضوع کنترل دسترسی است. هدف کنترل دسترسی محدود کردن فعالیتهایی است که کاربر مجاز میتواند بر روی سیستمهای کامپیوتری انجام دهد. کنترل دسترسی شامل سیاستهای مختلفی است. سیاستهای تشخیص ، اجباری و مبتنی بر نقش از آن جمله هستند. این سیاستها هر یک با اعمال محدودیتی خاص دسترسی کاربر را محدودتر میکنند و در تناقض با یکدیگر نیستند ،به عبارت دیگر جهت حرکت همه آنها یکی است.
امنیت کلاسیک را در فصل ۲ بررسی می کنیم. سپس به بررسی امنیت در نرم افزار SQLServer2005 میپردازیم. رنگ امنیت کلاسیک در تمامی مولفههای امنیتی SQLServer2005 به چشم میخورد. در این فصل با مفاهیمی همچون مدل هویت شناسی و تفویض اختیار در SQLServer2005 آشنا می شویم. انواع کنترل دسترسی ، انواع نقش ها ، شما و بسیاری دیگر از واژهها و مفاهیم را در فصل ۳ بررسی میکنیم. رمز نگاری که در نسخه SQLServer2000 نبوده به SQLServer2005 اضافه شده و این نرم افزار را از لحاظ امنیت بسیار پرقدرت ساخته است. در واقع در فصل ۳ مدل امنیتی SQLServer2005 به طور کامل بررسی شده است. در فصل ۴ یک محیط عملی طراحی و پیاده سازی شده است. در فصل ۵ بامشکلاتی که در حین پیاده سازی چنین سیستمی با آن مواجه هستیم را بررسی میکنیم. اهمیت این پایان نامه از این جهت است که تعداد بسیار کمی از افراد متخصص این موضوع را در SQLServer2005 بررسی کرده و آن را بصورت عملی پیاده سازی کردهاند. بسیاری از سیستمهای طراحی شده از لحاظ امنیتی ناکارامد هستند و مکانیزمهای امنیتی به کار رفته در این سیستمها دارای نواقص و کمبودهای بسیاری است.
واژه های کلیدی: امنیت، تهدید ، صحت داده ، انتشار داده، کنترل دسترسی ، نقش ها
فصل ۱ کلیات ۳
فصل ۲ امنیت کلاسیک ۶
۲-۱ مقدمه ۶
۲-۲ امنیت پایگاه داده ۷
۲-۳ تهدید امنیت در پایگاه داده ۷
۲-۴ کنترل امنیت پایگاه داده ۸
۲-۴-۱ کنترل انتشار ۸
۲-۴-۲ کنترل استنباط ۸
۲-۴-۳ کنترل دسترسی ۹
۲-۴-۳-۱ ارتباط کنترل دسترسی با سایر سرویسهای امنیتی ۱۲
۲-۴-۳-۲ ماتریس دسترسی ۱۴
۲-۴-۳-۳ سیاستهای کنترل دسترسی ۱۵
۲-۴-۳-۳-۱ سیاست تشخیص ۱۶
۲-۴-۳-۳-۲ سیاست اجباری ۱۸
۲-۴-۳-۳-۳ سیاست مبتنی بر نقش ۲۲
۲-۵ مدیریت تفویض اختیار ۲۴
۲-۶ جمعبندی ۲۵
فصل سوم بررسی امنیت در نرم افزار SQLServer2005 ۲۶
۳-۱ مقدمه ۲۶
۳-۲ هویت شناسی ۲۷
۳-۲-۱ مد هویت شناسی ویندوزی (WAM) ۲۷
۳-۲-۲ مد ترکیبی (MM) ۲۸
۳-۳ Logins ۳۰
۳-۳-۱ Loginهای ویندوز و کاربران پایگاهداده ۳۰
۳-۳-۱-۱ ایجاد گروه در ویندوز ۳۰
۳-۳-۱-۲ ارتباط گروههای ویندوز با کاربران SQLServer با استفاده از GUI ۳۲
۳-۳-۱-۳ ارتباط گروههای ویندوز با کاربران SQLServer با استفاده از کدهای T-SQL ۳۶
۳-۳-۲ Loginهای سرویس دهنده و کاربران پایگاهداده ۳۸
۳-۳-۲-۱ ایجاد Login در سطح سرویس دهنده با استفاده از GUI ۳۸
۳-۳-۲-۲ ایجاد Login در سطح سرویس دهنده با استفاده از کد T-SQL ۴۰
۳-۳-۳ Sa Login ۴۰
۳-۴ کنترل دسترسی(Access Control) ۴۱
۳-۵ نقشها ۴۲
۳-۵-۱ نقشهای ثابت سرویس دهنده (FSR) ۴۲
۳-۵-۲ نقشهای پایگاهدادهای (DBR) ۴۴
۳-۵-۳ نقشهای برنامهای (APR) ۵۰
۳-۶ شِما ۵۳
۳-۷ Principal ۵۵
۳-۸ Securable ۵۶
۳-۹ Permission ۵۷
۳-۱۰ رمز نگاری ۶۰
۳-۱۰-۱ رمزنگاری با استفاده از کلمه عبور کاربر ۶۱
۳-۱۰-۲ رمزنگاری کلید متقارن ۶۲
۳-۱۰-۳ رمزنگاری کلید نامتقارن ۶۳
۳-۱۰-۴ رمزنگاری با استفاده از گواهینامه ۶۴
۳-۱۱ جمع بندی ۶۶
فصل چهارم طراحی سیستم پرسنلی ۶۷
۴-۱ مقدمه ۶۷
۴-۲ UseCase ۶۸
۴-۲-۱ شرح UseCase ۶۸
۴-۳ نمودار توالی ۷۰
۴-۴ Class Diagram ۷۴
۴-۵ واژهنامه دادهای ۷۴
فصل پنجم معرفی نرم افزار و بررسی موانع هنگام برنامه نویسی ۷۶
۵-۱ مقدمه ۷۶
۵-۲ رشته ارتباط ۷۷
۵-۳ ارتباط برنامه با نقش برنامهای(APR) ۷۸
۵-۴ معرفی فرم پرسنل ۸۳
۵-۵ رمز نمودن اطلاعات ۸۷
۵-۶ کار با استثناها ۸۸
۵-۷ جمع بندی ۹۲
فصل ششم نتیجهگیری و راهکارهای آینده ۹۳
منابع و ماخذ ۹۵
Robin Dewson , “Beginning SQL Server 2005 for Developers From Novice to Professional” , Apress , year 2006
Rajesh George and Lance Delano ,” SQL Server 2005 Express edition STARTER KIT”, Wiley ,year 2005
Ravi s.Sandhu and Pierangela Samarati , “Access control principle and practice” , IEEE communication magazin , year 1994
Andrew Watt, “Microsoft SQL Server 2005 FOR DUMMIES”, WILEY , 2006
Bob Beauchemin , Niels Berglund and Dan Sullivan , “A First Look at SQL Server 2005 for Developers” , Addison – Wesley , year 2005
Thomas Rizzo, Adam Machanic,Julian Skinner , Louis Davidson,Robin Dewson, Jan Narkiewicz , Joseph Sack and Rob Walters , ” Pro SQL Server 2005″, Apress, year ۲۰۰۶
Stephen Dranger, Robert H. Sloan , and Jon A. Solworth / “The Complexity of Discretionary Access Control”/ 2004
Jonathan D. Moffett, “Specification of Management Policies and Discretionary Access Control”, 2002
Fort George G.Meade and Patrick R. Gallagher , “A GUIDE TO UNDERSTANDING DISCRETIONARY ACCESS CONTROL IN TRUSTED SYSTEMS” , National Computer Security Center , year 1987
Principal ,Microsoft SQLServer2005 Books Online/DataBase Engin / Database Engin Concept / Security Considerations for Databases and Database Applications / Principal , Microsoft Corporation , last visit September 2007
Securable Microsoft SQLServer2005 Books Online/DataBase Engin / Database Engin Concept / Security Considerations for Databases and Database Applications / Securable, Microsoft Corporation , last visit September 2007
Permition ,Microsoft SQLServer2005 Books Online/DataBase Engin / Database Engin Concept / Security Considerations for Databases and Database Applications /Permition Securable, Microsoft Corporation , last visit September 2007Encryption , Microsoft SQLServer2005 Books Online/DataBase Engin / Database Engin Concept / Security Considerations for Databases and Database Applications / Encryption, Microsoft Corporation , last visit September 2007
امنیت اطلاعات یکی از مهمترین مفاهیم ،از آغاز زندگی بشر تاکنون بوده است. انسانهای ادوار گذشته از اهمیت این موضوع مطلع بودند و بسیاری از شکستهای انسانهای گذشته در جنگها فاش شدن اطلاعات مهم و سری بوده است. در ضمن آنها اطلاعات حساس را به رمز تبدیل کرده و برای رد و بدل کردن این اطلاعات از زبان رمزی استفاده میکردند.
با پیشرفت علم و جوامع بشری اهمیت این موضوع بیش از پیش آشکار شده و فاش شدن اطلاعات نظامی و یا سیاسی ممکن است منجر به نابودی یک جامعه بیانجامد. سرقتهای میلیاردی که گاها از بانکها میشود مثالی دیگر از اهمیت این موضوع است.
برای امن کردن جامعه مدرن باید از امکانات مدرن نیز استفاده شود زیرا سارقان اطلاعات از امکانات پیشرفته برای دستیابی به اطلاعات استفاده میکنند. در این پایان نامه به بررسی امنیت در محیط پایگاه داده میپردازیم. این محیط بر مشکلاتی نظیر افزونگی داده و ناسازگاری داده که در سیستم فایل مشکل ساز بوده ، فائق آمده و با به اشتراک گذاشتن دادهها ، امکان استفاده بیشتر از اطلاعات را مهیْا ساخته است. در این محیط امکان مدیریت تعداد زیادی کاربر تعبیه شده است. کاربر زیاد مساوی است با درد سر زیاد ! ممکن است کاربری عمدی یا غیر عمدی به داده های محرمانه دست یابد و سیستم را مختل سازد. برای تامین امنیت در چنین محیطهایی که همواره با پیچیدگیهای زیادی نیز برخوردار است لازم است در ابتدا موضوع امنیت را بصورت کلاسیک بررسی کنیم. آشنایی با مفاهیمی همچون تهدید ، صحت داده و انتشار داده ، ما را در شناخت مدلهای امنیت یاری میکند. تامین امنیت در پایگاه داده با شناسایی تهدید آغاز میشود. از دیگر واژههای مهم در این موضوع کنترل دسترسی است. هدف کنترل دسترسی محدود کردن فعالیتهایی است که کاربر مجاز میتواند بر روی سیستمهای کامپیوتری انجام دهد. کنترل دسترسی شامل سیاستهای مختلفی است. سیاستهای تشخیص ، اجباری و مبتنی بر نقش از آن جمله هستند. این سیاستها هر یک با اعمال محدودیتی خاص دسترسی کاربر را محدودتر میکنند و در تناقض با یکدیگر نیستند ،به عبارت دیگر جهت حرکت همه آنها یکی است.
امنیت کلاسیک را در فصل ۲ بررسی می کنیم. سپس به بررسی امنیت در نرم افزار SQLServer2005 میپردازیم. رنگ امنیت کلاسیک در تمامی مولفههای امنیتی SQLServer2005 به چشم میخورد. در این فصل با مفاهیمی همچون مدل هویت شناسی و تفویض اختیار در SQLServer2005 آشنا می شویم. انواع کنترل دسترسی ، انواع نقش ها ، شما و بسیاری دیگر از واژهها و مفاهیم را در فصل ۳ بررسی میکنیم. رمز نگاری که در نسخه SQLServer2000 نبوده به SQLServer2005 اضافه شده و این نرم افزار را از لحاظ امنیت بسیار پرقدرت ساخته است. در واقع در فصل ۳ مدل امنیتی SQLServer2005 به طور کامل بررسی شده است. در فصل ۴ یک محیط عملی طراحی و پیاده سازی شده است. در فصل ۵ بامشکلاتی که در حین پیاده سازی چنین سیستمی با آن مواجه هستیم را بررسی میکنیم. اهمیت این پایان نامه از این جهت است که تعداد بسیار کمی از افراد متخصص این موضوع را در SQLServer2005 بررسی کرده و آن را بصورت عملی پیاده سازی کردهاند. بسیاری از سیستمهای طراحی شده از لحاظ امنیتی ناکارامد هستند و مکانیزمهای امنیتی به کار رفته در این سیستمها دارای نواقص و کمبودهای بسیاری است.
در محیط پایگاهداده ، برنامهها و کاربران مختلف سازمان به یک مجموعه اطلاعات واحد و یکپارچه در DBMS دسترسی دارند. مشکلاتی نظیر ناسازگاری و افزونگی دادهها که در سیستمهای گذشته نمایان بودند از بین رفته و در عوض مسأله تامین امنیت در پایگاهداده اهمیت بسیاری پیدا کرده است. تامین امنیت در محیط پایگاه داده یعنی شناسایی تهدیدهایی[۱] که امنیت آن را به خطر میاندازند و همچنین انتخاب سیاستها و مکانیسمهای مناسب برای مقابله با آن. یکی از راههای مبارزه با تهدیدها ، کنترل دسترسی است. هدف کنترل دسترسی[۲]، محدود کردن اعمال و فعالیتهایی است که کاربر مجاز ، میتواند بر روی سیستم کامپیوتری انجام دهد. کنترل دسترسی ، آنچه را که کاربر و یا برنامه تحت کنترل او میتواند انجام دهد را کنترل میکند. در این راستا ، کنترل دسترسی ، مانع از انجام فعالیتهایی میشود که امنیت سیستم را تهدید میکنند.
در این فصل پس از بیان چند مفهوم پایه در رابطه با امنیت پایگاهداده ، به بررسی کنترل دسترسی و رابطه آن با سایر سرویسهای امنیتی از جمله سرویس هویت شناسی[۳]، سرویس حسابرسی[۴] و سرویس مدیریت[۵] میپردازیم. سپس ماتریس دسترسی[۶] و چگونگی پیادهسازی آن در محیطهای کاربردی را بررسی میکنیم. در پایان به مطالعه سیاستهای کنترل دسترسی و مختصری درباره چگونگی مدیریت آنها میپردازد.
امنیت اطلاعات در پایگاهداده دارای سه بخش اصلی است :
محرمانگی[۷] : تضمین محرمانگی اطلاعات شامل جلوگیری از فاش شدن غیر مجاز اطلاعات و شناسایی و تحذیر عوامل آن میباشد.
صحت[۸] : تضمین صحت اطلاعات شامل جلوگیری از تغییر غیر مجاز اطلاعات و شناسایی وتحذیر عوامل آن میباشد.
دسترس پذیری : تضمین در دسترس پذیری اطلاعات شامل جلوگیری از رد غیر مجاز دسترسی به سرویسهای ارائه شده توسط سیستم و شناسایی و تحذیر عوامل آن میباشد.
در اینجا لازم است تا تعریف مناسبی از تهدید در پایگاهداده ارائه شود. تهدید به معنی تجاوز تصادفی ، یا عمدی و برنامهریزی شده به پایگاهداده ، به منظور فاشسازی و یا تغییر اطلاعات مدیریت شده توسط سیستم میباشد. تجاوز به پایگاهداده و تهدید امنیت آن شامل خواندن ، تغییر و حذف غیر مجاز و نادرست اطلاعات میباشد. عوامل ایجاد کننده تجاوز در پایگاهداده تهدید نامیده میشوند. نتایج تجاوز به پایگاهداده مختصرا در ذیل آورده شده است :
انتشار نامناسب اطلاعات[۹] : خواندن عمدی و یا غیر عمدی اطلاعات توسط کاربر غیر مجاز که موجب انتشار غیر مجاز اطلاعات میشود.
تغییر نامناسب داده[۱۰] : تغییر نامناسب داده شامل تمام تجاوزهایی میشود که صحت داده را به خطر میاندازند.
عدم پذیرش سرویسها : عدم پذیرش سرویسها شامل تمام اعمالی است که مانع دسترسی کاربر به دادهها و یا استفاده از منابع میشود.
امنیت پایگاهداده از طریق کنترل انتشار[۱۱] ، کنترل استنباط[۱۲] و کنترل دسترسی[۱۳] اعمال میشود که به بررسی آنها میپردازیم :
کنترل انتشار ، انتقال اطلاعات میان منابع را کنترل میکند. یک انتشار میان منابع X و Y هنگامیرخ میدهد که اطلاعاتی از X خوانده شده و در Y نوشته شود. کنترل انتشار ، از انتقال دادههای موجود در منابع سطح بالا به منابع سطح پایین جلوگیری میکند.
منظور از استنباط یعنی دستیابی به اطلاعات محرمانه از روی دادههای غیر محرمانه است. مسأله استنباط از دادهها بیشتر در پایگاهدادههای آماری اتفاق میافتد. در این نوع پایگاهدادهها کاربر باید از بازگشت به عقب و نتیجهگیری از روی دادههای آماری بر حذر داشته شود. به عنوان مثال فرض کنید کاربری طی یک پرس و جو[۱۴] متوسط حقوق کارمندان زن را در سازمان رویت کند. سپس این کاربر، تعداد کارمندان زن را در سازمان مورد پرس و جو قرار میدهد. اگر نتیجه بدست آمده از آخرین پرس و جو عدد یک باشد ، این کاربر قادر خواهد بود حقوق این کارمند زن را استنباط کند.
مسئولیت کنترل دسترسی در قبال دادههای موجود در سیستم این است که تمام دسترسیهای مستقیم به منابع سیستم منحصرا بر اساس مدها و قانونهای تعیین شده توسط سیاستهای امنیتی[۱۵] انجام پذیرد. در یک سیستم کنترل دسترسی(شکل ۲-۱) ، درخواستکننده[۱۶] (کاربر ، فرایند) به منابع[۱۷] (داده ، برنامه) از طریق اعمالی نظیر خواندن ، نوشتن و یا اجرا دسترسی پیدا میکند.
از لحاظ عملکرد این سیستم از دو قسمت تشکیل شده است :
مجموعه ای از سیاستها و قانونها : اطلاعات ذخیره شده در سیستم بیانگر مد دسترسی میباشد که کاربر به هنگام دسترسی به منابع ملزم به پیروی از آنها است.
مجموعه ای از رویههای کنترلی (مکانیسمهای امنیت): این رویهها درخواست دسترسی را بر اساس قوانین یاد شده بررسی میکنند. درخواستها ممکن است مورد پذیرش ، رد و یا تغییر قرار گیرند و دادههای غیر مجاز سانسور شوند.
سیاستهای امنیتی: سیاستهای امنیتی سیستم ، راهبردهایی هستند که با طراحی امنیت سیستم و مدیریت اختیارهای افراد در سیستم ، مرتبط هستند. این سیاستها بیانگر اصولی[۱] هستند که بر اساس آنها دسترسی ، اعطا[۲] و یا رد[۳] میشوند. قوانین دسترسی[۴] بیانگر سیاستهای امنیتی هستند و رفتار سیستم را در زمان اجرا مشخص میکنند.
سوالی که در اینجا مطرح است این است که چه مقدار از اطلاعات باید در دسترس هر درخواستکننده باشد؟ برای پاسخ به این سوال به بررسی محدودیتهای دسترسی[۵] و دو سیاست پایه میپردازیم:
سیاست کمترین اختیار[۶] : بر اساس این سیاست به درخواستکنندهگان سیستم کمترین مقدار اطلاعاتی را که برای انجام فعالیتهای آنها مورد نیاز است ، در اختیار آنها میگذارند. در این سیاست فرض بر این است که امکان تعریف این حد پایین وجود دارد(در اکثر مواقع این کار با دشواریهای بسیاری همراه است). ایراد این سیاست این است که ممکن است منجر به محدودیتهای بزرگ برای بعضی از درخواستکنندهگان شده و مانع فعالیت آنها شود.
سیاست بیشترین اختیار[۷] : این سیاست برای محیطهایی مانند دانشگاهها و مراکز تحقیقاتی که محافظت از دادهها اهمیت چندانی ندارد مناسب است. در این محیطها کاربران قابل اعتماد هستند و در ضمن دادهها باید بین افراد رد و بدل شوند. پس غالبا افراد به بیشتر دادههای مورد نیاز خود دسترسی دارند.
از نظر کنترل دسترسی سیستمها به دو دسته تقسیم میشوند : سیستمهای باز و سیستمهای بسته.
در یک سیستم بسته[۸] فقط دسترسیهایی معتبر هستند که صریحا به درخواستکننده اعطا شده باشند. در یک سیستم باز[۹] دسترسیهایی معتبر هستند که صریحا ممنوع شناخته نشده باشند. بر اساس سیاستهای یک سیستم بسته برای هر درخواستکننده باید قانونهای دسترسی که بیانگر سطح دسترسی درخواستکننده به منابع سیستم است ، وجود داشته باشند. این سطوح دسترسی معیّن شده برای هر درخواستکننده تنها حقوقی[۱۰] هستند که در اختیار وی قرار دارند. بر اساس سیاستهای یک سیستم باز برای هر درخواستکننده باید قانونهای دسترسی وجود داشته باشند که بیانگر دسترسی غیر مجاز برای درخواستکننده هستند. این دسترسیهای غیر مجاز تنها حقوقی هستند که از وی سلب شدهاست.
سیستمهای باز و بسته در انحصار متقابل[۱۱] با یکدیگر هستند. تصمیم گیری برای انتخاب یک استراتژی امنیتی ، بر اساس نیازهای پایگاهداده ، کاربران ، برنامهها و سازمان گرفته میشود. یک سیستم بسته سیاست کمترین اختیار و سیستم باز سیاست بیشترین اختیار را اعمال میکند. حفاظت در سیستم بسته ، قوی تر است زیرا اشتباه در تعریف قوانین دسترسی ممکن است مانع از یک دسترسی مجاز شود ولی باعث خرابی نمیشود در صورتی که در یک سیستم باز چنین اشتباهی ممکن است منجر به دسترسی غیر مجاز و نتیجتا خرابی شود. همانطور که گفته شد انتخاب یکی از این دو سیستم به شرایط بستگی دارد. در محیطهایی که اعطای دسترسی بیشتر از ممنوعیت دسترسی است ، مدیریت سیستمهای بسته دشوار است و بهتر است از سیستم باز استفاده شود. در شکلهای ۱-۲ و ۱-۳ کنترل دسترسی در سیستمهای باز و بسته نشان داده شده اند.
Principle-[1]
Grant-[2]
Revoke-[3]
Access rules-[4]
Access limitation-[5]
Minimum privilege policy-[6]
Maximum privilege policy-[7]
Closed system-[8]
Open system-[9]
Rights-[10]
Mutual exclusion -[11]
Threat-[1]
[۲]– access control
[۳]– authentication
[۴]– auditing
administration-[5]
access matrix-[6]
[۷]– 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]
جهت دریافت و خرید متن کامل مقاله و تحقیق و پایان نامه مربوطه بر روی گزینه خرید انتهای هر تحقیق و پروژه کلیک نمائید و پس از وارد نمودن مشخصات خود به درگاه بانک متصل شده که از طریق کلیه کارت های عضو شتاب قادر به پرداخت می باشید و بلافاصله بعد از پرداخت آنلاین به صورت خودکار لینک دنلود مقاله و پایان نامه مربوطه فعال گردیده که قادر به دنلود فایل کامل آن می باشد .