2

很抱歉错误地标记了这个 SQL,但你在这里看起来很活跃。我是一名数据仓库开发人员,目前为一家公司工作,该公司开发了一个内部定制的操作系统,我将数据从该系统中提取到数据仓库中。一些用户问我是否可以在仓库中包含用户登录信息——谁登录以及何时登录。但系统不存储此信息。我觉得应该。是否有合规/监管规则说它应该?是否有良好的安全/系统原因?

4

2 回答 2

1

系统应该在某处存储审计日志。最好将其存储在与非安全数据分开的数据库中或以其他方式分开。

审计日志用于观察用户行为,作为不可否认性的一部分。这是监管管理员和其他用户行为的唯一方法,几乎​​没有限制。许多组织将需要审核日志以符合 SOX (Sarbanes-Oxley)、HIPAA、PCI-DSS 或供应链合同。

审计日志应该有某种形式的简单篡改检测,例如 HMAC。清除或备份旧审计日志条目的操作也应该在审计日志中添加一个条目。

[编辑:应要求添加了更多详细信息]

不可否认性是一种非常奇特的说法,即“你不能声称你没有这样做”(http://en.wikipedia.org/wiki/Non-repudiation)。例如,如果用户上传了麻烦的数据然后声称不是他或她,那么显示用户在没有其他人登录的情况下登录的审计日志将非常有用。

HMAC 是散列消息验证码(参见http://en.wikipedia.org/wiki/Hash-based_message_authentication_codehttp://www.ietf.org/rfc/rfc2104.txt)。这是一种加密算法,其中您有一个秘密号码,将其附加到数据中并进行哈希处理。如果没有库,这可能很难计算,并且可能比您想要的位置提前一点。

于 2012-08-30T14:27:39.133 回答
1

一些行业和国家确实有关于审计的规定;SOX 大大扩大了这一范围。但是,据我所知,没有关于此的一般立法或法规——这可能是一件好事。

但是,用户要求提供有关此数据的报告这一事实表明有必要收集这些数据。

存储此类数据的其他原因是了解使用情况(并可能为该使用情况计费部门)、检测错误、支持容量管理和监控服务质量。大多数重要的企业应用程序至少需要其中一些功能,即使它们不需要正式审计。

如果您关心数据安全——保护您的价格和客户名单——仅靠审计是远远不够的,而且很可能会适得其反。跟踪个人登录的数据泄漏几乎肯定是(几乎)不可能的,并且很容易最终指责错误的人。

于 2012-08-30T14:38:27.933 回答