در قسمت اول از مقالهی ایمن نگاه داشتن دادهها در SQL Server 2016 به معرفی این سیستمِ مدیریت دیتابیس و حوزههای امنیتی آن پرداخته شد و بیان گردید که این ویژگیها به چندین لایهی محافظتی قابل تقسیمبندی هستند، همچنین لایهی حفاظت از برنامه کاربردی داده مورد بررسی قرار گرفت. در بخش دوم از این مقاله به لایهی حفاظت از شبکهی داده پرداخته میشود.
حفاظت از شبکهی داده در SQL Server 2016
حفاظت از شبکهی دادهها، روی ارتباط ایمن بین دیتابیس و Clientها متمرکز است. ویندوز علاوه بر قابلیتهای امنیتی SQL Server، ویژگیهای امنیتی که کنترل دسترسی را مدیریت مینمایند، نیز فراهم میآورد؛ این ویژگیها تکمیل کنندهی فرایند رمزگذاری داده و مانیتورینگ SQL Server میباشند. تنظیمات فایروال ویندوز به مدیران شبکه این توانایی را میدهد که شرایط لازم برای اتصال به یک Instance سرور را تعیین کنند. احراز هویت ویندوزی در SQL Server کنترل دسترسی متمرکزی را با Active Directory فراهم مینماید و علاوه بر آن SSL/TLS نیز اتصالات به SQL Server را ایمن میسازد. در واقع ممیزی SQL Server، Access Attemptها را Log میکند و میتوان آن را گسترش دهد تا فعالیتهای بیشتری را نیز بررسی نماید.
به عنوان مثال فرودگاهی را در نظر بگیرید که باید دارای اتصال مداوم به دادههای In-Motion و At-Rest باشد تا از امنیت مسافران و عملیاتهای هوایی اطمینان حاصل شود. حفاظت از شبکهی داده در اینجا امری ضروری است، زیرا باید کاربران خاصی بتوانند به Logها دسترسی پیدا کنند و دادههای حساس مورد بررسی و ممیزی قرار بگیرد، درحالیکه در مقابل تهدیدات از دادهها محافظت گردد. از آنجایی که با وجود تعداد زیاد هواپیماهایی که در هر روز در حال سفر هستند، دادهها به طور دائم درحال تغییر میباشند، شبکه و دادههایی که تولید میکند باید دارای اتصالی قدرتمند و احراز هویت مورد تأیید باشند.
SQL Server 2016 ویژگیهای حفاظت از شبکهی دادهی متفاوتی را فراهم مینماید که به صورت In-Motion بر روی اتصال (احراز هویت، فایروال) و محافظت از دادهها متمرکز است. مدیران شبکه میتوانند فایروال ویندوز را طوری پیکربندی کنند که توانایی دسترسی به SQL Server بصورت امن ایجاد گردد. در این سناریو، مدیران سیستم میتوانند Subnetها، IP Rangeها و یا آدرسهای IP خاصی را مشخص نمایند تا تنها برای دسترسی موتور دیتابیس، به پورت TCP مشخصی دسترسی داشته باشند.
مدیران دیتابیس میتوانند با استفاده از احراز هویت ویندوزی توسط موجودیتهای ایجاد شده در Active Directory به دیتابیس مربوطه دسترسی یابند. Active Directory امکان استفاده از پروتکل امنیتی Kerberos را به همراه Policyهای رمز عبور اضافی که با احراز هویت SQL Server در دسترس نیستند، فراهم مینماید و همچنین احراز هویت مبتنی بر Token را بین Clientها و داده فراهم میکنند. با احراز هویت Active Directory، سازمانها میتوانند به طور مرکزی هویتهای کاربران دیتابیس و دیگر خدمات مایکروسافت را مدیریت نمایند. مدیریت ID مرکزی، مکانی واحد را برای مدیریت کاربران دیتابیس فراهم کرده و مدیریت Permissionها را تسهیل مینماید. این ویژگی جایگزینی برای احراز هویت SQL Server است و به متوقف کردن فرآیند تکثیر موجودیت کاربر بر روی سرورهای دیتابیس که متعلق به یک سازمان هستند، کمک مینماید.
همچنین مدیران IT میتوانند با مشخص کردن یک Certificate ، اتصالهای رمزگذاری شدهای را برای یک Instance مختص به SQL Server فعال نمایند. کامپیوتر سرور باید دارای یک Certificate باشد و ماشین Client باید طوری تنظیم شده باشد تا به Certificate Root Authority مرتبط شود. SQL Server 2016 از TLS 1.2، جدیدترین پروتکل رمزنگاری (Cryptographic)، برای امنیت ارتباطی Endpoint پشتیبانی مینماید.
با استفاده از ویژگی Always Encrypted، داده هم در حالت At-Rest یا به عبارتی داده های غیرفعال مانند داده های دیتابیسی که به صورت فیزیکی ذخیره شده است و هم In-Motion تحت محافظت قرار میگیرد. این امر باعث میشود که داده در مقابل ادمینهای متِخلف، مهاجمانی که از فایل پشتیبانگیری سوءاستفاده میکنند و همچنین حملات Man-In-The-Middle، در امان باشد. درایوری که قابلیت Always Encrypted را داشته باشد و روی سیستم Client نصب شده و با رمزگذاری و رمزگشایی خودکار دادههای حساس، در برنامهی کاربردی مربوط به SQL Server در سمت کلاینت به این سطح از ایمنی دست مییابند. درایور مربوطه، دادهها را در ستونهای حساس رمزگذاری کرده و سپس دادهها را به SQL Server ارجاع میدهد و به طور خودکار Queryها را بازنویسی مینماید تا مفاهیم برنامه حفظ شوند. به همین شکل، درایور دادههایی را که در ستونهای دیتابیس رمزگذاری شده و در نتایج Query موجود هستند، به طور Transparent رمزگشایی مینماید.
علاوه بر موارد فوق، ممیزی یک Instance از دیتابیس SQL Server یا دیتابیسی مجزا، باعث میشود که اتفاقاتی از قبلی تلاشهای ناموفق برای اتصال به دیتابیس ردیابی و Log شود.
حفاظت از دادهها با احراز هویت AD از امنیت داده، تنظیمات فایروال، ارتباطات رمزگذاری شده و مانیتورینگ فعال و آیندهنگرانه از طریق ممیزی، اطمینان حاصل میکند. SQL Server 2016 از جدیدترین پروتکل رمزگذاری TLS پشتیبانی کرده و در تعامل با مدیریت متمرکز موجودیت های Active Directory کار میکند. بررسی سرور میتوانند به مدیران در مورد تلاشهای بالقوه برای نفوذ به امنیت دیتابیس هشدار دهند و در نتیجه به آنها توانایی حل و فصل تهدیدات در زمان مناسب را بدهند.
ـــــــــــــــــــــــــــــــــــــــــــــ
بررسی امنیت دادهها در SQL Server 2016 – قسمت اول
بررسی امنیت دادهها در SQL Server 2016 – قسمت دوم
بررسی امنیت دادهها در SQL Server 2016 – قسمت سوم
بررسی امنیت دادهها در SQL Server 2016 – قسمت چهارم (پایانی)