故纸堆 原文:SQL SERVER 2008安装中设置账户的问题,2013-7

在安装SQL Server 2008数据库服务器的时候,服务器有可能处于以下几种环境中:
①工作组环境下的服务器 (WorkGroup)
②域环境下的域控制器  (Domain Controller)
③域环境下的成员服务器 (Domain Member)
④群集环境 (cluster)
 
在实际应用中,开发人员或者实施人员很少有机会接触到基于域控制器的网络环境的应用,绝大多数应用都是针对工作组环境的。
比如:配置好的IIS服务器中会发布很多网站,服务器本身也会承载数据库的角色等,此时即是在工作组环境下的应用。

但对于微软平台企业级应用开发而言,则几乎都需要在域环境下进行应用和部署。
比如微软的CRM,SharePoint,uc等产品的二次开发、.NET平台为了适应企业环境和组织架构在域模式下的应用开发等,此时可能会涉及到在域控制器、域成员服务器甚至在“群集”中安装SQL Server 2008。
 
上面列举了SQL SERVER 2008可能的应用部署环境,但无论是哪一种环境下应用,都会碰到为每个<SQL Server服务>配置账户的问题。

为什么要给SQL SERVER 的每一个服务配置账户?
这是因为:给SQL SERVER服务配置了不同的账户之后,该SQL SERVER服务就会以该账户所属的组来运行,从而通过账户去控制该服务访问各种资源的权限。

SQL Server 2008内置了3个账户,分别是:
Local Service 本地服务帐户,
Network Service 网络服务帐户,
Local System 本地系统帐户

1.Local Service 帐户: 
Local Service本地服务帐户与 Users 组的成员具有相同级别的资源和对象访问权限
(题外话:什么是Users账户组,参见《Windows六大用户组功能分析》)。
如果有个别服务或进程的安全性受到威胁,则此账户的有限访问权限有助于保护系统的安全性。
以 Local Service 帐户身份运行的服务将以一个没有凭据的 Null 会话形式访问网络资源
请注意:SQL Server 或 SQL Server 代理服务不支持 Local Service 帐户。
该帐户的实际名称为“NT AUTHORITY\LOCAL SERVICE”。

题外话:Windows凭据(Credential)其实就是指用户帐户和口令。
               Null会话,即空会话,参见《空连接》一文。

2.Network Service 帐户: 
Network Service 网络服务账户比 Users 组的成员拥有更多的对资源和对象的访问权限。
以 Network Service 帐户身份运行的服务将使用计算机帐户的凭据访问网络资源
该帐户的实际名称为“NT AUTHORITY\NETWORK SERVICE”。
 

3.Local System 帐户: 
Local System 本地系统账户是一个具有高特权的内置帐户
它对本地系统有许多权限并作为网络上的计算机。
该帐户的实际名称为“NT AUTHORITY\SYSTEM”。

---------------------------------------------------------------------------------------------------------------------------

在实际应用中,

1.若在工作组环境下安装SQL Server 2008,允许使用的账户包括:
①本地用户帐户(注意不是Local Service本地服务账户!)、
②内置账户(Network Service网络服务账户、Local System本地系统账户等)。 
 
2.若在域环境上(包括成员服务器)安装 SQL Server 2008,
(注意:出于安全方面的考虑,Microsoft 建议不要将 SQL Server 2008 安装在域控制器上)
虽然SQL Server 安装程序不会阻止在作为域控制器的计算机上进行安装,但存在以下限制:
①可使用的账户受限
在域控制器上,无法在<Local Service本地服务帐户>或<Network Service网络服务帐户>下运行 SQL Server 服务。此时用的账户一般是域账户和<Local System本地系统账户>。 
②将 SQL Server 安装到计算机上之后,无法将此计算机从域成员更改为域控制器。
必须先卸载 SQL Server,然后才能将主机计算机更改为域控制器。 
③在群集节点用作域控制器的情况下,不支持 SQL Server 故障转移群集实例。
④SQL Server 安装程序不能在只读域控制器上创建安全组或设置 SQL Server 服务帐户。在这种情况下,安装将失败。
--------------------------

总之,通过给不同的SQL SERVER 服务配置不同的账户,就可以控制其权限,从而限制可访问的资源,并且有助于系统的安全运行。

