کنترل دسترسی در سناریوی برونسپاری پایگاه داده
Download
Report
Transcript کنترل دسترسی در سناریوی برونسپاری پایگاه داده
لیال کریمی 90202194
درس امنیت پایگاه داده
بهار 1391
فهرست
2
سناریوی برونسپاری پایگاه داده
معماری DAS
مسئله مورد نظر
نیازمندی مدل اعمال کنترل دسترسی
رویکردهای مدل کنترل دسترسی
واگذاری اعمال کنترل دسترسی به کارگزار
تکنیک رمزنگاری مجدد
ساختار انشقاق کلید
سناریوی برونسپاری پایگاه داده
با افزایش حجم دادههای سازمانها ،برونسپاری پایگاه داده به یک
سرویس دهنده خارجی با استقبال روبرو شدهاست.
این استقبال تا جایی پیش رفتهاست که مفهوم پایگاه داده به عنوان سرویس
( )Database As a Service : DASمطرح شده است.
مزایای :DAS
کاهش هزینه نگهداری دادهها
حفاظت مؤثرتر از دادهها
افزایش دسترسیپذیری دادهها
3
معماری DAS
موجودیتها:
4
مالک دادهها :سازمانی که دادهها را تولید کرده و برای نگهداری در اختیار سرویسدهنده
قرار میدهد.
کاربر :موجودیتی که درخواست پرسوجو را به سیستم ارسال میکند.
کارخواه :موجودیتی که درخواست کاربر را به درخواست بر روی پایگاه داده نگهداری
شده بر روی سرویسدهنده تبدیل میکند.
کارگزار :سرویسدهندهای که دادهها را از مالک آنها دریافت کرده و آنها را قابل دسترس
میسازد.
مسئله
در سناریوی برونسپاری پایگاه داده ،دادههای حساس یک سازمان تحت
کنترل مستقیم مالک آنها نمیباشد.
بنابراین نیازمندیهای امنیتی زیر باید مورد توجه قرار گیرند:
محرمانگی دادهها
حفظ حریم خصوصی کاربران
صحت دادهها
احراز هویت کاربران
اعمال کنترل دسترسی
و ...
در روشهای ارائه شده برای اعمال کنترل دسترسی در سناریوی
برونسپاری پایگاه داده فرض بر این است که سرویسدهنده ،صادق اما
کنجکاو است.
5
مسئله(ادامه)
دادهها نهتنها باید از دسترسی غیرمجاز سرویسدهنده خارجی حفاظت
شوند ،بلکه کنترل دسترسی کاربران سازمان به آنها نیز باید مدیریت
شود.
در روشهای پیش رو ،سیاستهای کنترل دسترسی مالک دادهها توسط
یک ماتریس کنترل دسترسی مشخص میشود.
در این ماتریس سطرها نشاندهنده کاربران سیستم و ستونها نمایشدهنده
منابع سیستماند که در این سناریو همان تاپلهای پایگاه داده میباشند.
6
مسئله(ادامه)
در یک راهحل افراطی میتوان هر تاپل را با یک کلید رمز کرده و سپس این
کلید را در اختیار کلیه کاربرانی که مجوز دسترسی به آن تاپل را دارند ،قرار
داد.
چالش :مدیریت کلیدها
از طرف دیگر میتوان کلیه کاربران را بر اساس یکسان بودن مجوزهای
دسترسیشان گروهبندی کرده و به هر گروه یک کلید اختصاص داد .منابعی که
توسط اعضای یک گروه قابل دسترسیاند ،توسط کلید آن گروه رمز میشوند.
چالش :تغییر سیاستهای کنترل دسترسی
در پی تغییر سیاستهای کنترل دسترسی(به عنوان مثال حذف یک کاربر از
گروه) ،اقدامات زیر توسط مالک دادهها باید صورت گیرد:
7
کلید مختص این گروه تغییر یابد،
منابع قابل دسترس توسط اعضا گروه ،از سرویس دهنده دریافت شوند،
منابع توسط کلید جدید رمز شوند،
منابع رمز شده مجددا برای سرویسدهنده ارسال شوند.
نیازمندیهای مدل اعمال کنترل دسترسی
مناسب بودن تعداد کلیدهایی که به طور متوسط هر کاربر ملزم به
نگهداری از آنهاست.
مناسب بودن حجم عملیاتی که مالک دادهها به هنگام تغییر سیاستهای
کنترل دسترسی ملزم به انجام آنهاست.
درستی مدل ()soundness
هیچ کاربری نتواند تاپلهایی را رمزگشایی کند که مجوز دسترسی به آنها
را ندارد.
کامل بودن مدل ()completment
هر کاربر بتواند کلیه تاپلهایی که مجوز دسترسی به آنها دارد را،
رمزگشایی کند.
8
رویکردهای مدلهای کنترل دسترسی
مدلهای اعمال کنترل دسترسی در سناریوی برونسپاری پایگاه داده را با
توجه به برآورده کردن نیازمندیها میتوان به شکل زیر دستهبندی کرد:
مدلهایی که در آنها مالک دادهها سیاستهای کنترل دسترسی را در اختیار
سرویسدهنده قرار داده و اعمال کنترل دسترسی را به وی واگذار میکند.
مدلهایی که با استفاده از تکنیک رمزنگاری مجدد ،سعی در کاهش حجم
عملیات الزم در هنگام به روز رسانی سیاستهای کنترل دسترسی دارند.
مدلهایی که با استفاده از تکنیک انشقاق کلید ،سعی در کاهش متوسط تعداد
کلیدهایی دارند که کاربران ملزم به نگهداری از آنها میباشند.
9
واگذاری اعمال کنترل دسترسی به
کارگزار
مدلمبتنیبرزیرساختکلیدعمومی][DAI10
مالک تمامی تاپلها را توسط کلید K0رمزکرده و برای نگهداری به
سرویسدهنده ارسال میکند.
کلید K0در اختیار کلیه کابران قرار میگیرد.
مالک ماتریس کنترل دسترسی را در اختیار سرویسدهنده قرار میدهد.
کاربری که قصد اجرای یک پرسوجو را دارد ،به همراه پرسوجوی
خود گواهی کلید عمومیاش را نیز برای سرویسدهنده ارسال میکند.
کارگزا
ر
ACM
کاربر
10
مالک
مدل مبتنی بر زیرساخت کلید عمومی
سرویسدهنده با استفاده از گواهی کلید عمومی هویت کاربر را مورد بررسی
قرار میدهد.
سرویسدهنده با استفاده از ماتریس کنترل دسترسی مجوز دسترسی کاربر به
منبع درخواست شده را بررسی میکند.
چنانچه کاربر مجوز دسترسی به منابع درخواستی را داشته باشد ،یک کلید
جلسه ( )Ksتوسط سرویسدهنده تولید میشود.
کلید جلسه توسط کلید عمومی کاربر( )Kpuرمز شده و برای وی ارسال میشود.
نتایج پرسوجو توسط کلید جلسه رمز شده و برای کاربر ارسال میشوند.
کارگزا
ر
11
کاربر
مدل مبتنی بر زیرساخت کلید
عمومی(ادامه)
کاربر با استفاده از کلید خصوصی خود کلید جلسه را رمزگشایی میکند و
با استفاده از کلید جلسه به نتایج جستجوی خود دست مییابد.
مزایا:
یک کاربر تنها ملزم به نگهداری از جفت کلید عمومی و خصوصی خود
است.
به هنگام به روز رسانی سیاستهای کنترل دسترسی تنها کافی است مالک
دادهها تغییرات ماتریس کنترل دسترسی را به سرویسدهنده اطالع دهد.
معایب:
در برخی کاربردها سیاستهای کنترل دسترسی نیز محرمانه بوده و
سرویسدهنده برای در اختیار داشتن آنها قابل اعتماد نیست.
12
تکنیک رمزنگاری مجدد
در مدلهای مبتنی بر رمزنگاری مجدد رمزگذاری دادهها ،رمزگشایی
آنها و یا هر دو این موارد در دو الیه صورت میگیرد.
رمزنگاری در الیه اول توسط مالک دادهها و در الیه دوم توسط
سرویسدهنده انجام میشود.
مدل ] [LAN07این تکنیک را با رمزگشایی دو الیهای دادهها مورد
استفاده قرار دادهاست.
13
مدل رمزگشایی دو الیه
در این مدل مالک برای هر گروه از کاربران یک کلید رمزگذاری ()Ke
و یک کلید رمزگشایی متناظر با آن ( )Kdرا تولید میکند که این کلیدها
تنها در اختیار مالک دادهها میباشد.
کلیه تاپلهایی که اعضا گروه مجوز دسترسی به آن را دارند توسط Ke
رمز میشوند.
با استفاده از کلید رمزگشایی Kdدو زیر کلید Kd1و Kd2به گونهای
انتخاب میشوند که :
مالک زیرکلید Kd1را برای هر یک از اعضای گروه ارسال میکند.
مالک زیرکلید Kd2را به عنوان کلید رمز گروه مربوطه ،برای
سرویسدهنده ارسال میکند.
14
مدل رمزگشایی دو
الیه(ادامه)
با هر پرسوجوی کاربر ،نتایج جستجو ابتدا توسط سرویسدهنده و با
استفاده از زیرکلید گروه مربوطه ( )Kd2رمزگشایی میشوند و نتیجه
حاصل از رمزگشایی برای کاربر ارسال میگردد.
کاربر عبارت ارسال شده توسط سرویسدهنده را با استفاده از زیر کلید
Kd1رمزگشایی کرده و به منبع مورد نظر دست مییابد.
15
مدل رمزگشایی دو
الیه(ادامه)
مزایا
در هنگام به روز رسانی سیاستهای کنترل دسترسی کافی است اقدامات
زیر توسط مالک صورت گیرد:
هنگام اضافه شدن یک کاربر به یک گروه ،کافی است زیرکلید kd1برای وی
ارسال شود.
هنگام حذف شدن یک کاربر از یک گروه کافی است دو زیر کلید Kd1و Kd2مجددا
تولید شده و زیرکلید kd1برای کاربران و زیرکلید Kd2برای سرویسدهنده ارسال
گردد.
معایب
در این مدل برای تعداد کلیدهایی که هر کاربر ملزم به نگهداری از آنهاست
و همچنین تعداد کلیدهایی که سرویسدهنده باید مدیریت کند ،راهحلی در نظر
گرفته نشده است.
در به روزرسانیهای متوالی تعداد کلیدهایی که بای به کاربران ارسال شود،
سربار زیادی به مالک تحمیل میکند.
16
ساختار انشقاق کلید
در مدلهای مبتنی بر انشقاق کلید ،کلیدها در یک سلسله مراتب نگهداری
میشوند.
کلیدهای سطوح پایینتر بر اساس کلیدهای سطوح باالتر قابل محاسبهاند.
یک کاربر با داشتن کلید سطح باالتر ،میتواند کلیدهای مشتق شده از آن
در سطوح پایینتر را محاسبه کند.
در این مدلها با استفاده از ساختار انشقاق کلید ،تعداد کلیدهای مرتبط با
هر کاربر کاهش چشمگیری مییابد.
یکی از توابعی که برای انشقاق میتواند مورد استفاده قرار گیرد ،تابع
رمز نگاری است ،به طوری که:
)) Ki = Ekj (name(nj
که در آن ) name(njنام متناظر با گره njرا بر میگرداند.
17
مدیریت کلید با استفاده از ساختار انشقاق
مدلپیشنهادیدر ]:[DAM05
در این مدل ابتدا یک گراف سلسله مراتب کاربران تولید میشود که در آن
گرهها تمام زیرمجموعههای مجموعه کاربران اند.
بین یک گره در سطح باالتر و گرهای در سطح پایینتر درصورتی یک یال
وجود دارد که مجموعه متناظر با گره اول زیر مجموعهی مجموعه متناظر با
گره دوم باشد.
18
مدیریت کلید با استفاده از ساختار
انشقاق(ادامه)
متناظر با هر گره گراف یک کلید در نظر گرفته میشود.
هر کاربر کلیدهای متناظر با گرههایی مانند vرا دریافت میکند که:
هر تاپل توسط کلید گره متناظر با مجموعه لیست کنترل دسترسی آن رمز
میشود.
19
مدیریت کلید با استفاده از ساختار انشقاق
(ادامه)
مزایا:
در ساختار گراف انشقاق ،یک کاربر تنها کافی است یک کلید را نگهداری
کند.
سایر کلیدهای مورد نیاز کاربر از طریق انشقاق به دست میآیند.
معایب:
با تغییر سیاستهای کنترل دسترسی ،لیست کنترل دسترسی متناظر با یک یا
چند تاپل تغییر میکند.
این تاپلها باید توسط کلیدهای جدیدی رمز شوند.
مالک دادهها باید تاپلهای مذکور را از سرویسدهنده دریافت ،رمزگشایی
کرده ،آنها را توسط کلید جدید رمز و مجددا برای سرویسدهنده ارسال کند.
20
منابع
J. Dai, “A PKI-based mechanism for secure and efficient access to outsourced data,”
Networking and Digital Society (ICNDS), 2010.
A. Lanovenko, “Dynamic Group Key Management in Outsourced Databases,”
Proceedings of the World Congress on, 2007.
E. Damiani, S. di Vimercati, S. Foresti, S. Jajodia, S. Paraboschi, and P. Samarati, “Key
management for multi-user encrypted databases,” in Proceedings of the 2005 ACM
workshop on Storage security and survivability, pp. 74–83, 2005.
E. Damiani, S. De Capitani di Vimercati, S. Foresti, S. Jajodia, S. Paraboschi, and P.
Samarati, “Selective data encryption in outsourced dynamic environments,”
Electronic Notes in Theoretical Computer Science, vol. 168, pp. 127–142, 2007.
S. D. Capitani, S. Foresti, D. T. I. Università, C. G. Mason, S. Paraboschi, and D.
Università, “Over-encryption : Management of Access Control Evolution on
Outsourced Data,” Access, pp. 123-134, 2007.
21