انتخاب User مناسب برای Service های SQL Server
کدام Service، کدام User ؟
سوالی که افراد بسیاری در پروسه نصب Sql Server در بخشی که مربوط به انتخاب کاربر برای هر کدام از سرویس های سیکوئل سرور هست، می پرسند.
در واقع چندین انتخاب وجود دارد.
من به شخصه در زمان نصب SQL Server با این سوال مواجه بودم و نتایج جستجو بر روی اینترنت و سوال و جواب از دوستان فنی؛ نتیجه ی مثبت و منحصری را حاصل نمی کرد. تا اینکه در آخرین جستجو که به سایت MSDN منتهی شد به مطلبی برخورد کردم؛ که مطالب ذیل ترجمه ایست آزاد از آن.
برای اجرای هر کدام از سرویس های سیکوئل سرور, هر کدام از آن ها باید یک حساب کاربری که در طی مراحل نصب تنظیم شده اند, داشته باشند. این حساب های کاربری که برای شروع و اجری سیکوئل سرور به کار می روند می توانند یک حساب کاربری از نوع built-in یا local user یا domain user باشند.
ذیلا به تشریح هر کدام پرداخته شده است.
Domain User Account
اگر سرویس مورد نظر باید با network services، access domain resources مانند اشتراکات فایل در تعامل باشد و یا اگر سرویس از ارتباطات لینک شده به سرور برای اتصال به کامپیوتر هایی که در حال اجرای سیکوئل سرور هستند استفاده می کند، شما ممکن است از یک حساب کاربری تحت دامین با کمترین سطح دسترسی استفاده کنید. خیلی از فعالیت های بین سرورها، می توانند فقط با یک حساب کاربری تحت دامین انجام بشوند که این حساب کاربری باید قبلا توسط ادمین دامنه ایجاد شده باشد.
Local User Account
اگر کامپیوتر مورد نظر شما عضو یک دامین نیست، یک کاربر محلی بدون مجوز های کاربر Windows Administrator توصیه می شود.
Local Service Account
حساب کاربری Local Service یک حساب کاربری درون ساخت است که به منابع و اشیا دسترسی برابر با اعضای Users Group دارد . این دسترسی محدود شده به حفظ امنیت سیستم در زمانی که سرویس ها و یا پروسه های منحصر به فردی به خطر بیفتند، کمک می کند . سرویس هایی که تحت یک حساب کاربری Local Service اجرا شده اند، به منابع شبکه به عنوان یک null session بدون اعتبار دسترسی دارند. اطلاع داشته باشید که حساب کاربری Local Service برای سرویس های Sql Server و یا Sql Server Agent پشتیبانی نمی شود. نام اصلی این حساب کاربری "NT AUTHORITY\LOCAL SERVICE" است.
Network Service Account
حساب کاربری Network Service یک حساب کاربری درون ساخت است که دسترسی برابر با اعضای Users Group دارد به منابع و اشیا. سرویس هایی که تحت یک حساب کاربری Network Service اجرا شده اند، به منابع شبکه به عنوان یک null session بدون اعتبار دسترسی دارند. اطلاع داشته باشید که حساب کاربری Local Service برای سرویس های Sql Server و یا Sql Server Agent پشتیبانی نمی شود. نام اصلی این حساب کاربری "NT AUTHORITY\NETWORK SERVICE" است.
Local System Account
حساب کاربری Local System یک حساب کاربری درون ساخت با امتیازهای سطح بالا است. امتیاز های گسترده ای بر روی سیستم محلی دارد و به عنوان رایانه بر روی شبکه عمل می کند. نام اصلی این حساب کاربری "NT AUTHORITY\SYSTEM " است.
علاوه بر داشتن حساب کاربری، هر سرویس دارای سه وضعیت شروع می باشد که توسط کاربر کنترل می شوند:
Disabled: سرویس نصب شده است اما در حال حاضر در حال اجرا نیست.
Manual: سرویس نصب شده است اما تنها زمانی شروع به کار می کند که سرویس ها و یا برنامه های دیگری به آن نیاز داشته باشند.
Automatic: سرویس به صورت خودکار توسط سیستم عامل اجرا می شود.
جدول ذیل، حساب های کاربری قابل انتخاب برای هر یک از سرویس های SQL Server و و ضعیت شروع به کار آن ها را نشان می دهد.
نام سرویس |
حساب کاربری های قابل انتخاب |
حالت اجرا |
وضعیت پیش فرض پس از نصب |
SQL Server | SQL Server Express: Domain User, Local System, Network Service تمام نسخه های دیگر: Domain User, Local System, Network Service 1 |
Automatic 1 | StartedStopped (تنها اگر کاربر autostart را انتخاب کرد باشد) |
SQL Server Agent | Domain User, Local System, Network Service 1 | Manual 1,2Automatic (تنها اگر کاربر autostart را انتخاب کرد باشد) | StoppedStarted (تنها اگر کاربر autostart را انتخاب کرد باشد) |
Analysis Services | Domain User, Network Service, Local Service, Local System 1, 4 | Automatic 1 | StartedStopped (تنها اگر کاربر autostart را انتخاب کرد باشد) |
Reporting Services | Domain User, Local System, Network Service, Local Service | Automatic | StartedStopped (تنها اگر کاربر autostart را انتخاب کرد باشد) |
Integration Services | Domain User, Local System, Network Service, Local Service | Automatic | StartedStopped only if user chooses not to autostart. |
Full-Text Search | از یک حساب کاربری متفاوت از حساب کاربری سرویس SQL Server استفاده نمایید در ویندوز سرور 2008 و ویندوز ویستا، به طور پیش فرض حساب کاربری Local Service انتخاب شده است |
Automatic | StartedStopped (تنها اگر یک حساب کاربری در ویندوز سرور 2003 و یا ویندوز اکس پی مشخص نشده باشد) |
SQL Server Browser | Local Service | Disabled 3Automatic (تنها اگر کاربر autostart را انتخاب کرد باشد) | StoppedStarted (تنها اگر کاربر autostart را انتخاب کرد باشد) |
SQL Server Active Directory Helper | Local System, Network Service | Disabled | Stopped |
SQL Writer | Local System | Automatic | Started |
توجه:
1. برای تنظیمات failover cluster، از حساب کاربری تحت دامین استفاده نمایید و حالت شروع را بر روی حالت manual قرار دهید.
2. سرویس SQL Server Agent ، بر روی نمونه های SQL Server Express و SQL Server Express با سرویس های پیش رفته، غیر فعال است.
3. به طور پیش فرض حالت شروع سرویس SQL Server Browser، زمانی که نصب به صورت failover cluster و named instance بوده باشد، پس از اتمام نصب برابر با automatically است.
4. نمونه هایی از سرویس های Analysis که شما در حالت SharePoint Integrated ، توسعه داده اید، باید توسط یک حساب کاربری تحت دامین اجرا شوند. در صورتی که شما یک حساب کاربری درون ساخت از قبیل Network Service را انتخاب نمایید، پروسه نصب مسدود خواهد شد. حساب های کابری درون ساخت برای سرویس های shared در یک farm قابل قبول نیستند.
اصل مطلب را کاملتر و به زبان اصلی در اینجا بخوانید.
- ۹۳/۰۴/۰۱