我是一名 Windows 管理员,因此那些与 Windows 集成的软件可能会最有帮助。目前我的主要挑战只是文件共享,但随着 SharePoint 的使用增加,这只会变得更加困难。
我已经设置了所有目录,并且许多安全组都设置了最低访问权限策略。我的问题是出于人力资源和合规原因而跟踪所有这些。
用户 A 需要获得资源 1 的权限。他需要获得资源 1 的经理的批准,然后经理的经理也需要批准此访问权限。完成所有这些操作后,我就可以进行更改了。目前,我们只是在纸上跟踪它,但这是一项负担,而且当用户 A 被重新分配并且不再有权访问资源 1 等情况时,很可能会不合规。
我知道我所寻找的东西应该已经存在,但我不知道在哪里寻找,我正在向社区寻求帮助。
编辑:
感谢大家的回复。我认为它们涉及技术方面,希望我的问题没有偏离主题。我应该更清楚地说明我的目标。您使用什么系统向审计员显示用户 A 在 X 日期添加/删除了权限,并且得到了经理 Y 的批准?我目前有一个基本的票务系统,但我认为它不能以易于理解的格式提供我需要的东西。
在我的脑海中,我想象着有一份关于用户 A 的报告,显示对其权限所做的所有更改。理想情况下,链接到 Active Directory 的东西会很理想,但此时我希望找到更基本的东西。我希望有一个专门用于此的应用程序。我觉得这一定是大型企业的要求,而且这样的软件是存在的。
谢谢!
答案1
您需要一个能够提供以下三项功能的票务系统:
- 特定用户的权限更改(添加或删除)的时间戳
- 为何改变
- 能够搜索这些更改
几乎所有票务系统都已经以票务创建日期、修改日期等形式为您提供了 #1。#2 由您在票务中记录。通常,它是来自资源经理的批准电子邮件,粘贴在票务中,说明他们可以访问(或应删除访问权限)以及访问类型。#3 是最重要的,取决于票务系统,但如果您的系统不易于搜索,那么您的工作就很轻松了。如果您可以按用户进行搜索,以便所有权限票务都与票务系统中的联系信息相关联,那么您就很好了,否则您实际上是将您的更改记录到黑洞中。
除了可以这样做来跟踪更改的票务系统(您提到您有一个基本的票务系统,因此您可能需要获得一个更好的票务系统,以便提供更好的搜索/报告功能)之外,您使用的任何应用程序、实用程序或脚本都只能提供权限快照。您仍然被困在“为什么?”的问题中,即谁有权访问什么,这只能与应用程序分开正确记录,因为您可能需要从资源管理器中获取原始电子邮件或其他批准文本。一旦有了这些,您将把它放在哪里以将其与应用程序的结果关联起来?
运行应用程序或脚本来确定文件结构中的当前权限也无法为您提供用户权限更改的良好审计跟踪。您基本上只能在某个时间点获得当前权限的快照。当您再次运行它时,您将获得另一个文件权限的快照。即使您保留了第一个权限捕获并将其与最近的捕获进行比较,并且权限已经更改,您如何将其与更改的原因联系起来?再次,这让我们回到票务系统,因为上面的#1、2 和 3 都将记录在一个地方。
您提出的另一个问题是权限蔓延(当用户被重新分配到另一个权限并且不再需要访问资源 X 时,但仍然保留它,因为 IT 部门在过渡期间没有运行他们不再需要访问资源 X 的事实)。控制这种情况的唯一方法是告诉 HR 或负责员工重新分配的人员,当员工被重新分配时需要通知 IT,以便他们可以适当地分配和撤销权限。就是这样。没有神奇的应用程序会告诉您用户可以访问资源 X,但现在不应该再访问了,因为他们的工作现在是 Y。当这种情况发生时,必须以某种形式向 IT 发出人工通知。
答案2
如果您已经有一个票务系统,我建议在您的应用程序中为这些类型的请求创建一个新的组或标签等,并让用户发送票证以进行权限更改。如果您的票务系统允许您将票证转发给其他用户,或将他们添加到票证中,请添加所需的经理并要求验证。这将允许您保留记录以涵盖您的工作。
如上所述,为每个共享创建一个安全组。在我的环境中,我们将拥有名为 FIN_Yearly、GEN_Public、MGM_Reports 的共享(每个部门都有自己的缩写)。然后,安全组将被命名为 SG_FIN_YearlyAdmin、SG_FIN_YearlyUser、SG_GEN_PublicAdmin 等。用户是只读的,管理员是读/写的。
从这里,您可以创建安全组,例如 SG_FinancialsManager;其中包括其他安全组,以便根据他们所做的工作简化访问。我们个人不这样做,因为它会使跟踪变得有点混乱。我们有一个用户列表,而不是检查共享的 SG 并查看一堆具有权限的 SG。这真的是个人偏好,并且取决于您网站的规模。我们通常使用用户模板来管理新用户到特定职位。
如果您的票务系统允许您搜索以前的票务,那么您就大功告成了。如果有人要求您删除用户的权限,您可以跟踪它。如果用户随后质疑他们为什么不再具有访问权限,您可以向他们提供票务。如果经理问您谁有权访问什么,请截屏请求的安全组。
答案3
实际上,有几种商业应用可以实现这一点。这个领域有时被称为“数据治理”。
举几个例子:
Varonis 数据治理套件
http://www.varonis.com/products/data-governance-suite/index.html
Quest One Identity Manager – 数据治理版
http://www.quest.com/identity-manager-data-governance
我没有用过这些,但研究过这个主题并看过一些演示后,可能需要的范围可以解释市场。这些应用程序非常复杂,而且价格不菲。其中一些有非常复杂的方法来连接到存储平台以跟踪访问控制列表。即使这不在您的预算之内,演示也很有用,可以让您从功能角度了解这样的应用程序的作用。
我在审查时发现,他们通常不会在文件级别进行审计。如果他们这样做,就不可能扩展到数亿或数十亿个文档。因此,他们通常只在目录级别跟踪权限。
答案4
我发现进行权限设置的最佳方法是基于角色。
GG_HR GG_Finance 等,一般映射到职位或业务部门。
从那里,您可以创建对资源(即打印机或财务目录)具有权限的本地组。LG_RoomXPrinter LG_Finance_Read LG_Finance_FullControl
您为这些本地组 LG->GG 创建全局组,然后在基于角色的全局组中添加基于权限的全局组。
GG_Finance <- LG_Finance_FullControl,LG_RoomXPrinter
当人们担任某个角色时,您只需将他们的帐户添加到一个组,他们的权限就会从该角色流出,这让跟踪变得更容易。(如果您使用某种身份管理系统,这也很棒)。这比跟踪谁拥有哪些个人权限要容易得多,您知道如果他们在 HR 组中,他们就有 X 权限。
当您通过作业管理系统提出请求时,您可以跟踪他们的群组动向,或者运行脚本来找出谁属于哪个基于角色的群组。