استفاده از تکنولوژی Oracle Label Security ، به سازمانها اجازهی ادغام نمودن دادهها با طبقهبندیهای مختلف را، در یک پایگاه داده میدهد. دسترسی به دادهها، براساس طبقهبندی آنها و همچنین اجازه امنیتی از سوی کاربر برنامه کاربردی، قابل محدود شدن میباشد. این قابلیت قدرتمند امکان اجرای الزامات امنیتی Multi-level در دیتابیس اوراکل نسخهی Enterprise، شامل Oracle Exadata را فراهم میسازد.
طبقهبندی دادهها (Data Classification)
براساس مفاهیم MLS یا به عبارتی Multi-Level Security در وزارت دفاع ایالات متحده، Oracle Label Security، یک “برچسب داده (Data Label)” را به دادههای برنامه ی کاربردی اختصاص میدهد که باعث میگردد در یک جدول، دادههای حساس در کنار دادههایی با حساسیت کمتر قرار گیرند. Oracle Label Security با مقایسهی “برچسب داده” و برچسب اجازه امنیتی یک کاربر خاص، که درخواست دسترسی به داده ها را نموده است، کنترل امور را به دست میگیرد.
Data Labelها را میتوان بهصورت ستونهای مخفی، به جداول موجود ضمیمه نمود؛ این ستون های مخفی از طریق مداخله در دسترسی بر اساس برچسب داده و نه با برگرداندن برچسب دادهی حقیقی، در دستورات SQL به شفافیت برنامههای موجود کمک میکند. در روش دیگر، میتوان صراحتاً درخواست برچسب داده ارائه کرد اما فقط برای ردیفهایی که اختیارات برچسب به کاربر درخواستدهنده اجازه این کار را میدهد.
برچسبهای داده را میتوان به سه جزء تقسیم کرد که در زیر به بررسی آنها می پردازیم.
- اولین جزء “سطح سلسله مراتبی اجباری” یا به عبارتی Mandatory Hierarchical Level می باشد. مثالهای این «سطوح» عبارتند از Public، Confidential و Sensitive.
- جزء دوم اختیاری یا Optional می باشد و بهعنوان یک “کوپه” یا بخش (Compartment) شناخته میشود. چند کوپه یا بخش را میتوان به یک برچسب داده اختصاص داد و برای اجرای الزامات دسترسیهای اضافه، استفاده نمود. مثلاً برچسب دادهای که از حساب مشتریان خاص حفاظت میکند ممکن است حاوی کوپهی VIP باشد.
- سومین و آخرین جزء یک برچسب اختیاری است و به نام «گروه» شناخته میشود. نمونههای این گروهها عبارتند از سازمانها و قلمروهایی نظیر office of the CEO، AMERICAS و Europe.
برچسبهای کاربر (User Label) و مداخله در دسترسی (Access Mediation)
برچسب کاربر، شامل سطوح بیشینه و کمینه، کوپه ها و گروهها می باشد. هنگامی که یک کاربر اجازهی ورود به دیتابیس اوراکل را مییابد، Oracle Label Security برچسب کاربر را مقداردهی اولیه می نماید. در برنامههایی که از کاربران دیتابیس فیزیکی استفاده نمیکنند؛ Oracle Label Security، یک قابلیت داخلی Proxy تهیه مینماید، تا از طریق آن برنامه بتواند به Label Security در شناساندن کاربر واقعی کمک نماید. علاوه بر آن، Oracle Label Security کنترلهای اجرایی انعطافپذیری فراهم میکند و اجازه میدهد تا کنترل دسترسی تنها روی عملیاتهای خواندن، نوشتن و یا هردو اجرا گردد. هنگام مداخله در دسترسی، Oracle Label Security ابتدا سطح کاربر را با سطح اختصاص داده شده به برچسب داده مقایسه نموده و سپس به بررسی این مورد میپردازد که کاربر حداقل یکی از گروههای اختصاصیافته به برچسب داده را داشته باشد. در سومین مرحله، بررسی میکند که کاربر تمام کوپههای اختصاصیافته به برچسب داده را دارا باشد. به عنوان مثال، یک برچسب دادهی Sensitive:VIP:Eexecutive,CEO دسترسی کاربر به دادههای Sensitive، کوپهی VIP و یکی از گروههای Executive یا CEO را الزامی میکند.
اختصاص Data Label ها
Data Labelها شامل یک سطح سلسلهمراتبی، تعداد صفر یا بیشتر از کوپهها و تعداد صفر یا بیشتر از گروهها میباشد. قبل از ایجاد برچسب داده، اجزاء معتبرِ برچسب، تعریف و با استفاده از Oracle Enterprise Manager در دیکشنری دادههای Oracle ذخیره میشوند. برچسبهای داده را میتوان بهصورت خودکار و با استفاده از یک تابع برچسبزنی یا برچسب Session فعلی کاربر، به ردیفهای جدول اختصاص داد. توابع برچسبزنی یا Labeling Function ، محاسبهی برچسبهای داده براساس خصوصیات مختلف برنامهها را میسر مینمایند. برچسبها را میتوان با مشخص نمودن جدول حقیقی در دستورInsert با استفاده از Tag عددی یا تابع char_to_label اختصاص داد.Oracle Label Security جهتپایین آوردن سربار ذخیرهسازی، از یک Tag عددی برای بازنمایی برچسب داده روی هر ردیف استفاده مینماید. میتوان از تابع label_to_char جهت تبدیل Tag برچسب عددی به نسخهی اکسترنال و متنی آن نیز استفاده نمود.
مدیریتپذیری
مدیریت سیاستمحور، موجب مدیریت سادهی برچسبهای داده، برچسبهای کاربر، گزینههای اجرا و جداول تحت محافظت میشود. Policyهای Multiple Label Security میتوانند در یک دیتابیس قرار داشته باشند. Policyهای Oracle Label Security، برچسبهای داده، برچسبهای کاربر و جداول تحت محافظت را میتوان با استفاده از Oracle Enterprise Manager مدیریت نمود. یکپارچهسازی با Oracle Identity Management امکان مدیریت متمرکز Policyهای Oracle Label Security، برچسبهای داده وبرچسبهای کاربر در کل یک سازمان را فراهم مینماید.
قابلیتها و مزایای اصلی Label Security
- یکپارچهسازی ایمن و مطمئن دادهها با طبقهبندیهای مختلف
- معماری Policyمحور، که اجازهی همنشینی چند Policy در یک پایگاه داده را فراهم میسازد.
- کنترل منطقی دسترسی داخلی، نیاز به برنامهنویسی را از بین میبرد.
- استفاده از چندین تابع برچسب غیرمتعارف نظیر LUB یا Least Upper Bound و توابع ادغام برچسب
- ستونهای مخفی برای برچسبهای داده
- پشتیبانی از مدلهای برنامههای بزرگ کاربری با صدور مجوز Proxy
- کنترلهای اجرایی انعطافپذیر و Granular که امکان اعمال روی عملیاتهای READ, UPDATE, INSERT و DELETEرا فراهم میکنند.
- امکان Trusted Stored Procedures با اختصاص امتیازهایی نظیر FULL و READ
- پشتیبانی از حداکثر ۹۹۹۹ سطح، ۹۹۹۹ کوپه و ۹۹۹۹ گروه
- پشتیبانی از اختصاص مجوزِ برچسب به کاربران غیرپایگاه داده مانند کاربران برنامه، IPها و سایر عوامل
- یکپارچگی با Oracle Database Vault