احراز هویت (Authentication) و مجوز دسترسی (Authorization )
در بسیاری از نرم افزارها به منظور افزایش و ارتقا امنیت، از دو مفهوم احراز هویت (Authentication) و مجوز (Authorization) استفاده می شود. به همین دلیل داشتن آگاهی نسبت به این دو مفهوم و دانستن تفاوت های آنها دارای اهمیت است.
احراز هویت و مجوز (تعریف سطح دسترسی) دو فرآیند حیاتی امنیت اطلاعات هستند که مدیران از آنها برای محافظت از سیستم ها و اطلاعات استفاده می کنند. در فرایند "احراز هویت" به بررسی هویت یک کاربر یا سرویس پرداخته شده، و سپس میزان دسترسی کسانی که هویتشان تایید شده است با استفاده از فرایند "مجوز " مشخص می شود. برای درک بهتر این موضوع می توان صفحه ورود به پنل کاربری را به عنوان بخشی از فرایند احراز هویت در نظر گرفت، و تعیین آنکه کدام کاربر می تواند به کدام قسمت های پنل دسترسی داشته باشد، نمونه ای از فرایند "مجوز" است. به عنوان مثال در یک وبسایت، نویسنده ها ممکن است تنها به بخش مقالات و پشتیبانی ها تنها به بخش پرسش و پاسخ دسترسی داشته باشند، در حالی که ادمین به همه بخش ها دسترسی خواهد داشت. این مفاهیم را می توان در تمامی نرم افزارهای مرتبط با بانک های اطلاعاتی مشاهده نمود. پس در ابتدا می بایست که یک شناخت کلی نسبت به اینگونه نرم افزارها بدست آوریم.
نرم افزارهای عمومی بانک اطلاعاتی ماکروسافت مانند Access و Excel تفاوت های ساختاری با نرم افزار هایی تخصصی تر از قبیل SQL Qerver ,My SQL و Oracle دارند که در عملکرد آنها بسیار موثر است. نرم افزارهای عمومی بانک اطلاعاتی ماکروسافت از نوع data file یا به تعبیری data bank هستند، در حالی که این تعریف در نرم افزارهای تخصصی پایگاه داده تحت عنوان data base شناخته می شود.
نرم افزارهای عمومی بانک اطلاعاتی ماکروسافت، ساختاری مشابه با یک فایل را دارا بوده که در آن از یک Databank Engine یا موتور پایگاه بانک jet که مخصوص خود ماکروسافت است، استفاده شده است. این موتور مانند یک موجودیت بیرونی عمل کرده و کار مدیریت پایگاه داده را در بانک های اطلاعاتی ماکروسافت انجام می دهد.
اما در نرم افزارهای تخصصی پایگاه داده، با مدیریت پایگاه داده در سطحی وسیع تر و تحت عنوان DBMS یا همان Management System Database مواجه هستیم. به عبارتی دیگر در اینگونه نرم افزارها، موتور پایگاه داده یا Database Engine به کار رفته است که در آن ابتدا کوئری وارد شده parse می شود و سپس این موتور تشخیص می دهد که این کوئری نیازمند به ارتباط با کدامیک از جداول موجود در پایگاه داده است. محیط موتور پایگاه داده برای اینگونه نرم افزارها از ساختاری پیچیده تر و سه لایه برخوردار است که می توان این ساختار را به صورت شماتیک در شکل زیر مشاهده نمود.

لایه فایل
هنگامی که توسعه دهنده یک پایگاه داده ایجاد کند، بلافاصله برای آن یک سری فایل در سیستم ایجاد خواهد شد که به آن Data File گفته می شود. به طور معمول، هنگامی که با پایگاه های داده با ابعادی کوچک مواجه هستیم، یک Data File برای هر پایگاه داده کفایت می کند. اما با افزایش حجم یک پایگاه داده، داشتن چندین Data File برای آن پایگاه داده کاملا طبیعی است که به آنها Table Space گفته می شود. تمام این فرایندها حتی روند ساخت Table Space ها نیز به صورت خودکار توسط موتور پایگاه داده انجام می گردد. به عنوان مثال، یک پایگاه داده که در ابتدا در یک Table Space قرار داشت، اکنون می تواند به حدی گسترده شود که حتی یک جدول آن به تنهایی چند Table Space را به خود اختصاص دهد.
لایه اجرا کننده
لایه امنیت