使开发人员能够构建包含私有数据的系统的当前做法是什么? 对于那种事情,任何人都可以指出“最佳实践”指南吗?

我们在这里有一个Catch-22,开发人员需要编写与那些被认为是“私有”的系统相对应的应用程序。 IT管​​理部门希望我们的开发人员无法访问数据(即提供模式或数据结构,但不提供数据本身),而大多数开发人员(包括我自己)希望能够访问生产数据,因为没有代表性数据集可能导致错误的假设(例如,数据格式)和稍后的错误。

有没有人对这类事情有任何正式的“最佳实践”? 特别是来自某些“BigCo”(例如微软,IBM)的官方公会可能会有所帮助,因为需要说服管理层。

===============>>#1 票数:5

我对世界的看法可能不同,因为我在英国,但在过去的20多年里,我主要在公共部门工作处理敏感数据的系统。 规则**完全**切割和干燥。 开发区不允许生产数据。

作为一项基本原则,我们不希望对敏感数据的丢失负责。 用户自己也非常擅长。

在过去的12个月里,我的妻子已经从同一制度转变为私营部门,允许开发人员访问生产数据,并对此感到震惊。 法律影响(至少在英国)可能很严重。

开发人员不需要**访问生产数据。 这简直就是懒惰。 定义和创建测试数据以练习定义的测试用例(包括边缘情况),而不依赖于生产数据的随机性质。

如果你**必须**使用生产数据(即你设法说服那些不太了解它可以接受的人),确保数据在**到达开发区之前是匿名的**。

===============>>#2 票数:3

通常,将提供代表私有数据的清理数据的子集,但不提供私有数据本身。

===============>>#3 票数:2

在我的公司,我们开始使用Red-gate的数据生成器来生成测试数据。 有一些设置,但您可以使用这些工具生成非常有用的测试数据。 是的,我更愿意使用实时生产数据,但这是不可行的(特别是如果您需要在HIPAA中考虑)。 它为每列使用正则表达式,并允许您使用相关表的查找表。

===============>>#4 票数:1

在MediumCo,我们从Test和Dev的生产数据中删除专有数据。 过去我们有点伤害我们没有完全具有代表性的数据,但客户之前已经问过这一点,而且这通常不是问题,因为环境中充斥着大量假的专有数据。

===============>>#5 票数:0

我没有任何最佳实践论文或任何东西。 但我认为,如果你的开发环境受到生产中承载数据的环境的保护 ,那么就不会有太多的争论。

也就是说,如果您的生产数据库位于由IT人员托管和控制并受其保护的数据中心中,如果您的开发数据库存在于完全相同的方案中,并且不提供任何新方法来访问信息 - 您将是形状很好。 作为良好意愿的附加标记 - 提供允许任何担心安全性的人有机会进行某种渗透测试以确保您说出安全性的真相可能会很好。

当然,另一方面是分析不使用数据的成本:也就是说,它将导致更加繁琐的代码,这将花费开发时间$ xxxxxx.xx,而实际上没有成本允许小您的开发团队的子集访问所述数据。

===============>>#6 票数:0

为避免手动清理/匿名数据,您可以使用随机文本替换 - 用随机字母数字替换每个文本字段中的每个字母数字字符。 这个:

  • 从开发人员的角度来看,数据在长度,大小等方面保持相似
  • 不会导致字符集出现问题
  • 保持日期和数字字段不变,这允许对日期范围和数量进行准确测试
  • 将满足大多数隐私要求

如果您想更进一步,可以在电话号码和邮政编码上使用随机数字替换,同时在其他文本字段上使用字母数字替换。

拥有自动替换脚本允许您定期从实时系统获取最新的数据转储,因此您的测试在实践中与数据的大小和可变性保持同步。

这确实意味着少数操作将不切合实际(例如,在名称字段上建立索引,在现实生活中将其聚集在常见字母周围)但这些操作应该是有限的。

  ask by t3rse translate from so

未解决问题?本站智能推荐:

2回复

开发人员关系和安全性API [关闭]

我们正在开发与安全相关的Facebook应用。 由于安全原因,我们无法在此处发布问题。 有谁知道您如何与Facebook的开发团队联系? 他们有开发商关系小组吗? 如果是这样,是否有人有电子邮件或联系方式? 谢谢-非常感谢您的指导,很抱歉,这不是您的典型“堆栈”问题,但我们不知道该
2回复

Angular安全性-在开发人员控制台中更改值

我正在创建一个Angular 1 SPA。 某些控件仅对具有某些权限的用户可见。 这基于服务器api调用设置的作用域变量。 我想到如果可以通过浏览器开发控制台访问这些变量,就可以更改它们的值。 我尝试例如: 可以肯定的是,即使我没有以管理员身份登录,管理员控制也会在页面上
1回复

使用PHP公开授予开发人员访问表的安全性吗?

我很好奇,是否可以允许Web开发人员在为我的网站构建服务时使用PHP。 如果简化并过分安全,这样做安全吗? 这是一个例子: 有人正在构建Web应用程序,并且需要访问该站点的用户 (存储在MySQL数据库表中)。 如何获得MySQL表结果? 好吧,他可以使用PHP(或AJAX)来
1回复

window.postMessage()+ iframes +开发人员工具的安全性问题

我已经阅读了有关如何使用window.postMessage()时避免安全问题的信息-尤其是该MDN文档中的建议。 但是鉴于所有的预防技巧都是客户端,所以我很难理解他们如何阻止不良行为者简单地在其开发人员工具中编辑更改代码。 这是我要处理的情况。 我有一个页面,其中将包含嵌入式if
3回复

开发人员的开源生产数据?

我正在建立一个网站,它将是一种开放源代码的,用户提供的内容,而且,我认为如果开发人员可以访问每晚的生产SQL转储,则他们更有可能从github上检出代码并玩用它。 符合该想法,我正在考虑: 完全不收集私人用户信息 ,使用open-id帐户,大量使用memcache进行会话身份验证
3回复

.net开发人员有趣的安全问题

因为所有.net开发人员都知道可以在web.config中加密值。 我有其他XML配置文件,我从序列化技术读入,不是使用system.configuration而是序列化为强类型对象。 它现在成为我要求加密这些xml文件中的某些值,而不是整个XML文件,只是文件中的一些字符串值。
23回复

在家中好的安全备份开发人员[关闭]

关闭。 这个问题是题外话 。 它当前不接受答案。 想改善这个问题吗? 更新问题
1回复

开发人员要对安全负责吗? [关闭]

如果我为后来被黑客入侵的客户编写了一个登录系统,我或我的公司是否可以对他们要求的任何损失负责? 请问是否已经有人问过这个。 我进行了搜索,没有找到相关的答案。
2回复

即使开发人员访问,数据加密也很安全

假设您有一个服务器-客户端应用程序。 服务器保留属于客户端的敏感信息。 服务器将在客户端的敏感信息旁边搜索一些参数。 因此,服务器应使用客户端控制暂时解码敏感信息。 但是服务器不应通过自行破解来泄露密钥。 我的意思是开发人员不应尝试更改服务器sidde代码,也不应提取客户端密钥。
2回复

保持生产者配置文件对开发人员隐藏

我得到了系统演变的一部分,我得到了一些包含敏感数据凭据的文件,我正在通过heroku使用基于git的部署,并希望继续这么简单。 如何从一个分支中删除一些配置行,将其保留在另一个分支上,并确保在合并发生时它保持在那里? 这里最好的是什么?