问题标签 [passwords]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql-server - Sql Server 2005:使用什么数据类型来存储由 SHA-256 算法散列的密码?
在 Sql Server 2005 中,应该使用哪种数据类型来存储由 SHA-256 算法散列的密码?
数据由应用程序散列并传递到数据库
database - 保持密码可配置的最佳方法是什么,而不会让普通的人类读者太容易获得它们?
我有一个数据库,许多不同的客户端应用程序(少量 Web 服务、一些 Java 应用程序和一些 dot net 应用程序)都连接到该数据库。并非所有这些都在 Windows 上运行(遗憾的是,否则只需为数据库连接启用 Windows 身份验证,这将成为一个简单的答案问题)。目前,密码存储在系统周围的各种配置/属性文件中。理想情况下,只有支持人员才能访问运行文件的服务器,但如果其他人获得对其中一台服务器的访问权限,他们将拥有足够的数据库权限来获得相当多的数据,就像现在这样。
那么我的问题是,保持密码可配置的最佳方法是什么,而不是让普通的人类读者太容易获得它?
编辑只是为了澄清,数据库服务器是 Windows Server 2003,运行 MSSQL 2005。
PS:我没有看到任何重复的问题,但如果有,请随时关闭此问题。
apache - Apache/.htaccess - 对域进行密码保护,但将其中的某些 URI 列入白名单
所以这就是我想做的事情:
访问http://example.com/ * 需要用户输入用户名/密码,除非他们访问特定的 URI(例如http://example.com/contact/、http://example.com /blog/等)他们不应该进行身份验证。http://example.com(根)也应该打开。
我知道我必须设置一些特殊的 .htaccess 指令,但我不知道该怎么做。有谁知道我怎么能做到这一点?
任何帮助将非常感激。谢谢!
php - MySQL 哈希函数实现
我知道 php 有 md5()、sha1() 和 hash() 函数,但我想使用 MySQL PASSWORD() 函数创建一个散列。到目前为止,我能想到的唯一方法就是查询服务器,但我想要一个函数(最好在 php 或 Perl 中),它可以在不查询 MySQL 的情况下做同样的事情。
例如:
MySQL 哈希 -> 464bb2cb3cf18b66
MySQL5 哈希 -> *01D01F5CA7CA8BA771E03F4AC55EC73C11EFA229
谢谢!
php - 以可逆形式存储密码
我有一个 PHP 应用程序需要运行 bash 脚本,并提供用户名和密码(用于远程系统)。我需要将这些凭据存储在我的 PHP(Web)应用程序可以访问的地方。逻辑位置是数据库(目前是 MySQL,但将是不可知的)。散列和存储凭据的“标准”方式的问题在于它是不可逆的。我必须能够以未加密的明文形式获取凭据,才能将数据插入 bash 脚本。
有人对解决此问题的安全方法有任何建议吗?
我想也许 PKI'ing 凭据,并将结果存储在数据库中。然后使用私钥解密(PHP 可以做到)。将执行此操作的脚本存储在 Web 根目录之外。
任何想法都非常感谢。
security - 您如何支持带有散列或加密密码的 Web 应用程序?
在企业环境中支持新的 Web 应用程序时,通常需要以特定用户身份登录,以诊断他们遇到的实际或感知问题。这里有两个相反的问题:
最佳做法是使用散列或加密密码,而不是明文。有时,中间有第三方 SSO(单点登录)。无法检索用户的密码。除非用户提供(不鼓励),否则无法以该用户身份登录。
许多网络应用程序具有个性化和复杂的授权。不同的用户具有不同的角色(管理员、经理、用户),具有不同的权限。有时用户只能看到他们的数据——他们的客户或任务。一些用户具有只读访问权限,而其他用户可以编辑。因此,每个用户对 Web 应用程序的看法都是独一无二的。
假设在企业环境中,去用户的办公桌或直接连接到他们的机器是不可行的。
你如何处理这种情况?
编辑:我想重申,在全国乃至全球拥有数十万员工的大型金融机构或典型的财富 500 强公司中,某些 IT 部门的开发人员不可能直接访问用户的机器。其中一些是客户使用的面向公众的网络应用程序(例如网上银行和股票交易)。而且,其中许多是依赖 Active Directory 或 SSO 的 Intranet 应用程序,这意味着许多应用程序的用户凭据是相同的。我非常感谢大家的建议;有些可能在其他类型的环境中非常有用。
sql-server - 为 Windows 服务存储用户名和密码的最佳方式是什么?
为 Windows 服务存储用户名和密码的最佳方式是什么?
该服务必须能够访问远程计算机上的 MS SQL Server 数据库。我们必须支持 MS SQL Server 身份验证(混合模式)而不是 NT 身份验证。
asp.net - 使用 Python 对 ASP.NET 角色/成员身份创建的数据库中的原始用户名、哈希、盐进行身份验证
我们有一个当前应用程序,其中用户登录凭据存储在 SQL Server 数据库中。这些基本上存储为纯文本用户名、密码散列和此散列的关联盐。
这些都是由 ASP.NET 的成员/角色系统中的内置函数创建的。这是名为“joe”的用户和密码“password”的一行:
乔,kDP0Py2QwEdJYtUX9cJABg==,OJF6H4KdxFLgLu+oTDNFodCEfMA=
我已将这些内容转储到 CSV 文件中,并试图将其转换为 Django 的可用格式,该格式以这种格式存储其密码:
[算法]$[盐]$[哈希]
其中盐是纯字符串,散列是 SHA1 散列的十六进制摘要。
到目前为止,我已经能够确定 ASP 正在以 base64 格式存储这些哈希和盐。上面的那些值解码成二进制字符串。
我们使用反射器来收集 ASP 如何根据这些值进行身份验证:
本质上,从数据库中提取盐,然后 b64 将其解码为二进制表示。它对原始密码执行“GetBytes”,然后将它们连接起来,首先是盐。
然后它在这个新字符串上运行 SHA1 算法,base64 对其进行编码,并将其与存储在数据库中的值进行比较。
我试图编写一些代码来尝试在 Python 中重现这些哈希值,但我失败了。在我弄清楚它是如何翻译的之前,我将无法在 Django 中使用它们。这是我的测试方式:
我想知道是否有人可以看到我的方法中的任何缺陷或可以提出替代方法。也许您可以使用上面的算法以及上面的已知密码和盐并在您的系统上生成哈希?
c# - 具有完整集成的 3rd 方密码管理
我使用 C#、IIS、ASP.NET、SQL Server。
是否有可以轻松集成到我的系统中的第三方平台来处理密码管理?
它必须 100% 集成(没有 OpenID),这样用户就不会注意到。
authentication - 在不使用公钥身份验证或期望的情况下自动化 SSH(1)
有没有办法自动将密码传递给 ssh。我想通过某种方式让 ssh 从标准输入或文件中读取密码,从而在不使用公钥身份验证或期望脚本的情况下自动 ssh 到服务器。
必须采用这种方式的原因是我想将我的文件备份到使用 rsync/ssh 作为 cron 作业运行的服务器上。该服务器在对我进行身份验证后挂载我的主目录,因此使用公钥身份验证不起作用,因为 ~/.ssh 在登录成功之前不可用。expect(1) 是不可能的,因为我想将它作为 cron 作业运行,并且由于 cron 作业不在终端下运行,expect/ssh 的组合不起作用。我没有对该服务器的 root 访问权限,并且很难让管理员对那里的工作方式进行任何更改。