[转] SQL SERVER 2008 R2 安装中的账户设置问题的更多相关文章

  1. Microsoft SQL Server 2008 R2 安装卸载

    问题 问题1 标题: Microsoft SQL Server 2008 R2 安装程序 ------------------------------ 出现以下错误: Could not open k ...

  2. SQL Server 2008 R2安装图解教程

    一.下载SQL Server 2008 R2安装文件 cn_sql_server_2008_r2_enterprise_x86_x64_ia64_dvd_522233.iso 二.将安装文件刻录成光盘 ...

  3. SQL Server 2008 R2 安装出错:Could not open key

    安装Sql Server 2008 R2 企业版出现错误提示无法继续安装,错误提示为: Could not open key: UNKNOWN\Components\7ABFE44842C12B390 ...

  4. SQL Server 2008 R2 安装注意事项

    上个星期自己第一次安装SQL Server 2008 R2,安装失败几次,结果用了将近1天的时间安装,最后成功了. 心得:1.安装SQL Server 2008 R2时,最好在第一次就安装成功.在百度 ...

  5. [0412]SQL Server 2008 R2 安装 & 设置

    SQL Server 2008 R2 安装 & 设置 Sql Server 安装 安装环境: Windows 10 1709 64位 安装文件: Sql Server 2008 R2 Sql ...

  6. SQL Server 2008 R2 安装 下载

    [参考]https://www.aiweibk.com/6697.html winrm 服务未启动,需要先配置.以管理员身份启动 cmd,执行 winrm quickconfig 命令. 微信截图_2 ...

  7. Microsoft SQL Server 2008 R2 安装遇到的问题

    SQL Server 安装过很多次了,第一次遇见这样的问题: TITLE: Microsoft SQL Server 2008 R2 安装程序----------------------------- ...

  8. 【原创】SQL SERVER 2008 R2安装(多图详解)

    配置系统环境说明 操作系统:Windows 7 操作系统版本:旗舰版 SP1 操作系统位数:x64 注:其它系统配置也基本相似,只是可能菜单的名字或者所处位置不一样,具体的配置如有不同,请自行搜索 安 ...

  9. windows server 2012 + sql server 2008 r2安装

    windows server 2012 r2  里面安装 sql server 2008 r2 问题总结 前提是 windows server 2012 r2 已经安装完成  ,(仅仅是安装完成 啥服 ...

随机推荐

  1. 事件冒泡 & 阻止事件冒泡

    事件冒泡 : 当一个元素接收到事件的时候,会把他接收到的所有传播给他的父级,一直到顶层window.事件冒泡机制 阻止冒泡 : 当前要阻止冒泡的事件函数中调用 event.cancelBubble = ...

  2. Object.assign(o1, o2, o3) 对象 复制 合拼

    Object 对象方法学习之(1)—— 使用 Object.assign 复制对象.合并对象 合并对象 var o1 = {a: 1}; var o2 = {b: 2}; var o3 = {c: 3 ...

  3. cocos creator 小记

    一个游戏场景有若干个节点组成,这些包括渲染节点,UI节点.   这里弱化了Layer层的概念. 一个游戏由若干个场景组件. 每个节点由若干个组件和若干子节点组成. 例如UI节点中的 按钮节点.子节点有 ...

  4. PHP23 AJAX分页

    模型代码设计 以留言信息管理为例. 获取根据条件查询记录总数和分页数据. <?php namespace application\admin\models; use core\mybase\Mo ...

  5. 设计模式:命令模式(Command Pattern)

    问题 某个类中需要定义一个方法,该方法要实现的功能不确定的,需要等到程序执行该方法的时候才确定下来. 例如:定义一个计算数组的方法,可能需要遍历输出数组,也有可能是需要对数组中元素求和. 解决方案 按 ...

  6. 执行BarTender

    1.配置.btw模板 1.1.左侧创建“具名数据源” 1.2.条码属性,选择刚才的数据源 1.3.保存 2.配置.btin服务 2.1.点击 工具/Integration Builder” 2.2.创 ...

  7. 如何使用GoEasy实现PHP与Websocket实时通信

    最近搞了搞websocket 做了个简答的聊天demo 1.      从GoEasy获取appkey appkey是验证用户的有效性的唯一标识. Ø  注册账号. GoEasy官网:https:// ...

  8. ES6中Generator

    ES6中Generator Generator是ES6一个很有意思的特性,也是不容易理解的特性.不同于let/const提供了块级作用域这样明显的目的,这玩意儿被搞出来到底是干嘛的? 首先我们需要明确 ...

  9. 在不使用ssr的情况下解决Vue单页面SEO问题

    遇到的问题: 近来在写个人博客的时候遇到了大家可能都会遇到的问题 Vue单页面在SEO时显得很无力,尤其是百度不会抓取动态脚本 Vue-Router配合前后端分离无法让meta标签在蜘蛛抓取时动态填充 ...

  10. 条款16:成对使用new和delete时要采取相同形式

    NOTE: 1.如果你在new表达式中使用[],必须在相应的delete表达式中也使用[].如果你在new表达式中不使用[],一定不要在相应的delete表达式中使用[].