Questions tagged «passwords»

密码是用于身份验证以证明身份或获得对资源访问权限的秘密单词或字符串。

3
存储脚本中使用的密码
在开发过程中,很少有情况要求用户在自动进行操作的同时提供密码。站点部署只是常见情况之一。在OS X下创建dmg文件也需要密码。脚本中使用的大多数命令行实用程序都可以通过stdin接收密码。 每次运行脚本时提供密码都违反了“自动”的目的。将纯文本存储在脚本中会破坏“密码”的目的。向需要密码的脚本提供密码的最佳方法是什么?

5
为桌面应用程序提供“管理员密码”的可能替代方法有哪些?
我目前正在管理和重构已经在我公司使用了十多年的软件。此应用程序的元素之一是一种管理员或高级用户模式,它提供诸如一些附加/内部输入之类的功能以及关闭输入限制的功能。 从历史上看,通过将一个专门命名的文件放置在Windows系统目录中的特定位置(这两个文件都已硬编码到应用程序中)中来打开该模式,即使该文件为空,该文件也被命名为“ something.DLL”。 ASCII文件而不是dll。 因此,我最近添加了一些代码和一些模式形式,允许用户输入管理员密码以启用此功能。这是一个设置的密码,而不是特定于用户的。输入正确的密码后,它会在应用程序的根目录中创建一个“密钥文件”,从而起到类似的作用,以便该程序可以在管理员模式下启动(如果存在该文件)。 现在,该软件主要用于的部门经理不太喜欢这个主意。他认为,如果我们只有一个简单的预设密码,它将很容易“滚蛋”,他不希望没有经验的用户访问这些额外功能。 所以我的问题是,还有什么其他方法可以提供这种访问,这种访问会更加安全?在维护和管理该软件时,几乎只有我一个人,所以几乎没有完全内置或自动化的任何内容都无济于事(例如发送对“许可证密钥”的请求或类似的请求)。 注意:此应用程序是用VB.NET(.NET 4.0)编写的,当前我计划在完成新版本后使用单击一次部署。
10 .net  passwords 

7
密码哈希和对用户的支持
我们最近转向了更好的密码存储策略,它带来了所有的好处: 通过bCrypt后存储密码 系统会在创建帐户时向用户发送激活链接,以确认地址的所有权 忘记密码而没有安全问题,会将链接发送到他们的电子邮件。 该链接将在24小时后失效,此时他们将需要请求一个新的链接。 如果帐户是由我们的员工创建的,则会发送一封包含随机强密码的电子邮件。登录后,用户必须将其重置为我们不知道的东西,并且被密码加密了。 现在,这符合周围的“最佳实践”,但这增加了我们对不了解所有这些,而他们只想登录的普通用户的支持需求。 我们经常收到抱怨以下内容的用户的请求: 密码错误(从他们需要重设的密码开始,他们经常在密码的末尾粘贴一个空格)。他们告诉我们他们正在使用什么,但是我们无法告诉他们他们的实际密码是什么。 说他们没有收到我们发送给他们的电子邮件(激活,重置等)。通常情况并非如此,经过大量故障排除后,我们通常发现他们在电子邮件中打了错字,他们没有检查正确的电子邮件帐户,或者只是将其放入了垃圾邮件文件夹。 我们当然不能为他们尝试,因为我们没有密码。我们正在记录失败的尝试,但是我们也清除了他们使用的密码,因为它很可能是另一个帐户使用的密码,并且我们不想存储在纯文本日志文件中。这样,当他们报告问题时,我们几乎没有任何帮助。 我很好奇大多数人如何处理此类问题?

1
OSS项目中的集成测试-如何处理带有身份验证的第三方?
我的一个开源项目是一个备份工具,该工具可从GitHub,Bitbucket等进行脱机存储库备份。 它调用托管者的API来获取存储库列表,然后使用Git / Mercurial /任何克隆/将存储库拉到本地计算机。 因此,我在集成测试中通过身份验证调用了GitHub API。 (并且当克隆/拉动功能完成时,可能会有测试从GitHub克隆存储库,并且还需要进行身份验证) 我创建了一个用户和一个组织,专门用于这些集成测试。 问题:我不能只是在源代码中的某个地方对密码进行硬编码,因为它是开源的,并且代码在GitHub上是公开的。 我现在在做什么 在测试中,我从环境变量中获取所有用户名,密码和存储库名称。 这是一个例子: config.Name = TestHelper.EnvVar("GithubApiTests_Name"); config.Password = TestHelper.EnvVar("GithubApiTests_PW"); (TestHelper.EnvVar是一个帮助程序方法,它获取环境变量的值并在不存在环境变量时引发异常) 然后,我有一个批处理文件,用于设置这些环境变量。 真正的(environment-variables.bat)在构建脚本中以及在执行测试之前被调用,但是在源代码控制中被忽略,因此它实际上不在我的存储库中。 什么是源控制environment-variables.bat.sample,它设定了相同的环境变量,而是用假密码: rem copy/rename this file to environment-variables.bat echo Setting environment variables for integration tests... set GithubApiTests_Name=scm-backup-testuser set GithubApiTests_OrgName=scm-backup-testorg set GithubApiTests_PW=not-the-real-password set GithubApiTests_Repo=scm-backup 因此,我可以将存储库克隆到我的计算机上,将此文件重命名为environment-variables.bat,用真实的密码替换假密码,所有集成测试都将起作用。 这也适用于持续集成-我正在使用AppVeyor,并且可以在Web UI中设置这些环境变量。 我对此不满意 我认为这对于OSS项目不是一个好的解决方案,尤其是对于该项目不是这样: 从理论上讲,我的项目的贡献者现在可以通过以下方式运行集成测试: …

9
用户注册的合理且安全的密码要求是什么?
这是我刚从UPS获得的密码策略(仅用于包装状态检查): 您的密码必须介于8到26个字符之间。它必须至少包含以下三种字符类型:小写字母,大写字母,数字,特殊字符或空格。密码可能不包含您的用户ID,您的名称或您的电子邮件地址。(SSO_1007) 实际上,我一定要动脑筋才能生成此密码,但不仅如此,最重要的是,我确定三天后我会忘记该密码是什么。用户不会那么高兴。密码重置可能很频繁。我认为除非有必要,否则用户将尝试避免使用该网站。 设置网站时,什么是合理且安全的密码策略?我认为有些公司可能会担心某些黑客尝试使用密码的次数超过一百万次,因此他们添加了“特殊字符,小写字母,大写字母”的所有要求,但是关闭帐户或仅禁用密码设置是不合理的密码,如果用户尝试了30次或100次,是否需要重设密码?还是在用户尝试30次后每次添加5秒的延迟?如果是这样,那么将不需要那么多特殊字符。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.