首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Selenium脚本中保护密码

如何在Selenium脚本中保护密码
EN

Stack Overflow用户
提问于 2014-10-21 14:36:08
回答 4查看 3.3K关注 0票数 1

我正在编写selenium (seleno)脚本来测试一个需要用户登录的c# MVC web应用程序。目前,用户名和密码已硬编码到脚本中,但在将脚本提交到代码存储库之前,我需要确保密码受到保护。

脚本将通过CI (TeamCity)自动运行,因此密码必须在没有任何人工输入的情况下提供给程序。

在安全性要求方面,密码是devs之间的常识,但它也与部署到客户端的软件捆绑在一起(这显然为任何拥有密码的人打开了后门--不管是好是坏)。因此,如果有人访问了我们的代码库,我们需要确保他们无法获得密码。密码本身存储在sqlite数据库中(盐渍)。

如果我将一个加密的值传递到程序中,然后解密,这会保护我们吗?我不太担心密码在服务器上的内存中运行,因为该服务器应该被安全地锁定,并且只有在测试期间才会存在。

我唯一能想到的另一件事是,一旦TeamCity生成了temp服务器实例,并且在测试运行之前,就将临时密码插入sqlite数据库。不过,我不知道如何做到这一点。

我本以为这将是硒的一个非常普遍的问题,但我至今还没有找到明确的解决办法。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2014-10-22 08:42:19

正如SiKing所建议的那样,解决方案是使用一个临时的、测试特定的密码,它不会被输入到生产代码中。小甜饼。

票数 0
EN

Stack Overflow用户

发布于 2018-04-27 21:22:14

解决方案是在运行时设置密码。我建议环境变量。然后,它们不在您的代码库中,而是需要有人黑进您运行测试的地方。

票数 1
EN

Stack Overflow用户

发布于 2016-07-18 00:33:56

我使用的一种方法是执行javascript来评估事物:

代码语言:javascript
复制
<td>storeEval</td>
<td>prompt(&quot;What password&quot;)</td>
<td>secretPassword</td>

不过,这只适用于用户通过webdriver运行的东西。

您可以在测试开始时对http://localhost/credentials.json或类似的类设置某种小的ajax请求,这是在CI实例上设置的(但在其他任何地方都不可用)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26489344

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档