ویژگی ها و پیکربندی سرویس(Service properties and configuration)

اکانت­های های راه‌اندازی(Startup accounts ) که برای راه‌اندازی و اجرای SQL Server استفاده می‌شوند می‌توانند:

  • حساب‌های کاربری محلی local user accounts
  • حساب‌های کاربری دامنه domain user accounts
  • حساب‌های سرویس مدیریت‌شدهmanaged service account  
  • حساب‌های سرویس مدیریت شده توسط ‌گروه Group-managed service accounts
  • حساب‌های مجازی virtual accounts
  • حساب‌های سیستم داخلی built-in system accounts باشند.

برای شروع و اجرا، هر سرویس در SQL Server باید دارای یک اکانت راه اندازی پیکربندی شده در حین نصب باشد.

بررسی انواع Account هایی که می­توانند برای راه اندازی و اجرای سرویس Server استفاده می‌شوند :

حساب‌های کاربری محلی(Local User Accounts)

Local User Account  یکObject  می­باشد که برای هر کاربر بصورت محلی در یک کامپیوتر برای استفاده از سیستم‌عامل و منابع موجود برروی آن تعریف می­گردد که توسط این User Account می‌توانید اعمال و رفتار یک کاربر را کنترل و مدیریت نمایید. اطلاعات آکانت­های کاربری محلی برروی پایگاه داده­ی  هر کامپیوتر ذخیره می­شود.

بطور کلی اگر کامپیوتربخشی از یک دامنه(Domain) نیست، اگر قصد راه اندازی سروری با این نوع از اکانت را دارید یک اکانت کاربری محلی(local user account) بدون مجوزهای سرپرست ویندوز (Windows administrator permissions) توصیه می شود.

حساب‌های کاربری دامین(Domain User Accounts)

Domain User Account یک Object می­باشد که اطلاعات و دسترسی­های کاربر در سطح دامین بصورت متمرکز تعریف و مدیریت می­گردد. اطلاعات آکانت­های کاربری دامین در پایگاه داده ای به نام Active Directory که بر روی کامپیوتر Domain Control  نصب می باشد ذخیره می­شود.

اگر سرویس باید با سرویس‌های شبکه تعامل داشته باشد، به منابع دامنه (دامین) مانند اشتراک‌گذاری فایل دسترسی داشته باشد یا اگر از اتصالات سرور متصل به رایانه‌های دیگری که SQL Server را اجرا می‌کنند استفاده می‌کند، می­توانید از یک حساب دامنه با حداقل امتیاز استفاده کنید. بسیاری از فعالیت های سرور به سرور(server-to-server) را می توان تنها با یک حساب کاربری دامنه(domain user account) انجام داد. این حساب باید از قبل توسط مدیریت دامنه در محیط شما ایجاد شود.

اگر SQL Server را برای استفاده از یک حساب دامنه (دامین) پیکربندی کنید، می توانید امتیازات(privileges) سرویس را جداسازی (isolate)کنید، اما باید رمزهای عبور را به صورت دستی مدیریت کنید یا یک راه حل سفارشی برای مدیریت این رمزهای عبور ایجاد کنید. بسیاری از برنامه های کاربردی سرور(server applications) از این استراتژی برای افزایش امنیت استفاده می کنند، اما این استراتژی نیاز به مدیریت و پیچیدگی بیشتری دارد. در این نوع نحوه استقرارها(deployments)، مدیران سرویس(service administrators) زمان قابل توجهی را صرف کارهای تعمیر و نگهداری مانند مدیریت رمزهای عبور سرویس و نام‌های اصلی سرویس (SPN) می‌کنند که برای احراز هویت Kerberos لازم است.  علاوه بر این، این وظایف تعمیر و نگهداری (maintenance tasks)می تواند سرویس­ها را مختل کند.

 

حساب های خدمات مدیریت شده (Managed Service Account)  :

