خانه SQL Server اعمال گواهینامه SSL روی SQL Server SQL Server امنیت SQL Server نوشته شده توسط: تیم فنی نیک آموز تاریخ انتشار: ۰۳ شهریور ۱۴۰۳ آخرین بروزرسانی: ۰۳ شهریور ۱۴۰۳ زمان مطالعه: 12 دقیقه ۵ (۱) تنظیم SSL بر روی دیتابیسهای عملیاتی یکی از مسائل مهمی است که برای تامین امنیت ارتباط SQL Server با کلاینتها باید در نظر بگیرید. مایکروسافت در نسخههای جدید SQL Server توانسته عملیات اعمال گواهینامه SSL را سادهتر و کوتاهتر کند. با ما همراه باشید تا با نحوه تنظیم SSL روی SQL Server آشنا شوید. آشنایی با پروتکل SSL و کاربرد آن در دیتابیس برای آشنایی با نحوه تنظیم SSL بر روی دیتابیسهای عملیاتی، بهتر است ابتدا با این پروتکل و کاربرد آن در دیتابیس آشنا شویم. پروتکل Secure Sockets Layer یا «لایه سوکتهای امن» که به اختصار از آن با عنوان SSL هم یاد میشود، یک پروتکل ارتباطی مبتنی بر رمزنگاری است. مجموعه قوانین موجود در این پروتکل، میتواند امنیت ارتباطات بین دو دستگاه یا اپلیکیشن را در شبکه تامین کند. همیشه باید به یاد داشته باشیم که قبل از اشتراکگذاری اطلاعات حساس، لازم است تا احراز هویت و تصدیق عملیات اشتراکگذاری را انجام دهیم. اینجاست که پروتکل SSL به کمک ما میآید. در میان تمامی روشهای موجود، پروتکل SSL معمولترین روشی است که برای ارسال اطلاعات به صورت امن از آن استفاده میکنیم؛ که البته دلایل محکمی هم پشت این تصمیم وجود دارد. مزایای استفاده از SSL در SQL Server مهمترین دلایل تنظیم SSL بر روی دیتابیسهای عملیاتی عبارتاند از: ساده بودن پیادهسازی SSL در SQL Server. کلاینتها برای اتصال به SQL Server از طریق SSL، باید مراحل ساده و مختصری را طی کنند. ما فقط به رمزنگاری اطلاعات نیاز نداریم، بلکه باید طرفهای موجود در یک ارتباط را هم احراز هویت کنیم؛ پروتکل SSL امکان احراز هویت را هم در اختیار ما قرار میدهد. با ایجاد یک PKI (زیرساخت کلید عمومی) مناسب، میتوان پایگاه داده را در برابر هک، نفوذ، نشت اطلاعات و… محافظت کرد. حالا که با فواید استفاده از SSL در SQL Server آشنا شدیم به نحوه استفاده از آن در برنامه مدیریت پایگاه داده Microsoft SQL Server میپردازیم. معرفی قابلیت SSL در SQL Server نسخه جدید تنظیم SSL بر روی دیتابیسهای عملیاتی از نسخه ۲۰۱۹ به بعد بسیار راحت شده است؛ چرا که برنامه مدیریت پایگاه داده Microsoft SQl Server از نسخه سال ۲۰۱۹ به بعد به قابلیت Certificate management مجهز شده که میتوان از طریق آن، تنظیمات SSL را اعمال کرد. قبلا، برای پیادهسازی پروتکلهایی مثل SSL در SQL Server باید اسکریپتها و دستورات طولانی را به صورت دستی مینوشتیم. برنامه Certificate management امکاناتی مثل: اضافه کردن گواهینامه SSL به SQL Server به صورت مستقیم. مشاهده و اعتبارسنجی گواهینامههای SSL نصب شده روی SQL Server. بررسی تاریخ انقضای گواهینامههای SSL. اعمال گواهینامه SSL روی سرورهایی با توپولوژی FCI (یا همان Always On Failover Cluster Instance) و AG (یا همان Availability Group). را در SQL Server برای شما فراهم میکند. مهمترین قابلیتی که به نسخه ۲۰۱۹ به بعد اضافه شده، این است که میتوانید گواهینامههای SSL/TLS را به صورت مستقیم وارد SQL Server کنید. بنابراین پروسه تنظیم SSL بر روی دیتابیسهای عملیاتی بسیار ساده و کوتاه شده است. اگر نگاهی به تصاویر زیر بیندازیم، میتوانیم دکمهای که اجازه اضافه کردن گواهینامه SSL به صورت مستقیم را به ما میدهد، مشاهده کنیم (تصویر سمت چپ مربوط به SQL Server 2017 و سمت راست مربوط به نسخه ۲۰۱۹ آن است): در ادامه، با پیش نیازهای تنظیم SSL بر روی دیتابیسهای عملیاتی آشنا میشویم. آشنایی با پیش نیازهای تنظیم SSL بر روی دیتابیس های عملیاتی قبل از انجام هر کاری و برای اطمینان از موفقیتآمیز بودن عملیات پیشرو، باید تعدادی از گزینههای موجود در برنامه Local Group Policy Editor را فعال یا غیرفعال کنیم. این برنامه، بخش مهمی از سیستمعامل ویندوز است که به کمک آن میتوان قابلیتهای عملکردی سیستمعامل را کنترل کرد. برای اجرای این برنامه، کلیدهای ویندوز و R را به صورت همزمان فشار دهید تا برنامه Run، اجرا شود. یا این که میتوانید این برنامه را با جستجو در منوی استارت (Start)، پیدا و اجرا کنید. پس از باز شدن Run، عبارت «gpedit.msc» را تایپ کرده و کلید Enter را بزنید. حالا باید پنجره Local Group Policy Editor برای شما باز شده باشد: حالا از سمت چپ برنامه، منوی User Configuration را باز کنید. سپس روی گزینه Administrative Templates و در نهایت روی گزینه Windows components کلیک کنید: در این بخش، پوشه Microsoft Management Console را باز کنید. حالا باید روی Restrict the user from entering author mode کلیک راست کرده و گزینه Edit را انتخاب کنید (مانند شکل زیر): در پنجرهای که برای شما باز شده، تنظیمات را روی گزینه Disabled قرار داده و سپس دکمههای Apply و OK را به ترتیب بزنید: با انجام این تنظیمات، توانایی پیکربندی تنظیمات کنسول مدیریتی یا همان Management Console به شما اعطا میشود. در ادامه انجام پیشنیازهای لازم برای تنظیم SSL بر روی دیتابیسهای عملیاتی باید گزینه Restricted/Permitted snap-ins را انتخاب کنید: گزینههایی که در تصویر بالا مشخص کردهایم (یعنی گزینههای Certification authority، Certificates و Computer management) را فعال کنید تا دسترسی شما به تنظیماتی که قرار است در عملیات پیشرو قرار دهید، فراهم شود. در ادامه، باید گواهینامه SSL موجود در کامپیوتری که SQL Server روی آن نصب شده را بررسی کنیم. بررسی گواهینامه فعلی موجود در سرور در ادامه آموزش تنظیم SSL بر روی دیتابیسهای عملیاتی باید snap-inها (ابزارهای مدیریتی موجود در کنسول مدیریت ویندوز) زیر را اجرا کنید: certlm.msc: بررسی گواهینامههای موجود در کامپیوتر شما certmgr.msc: بررسی گواهینامههای مرتبط با کاربر برای اجرای این برنامهها، خط فرمان (Command Line) یا PowerShell را در حالت Administrative باز کرده و هر یک از عبارتهای بالا را تایپ و اجرا کنید. پس از باز کردن certmgr.msc به دنبال پوشه Trusted Root Certification Authorities/Certificates بگردید: در این مثال که برای تنظیم SSL بر روی دیتابیسهای عملیاتی در نظر گرفتهایم، ما از یک گواهینامه با نامی که در تصویر بالا مشخص شده (البته این نام، نام ماشین یا کامپیوتری است که SQL Server روی آن اجرا میشود)، استفاده کردهایم. حالا روی این گواهینامه، دوبار کلیک میکنیم تا پنجره مربوط به جزئیات آن باز شود. پس از باز شدن پنجره، وارد زبانه Details میشویم. مقادیر خاصی را در این بخش، باید تغییر دهیم. اول از همه، مقدار Issuer را به کاملترین نام شناخته شده کامپیوتر یا همان Fully Qualified Domain Name تغییر میدهیم: مقدار Enhanced Key Usage هم باید مقادیر موجود در تصویر زیر را داشته باشد: در ادامه انجام پیشنیازهای لازم برای تنظیم SSL بر روی دیتابیسهای عملیاتی، روی دکمه Edit Properties کلیک کرده و برای گزینه Enable only the following purposes، یک نام انتخاب میکنیم: کار تمام است. حالا باید در ادامه، با نحوه پیکربندی SQL Server برای رمزنگاری از طریق SSL آشنا شویم. نحوه پیکربندی SQL Server برای استفاده از پروتکل SSL در نسخه های جدید در این قسمت، نحوه تنظیم SSL بر روی دیتابیسهای عملیاتی با استفاده از SQL Server ۲۰۱۹ به بعد را به صورت قدم به قدم توضیح میدهیم. ۱. در قدم اول، باید SQL Server 2019 Configuration Manager را اجرا کنید. سپس باید روی دیتابیس خود (که در مثال ما، SQL2K19 نام دارد) راست کلیک کرده و گزینه Properties را انتخاب کنید: ۲. حالا باید پنجره تنظیمات دیتابیس انتخابی خود را مشاهده کنید. به زبانه Certificate رفته و روی دکمه Import کلیک کنید. با این کار، پنجره انتخاب Certificate برای شما نمایش داده میشود: ۳. در پنجره انتخاب Certificate، با دو گزینه مواجه خواهید شد. شما میتوانید برای تنظیم SSL بر روی دیتابیسهای عملیاتی یکی از انواع Certificteهای PFX یا PEM را وارد کنید. ما در این مثال، از یک Certificate که با رمز عبور محافظت شده است (PFX) استفاده کردهایم: ۴. پس از وارد کردن رمز عبور، خلاصهای از تنظیمات Certificate را مشاهده میکنیم. آنها را بررسی کرده و سپس روی دکمه Next کلیک میکنیم: ۵. در این مرحله از آموزش تنظیم SSL بر روی دیتابیسهای عملیاتی به ما یادآوری میشود که برای اعمال تغییرات روی دیتابیس، باید آن را مجددا راهاندازی کنیم: ۶. در این مرحله، خلاصهای از روند اعمال گواهینامه روی دیتابیس را مشاهده میکنیم: ۷. پس از اتمام مراحل و راهاندازی مجدد دیتابیس، دوباره روی دیتابیس خود کلیک راست کرده و وارد Properties میشویم. حالا میتوانیم در زبانه Certificate ببینیم که گواهینامه انتخابی ما به درستی اعمال شده است: ۸. اگر روی دکمه View کلیک کنید، میتوانید جزئیات گواهینامه SSL (مثل Subject Alternative Name، نام مستعار و…) را مشاهده کنید: ۹. در مرحله آخر از تنظیم SSL بر روی دیتابیسهای عملیاتی حالا باید تصمیم بگیریم که آیا تمامی اتصالات به دیتابیس ما، از کانال پروتکل SSL انجام شود یا نه. بری این کار، وارد زبانه Flags شده و مقدار گزینه Force Encryption را در حالت Yes قرار میدهیم. برای اعمال این تغییرات هم باید دیتابیس را مجددا راهاندازی کنید: با اعمال این تغییرات، اتصال کلاینتها به SQL Server به صورت رمزنگاری شده و از طریق کانال SSL انجام خواهد شد. جمع بندی: اعمال گواهینامه SSL روی SQL Server در این مطلب با تنظیم SSL بر روی دیتابیسهای عملیاتی آشنا شدیم. به پیشنیازهای تنظیم SSL اشاره کردیم و سپس ویژگیهای برنامه Certificate Management را در SQL Server نسخه جدید، توضیح دادیم. همچنین نحوه اعمال گواهینامه SSL روی SQL Server را هم به صورت کامل و قدم به قدم، دنبال کردیم. امیدواریم که این آموزش، مورد توجه شما قرار گرفته باشد. چه رتبه ای میدهید؟ میانگین ۵ / ۵. از مجموع ۱ اولین نفر باش معرفی نویسنده مقالات 365 مقاله توسط این نویسنده محصولات 0 دوره توسط این نویسنده تیم فنی نیک آموز معرفی محصول مسعود طاهری دوره آموزش امنیت در SQL Server 2022 7.000.000 تومان مقالات مرتبط ۰۸ شهریور SQL Server اهمیت مانیتورینگ در SQL Server چیست؟ | تمام آنچه که باید از مانیتورینگ بدانید تیم فنی نیک آموز ۳۱ مرداد SQL Server دستور Rank در SQL Server ؛ کلید حل معمای رتبه بندی تیم فنی نیک آموز ۲۵ مرداد SQL Server نرم افزار (Microsoft SQL Server Management Studio (SSMS چیست؟ تیم فنی نیک آموز ۲۲ مرداد SQL Server نرمال سازی پایگاه داده | با مفهوم نرمال سازی بیشتر آشنا شوید تیم فنی نیک آموز دیدگاه کاربران لغو پاسخ دیدگاه نام و نام خانوادگی ایمیل ذخیره نام، ایمیل و وبسایت من در مرورگر برای زمانی که دوباره دیدگاهی مینویسم. موبایل برای اطلاع از پاسخ لطفاً مرا با خبر کن ثبت دیدگاه Δ