编者注:Robert L Davis是微软的高级数据库管理员和专家,同时是《SQL Server》杂志的撰稿人,并合著《Pro SQL Server 2008 Mirroring》一书。
我们上文介绍了《DBA五大致命失误:页校验被禁用了吗?》,今天我们来说说DBA可能在权限开通方面会犯的失误。
安全对SQL Server而言至关重要,但却通常被很多SQL专家忽视。作为数据库的管理人员,我们是数据库所保存数据的保护者和监护人。如果我们不能够控制访问数据库的权限,就无从谈保护。
给用户或程序配置的权限超出规定的级别,会造成数据丢失或数据盗窃,给企业造成损失。允许过度频繁的数据读取也会影响性能,因为用户并不会注意运行查询的类型。在美国,政府还有相应的法规(如PCI,HIPAA,SOX等),如果没有按照访问权限规定进行设置,可能面临高额罚款,甚至入狱。
这就是为什么我们要遵循最小权限原则(Principle of Least Privilege)。根据维基的定义,“在计算机科学以及其它领域中,最小权限原则是要求计算环境中的特定抽象层的每个模块如进程、用户或者计算机程序只能访问当下所必需的信息或者资源。赋予每一个合法动作最小的权限,就是为了保护数据以及功能避免受到错误或者恶意行为的破坏。”该原则说得很清楚,只能赋予所需(required)和合理(justified)的最低权限。关键词是所需和合理二词。DBA会收到大量开通权限的请求。如果DBA开通了访问生产数据库的权限,就应该有能力解释为什么他们开通了这样的权限,说清楚为什么这是所需的,为什么是合理的。
你可能经常听到这样的说法,说非生产环境中没有能够支持他们想查询语句的功能或数据。或者,很难进行他们想要运行的测试或调查。如果非生产环境不足以满足这样的需求,正确的办法是解决非生产环境的不足。如果按照正确的方法很难完成你的工作,那就换份简单些的工作。事实上,很多人告诉你只能在生产环境中才完成的工作,却有大量高技能的专家能够在非生产环境中完成。
我曾被临时借调去接手一个大型商务智能应用的运营。接管没有多久,我发现开发人员都有SysAdmin的系统管理员访问权限,而且还可以自己部署新的程序。我立刻删除了所有开发人员访问生产的权限,并通知他们。当然这让很多人不高兴,但之后他们也意识到,我做的是正确的,而且几乎没有人和我来进行争吵。
接下来我负责运营该应用程序的三个月内,开发工程师团队也证明他们具备成为一个真正企业级队伍的能力。但之后该公司招到了一名全职DBA,六个月后,听说事情又恢复到以前的状态,开发人员又有了SysAdmin的权限,各自进行各自的部署。DBA辩解道,他对于这些请求没法说不,是开发人员迫使他这样做的。这个故事只是想说,DBA只要自己本事过硬,就可以坚持正确的方式。
DBA应该承担起判断是否应该给与权限的责任,确保遵循最小权限原则,否则,因为这个失误被公司开除,也不算冤枉。
请继续阅读最后一大失误:《DBA五大致命失误:你共享密码没?》。
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
作者
微软的高级数据库管理员和专家,具有15年以上的数据经验。同时是《SQL Server》杂志的撰稿人,并合著《Pro SQL Server 2008 Mirroring》一书。
相关推荐
-
DBA 五大致命失误:你共享密码没?
假如你对公司不满,会不会用自己的账号登录,去窃取公司数据或破坏公司数据库?当然那不会!稍稍走脑的都会试图用别人的帐号登录,这样就无法追查到始作俑者…
-
DBA 五大致命失误:数据损坏了,你知道不知道?
数据损坏随时可能发生在任何人身上,没有任何办法可保证它不会发生。DBA的职责是,尽量尽早发现损坏,并及时处理。
-
DBA五大致命失误:你的备份可靠吗?
每个人都会犯错,DBA也不例外。不过DBA犯错时,通常他们也是第一个发现错误,并立刻修正错误。但,有些错误是不可原谅的。那什么样的失误会让DBA可能丢掉工作饭碗?