حساب سرویس مدیریت شده (MSA) نوعی حساب دامنه (domain account) است که توسط کنترل کننده دامنه (domain controller) ایجاد و مدیریت می شود. برای استفاده در اجرای یک سرویس به یک کامپیوتر عضو اختصاص داده شده است. رمز عبور به طور خودکار توسط کنترل کننده دامنه مدیریت می شود. شما نمی توانید از MSA برای ورود به رایانه استفاده کنید، اما رایانه می تواند از MSA برای راه اندازی یک سرویس ویندوز استفاده کند. یک MSA توانایی ثبت نام اصلی سرویس (SPN) را در اکتیو دایرکتوری زمانی دارد که مجوزهای خواندن و نوشتن servicePrincipalName داده شود. یک MSA با پسوند $ نامگذاری می شود، به عنوان مثال DOMAIN\ACCOUNTNAME$. هنگام تعیین MSA، رمز عبور را خالی بگذارید. از آنجا که یک MSA به یک کامپیوتر اختصاص داده می شود، نمی توان از آن درنودهای مختلف یک کلاستر ویندوز استفاده کرد.

حساب‌های سرویس مدیریت شده توسط ‌گروه (group-Managed Service Accounts)

یک حساب سرویس مدیریت شده توسط گروه (gMSA) یک MSA برای چندین سرور است. ویندوز یک service account را برای سرویس هایی که روی گروهی از سرورها اجرا می شوند مدیریت می کند. اکتیو دایرکتوری به طور خودکار رمز عبور حساب سرویس مدیریت شده توسط گروه را بدون راه اندازی مجدد سرویس ها به روز می کند. می توانید سرویس های SQL Server را برای استفاده از یک حساب اصلی سرویس مدیریت شده توسط گروه پیکربندی کنید. با شروع SQL Server 2014، SQL Server از حساب‌های سرویس مدیریت شده توسط گروه group-managed service accounts برای نمونه‌های مستقل standalone و SQL Server 2016 به بعد برای failover cluster instances و گروه‌های در دسترس availability groups پشتیبانی می‌کند.

برای استفاده از gMSA برای SQL Server 2014 یا جدیدتر، سیستم عامل باید Windows Server 2012 R2 یا بالاتر باشد. سرورهای دارای Windows Server 2012 R2 به KB 2998082 نیاز دارند تا سرویس‌ها بتوانند بلافاصله پس از تغییر رمز عبور بدون اختلال وارد سیستم شوند.

حساب های مجازی(Virtual accounts)

حساب‌های مجازی Virtual accounts  (با Windows Server 2008 R2 و Windows 7 شروع می‌شوند) حساب‌های محلی مدیریت‌شده managed local accounts هستند که ویژگی‌های زیر را برای ساده‌سازی مدیریت خدمات service administration ارائه می‌دهند. حساب مجازی به صورت خودکار مدیریت auto-managed,  می شود و حساب مجازی می تواند در یک محیط دامنه به شبکه دسترسی داشته باشد. اگر مقدار پیش‌فرض برای حساب‌های سرویس در حین راه‌اندازی SQL Server استفاده شود، یک حساب مجازی با استفاده از نام نمونه  instance name به عنوان نام سرویس، در قالب NT SERVICE\<SERVICENAME> استفاده می‌شود. سرویس‌هایی که به‌عنوان حساب‌های مجازی اجرا می‌شوند با استفاده از اعتبار حساب رایانه computer account در قالب <domain_name>\<computer_name>$ به منابع شبکه دسترسی دارند. هنگام تعیین یک حساب مجازی virtual account برای راه اندازی(استارت) SQL Server، رمز عبور را خالی بگذارید. اگر حساب مجازی نتوانست نام اصلی سرویس (SPN) را ثبت کند، SPN را به صورت دستی ثبت کنید. برای اطلاعات بیشتر در مورد ثبت دستی SPN، به ثبت نام دستی SPN مراجعه کنید.