标签: password-protection

Python是从数据库中存储和检索密码的最安全的方法

希望将用户名和密码存储在数据库中,并且想知道最安全的方法是什么.我知道我必须在某处使用盐,但我不确定如何安全地生成它或如何应用它来加密密码.一些示例Python代码将不胜感激.谢谢.

python encryption passwords password-protection

31
推荐指数
3
解决办法
5万
查看次数

使用HMAC-SHA1进行API身份验证 - 如何安全地存储客户端密码?

在使用S3样式身份验证的RESTful API中,API客户端使用HMAC-SHA1使用其密钥对请求进行签名,因此密钥永远不会通过线路传输.然后,服务器使用该客户端的密钥对客户端进行身份验证,以重复签名过程本身,并将结果与​​客户端发送的签名进行比较.

这一切都很好,但这意味着服务器需要访问客户端共享密钥的明文.面对所有的建议,反对在数据库中清除存储用户密码.就我所知,只存储密码的盐渍哈希不是一个选项 - 因为那时我无法验证客户端的签名.

我应该强调我的API是RESTful的,因此应该是无状态的:我宁愿在其他API调用之前避免登录步骤.

一种可选的解决方案是使用一些对称密钥算法加密所有用户密码.但是,服务器必须将密钥存储在易于访问的地方,例如在源代码内.这比没有好,但不是最佳解决方案(正如@Rook在他的回答中提到的,它违反了CWE-257).

解决方案的另一个方向可能是非对称签名,但我无法弄清楚如何将其应用于HMAC,并且找不到关于该主题的任何文章.

我错过了一些明显的东西吗?许多可敬的提供商已经实施了这种认证方案 - 它们不能都违反共同的安全原则,是吗?如果没有,您是否有可以分享的最佳实践?

security encryption password-protection hmac

30
推荐指数
2
解决办法
1万
查看次数

htaccess不起作用 - 总是密码错误

我正在尝试密码保护目录,并在目录中有两个文件应该密码保护它:

  • 的.htaccess
  • htpasswd的

.htaccess中:

###Contents of .htaccess:
AuthUserFile /var/www/html/path/to/my/directory/.htpasswd
AuthName "Protected Files"
AuthType Basic
Require user admin
Run Code Online (Sandbox Code Playgroud)

HTPASSWD:

###Contents of .htpasswd
admin:oxRHPuqwKiANY
Run Code Online (Sandbox Code Playgroud)

密码也是管理员,但无论我尝试什么密码,总是错误的.它立即再次要求输入密码!

这个配置有什么问题?

.htaccess login password-protection .htpasswd

27
推荐指数
3
解决办法
4万
查看次数

如何禁用Android WebView上的"保存密码"对话框?

我想知道如何防止Android WebView表单要求从html表单保存"密码数据"?

你可以帮我解决这个问题吗?

android password-protection android-webview

26
推荐指数
2
解决办法
1万
查看次数

我可以从S3 Bucket运行我的静态网站,并添加密码保护吗?

我正在完全使用Amazon S3存储桶运行静态网站,但我想用密码保护我的内容.这可能吗?身份验证的类型不会打扰我,它只需要在那里,以便人们不能只是"发现"我的网站.

目前,我没有设置域名,我认为这可以排除http://www.s3auth.com/作为可能的解决方案.还有其他人吗?

amazon-s3 password-protection

26
推荐指数
2
解决办法
2万
查看次数

如何升级密码存储方案(更改散列算法)

我被要求对Intranet站点实施一些更改/更新; 让它成为'未来证明',因为他们称之为.

我们发现使用MD5算法对密码进行哈希处理.(该系统自2001年以来一直存在,因此它足够了).
我们现在想要将散列算法升级为更强的算法(BCrypt-hash或SHA-256).

我们显然不知道明文密码,为用户群创建新密码不是一个选项*).

所以,我的问题是:

在没有访问明文密码的情况下,更改散列算法的可接受方法是什么?
最好的解决方案是完全"幕后"的解决方案.

*) 我们尝试了; 试图说服他们,我们使用了"密码时代"的论点,试图用咖啡贿赂他们,试图用蛋糕贿赂他们等等.但这不是一种选择.

更新
我希望有一些解决问题的自动解决方案,但显然除了'等待用户登录,然后转换'之外没有其他选择.

好吧,至少现在我现在没有其他解决方案可用.

security password-protection password-hash

25
推荐指数
2
解决办法
4088
查看次数

什么是盐轮以及盐如何储存在Bcrypt中?

我正在尝试为我正在制作的节点应用程序配置Bcrypt,并且有几个关于盐的问题,我希望有人可以帮助我们回答.

  • 什么是盐'圆'?例如,在GitHub的文档(https://github.com/kelektiv/node.bcrypt.js/)它使用一个盐一轮的10是什么意思是什么呢?

  • Bcrypt生成的盐总是一样吗?例如,如果我将用户的散列密码保存到数据库,那么它用于散列密码的盐是否与每个密码相同?

  • 如何储存盐?是否可以抵御潜在的攻击?

passwords hash salt password-protection bcrypt

25
推荐指数
2
解决办法
1万
查看次数

没有密码的ASP.NET MVC Identity登录

我被赋予修改ASP.NET MVC应用程序的任务,以便冲浪到myurl?username = xxxxxx会自动登录用户xxxxxx,而不需要密码.

我已经非常清楚地表明,对于许多与安全相关的原因和情景来说,这是一个可怕的想法,但负责人是有决心的.该网站不会公开.

那么:有没有办法在没有密码的情况下登录,例如扩展Microsoft.AspNet.Identity.UserManager并修改AccountController?

一些代码:

  var user = await _userManager.FindAsync(model.UserName, model.Password);
                    if (user != null && IsAllowedToLoginIntoTheCurrentSite(user))
                    {
                        user = _genericRepository.LoadById<User>(user.Id);
                        if (user.Active)
                        {
                            await SignInAsync(user, model.RememberMe);
Run Code Online (Sandbox Code Playgroud)

_userManager包含Microsoft.AspNet.Identity.UserManager的实例.

和SignInAsync():

 private async Task SignInAsync(User user, bool isPersistent)
    {
        AuthenticationManager.SignOut(DefaultAuthenticationTypes.ExternalCookie);
        var identity = await _userManager.CreateIdentityAsync(user, DefaultAuthenticationTypes.ApplicationCookie);
        if (user.UserGroupId.IsSet())
            user.UserGroup = await _userManager.Load<UserGroup>(user.UserGroupId);

        //adding claims here ... //

        AuthenticationManager.SignIn(new AuthenticationProperties { IsPersistent = isPersistent }, new CustomClaimsIdentity(identity));
    }
Run Code Online (Sandbox Code Playgroud)

AuthenticationManager将是OwinSecurity.

c# asp.net-mvc password-protection

24
推荐指数
1
解决办法
2万
查看次数

使用没有数据库或用户名的php密码保护文件夹/页面的最佳方法是什么

使用没有数据库或用户名但使用的PHP密码保护文件夹的最佳方法是什么.基本上我有一个页面,将列出组织的联系人,并需要密码保护该文件夹,而无需为每个用户负责.只需一个密码就可以经常更改并分发给组.我知道它不是很安全,但我想知道如何做到这一点.以最好的方式.

如果用户正确输入密码会暂时记住密码,那就太好了.


我做的大概是David Heggie建议的,除了没有cookies.它看起来似乎不安全,但它可能更好,密码保护不好,然后根本没有.

这是内部网站,人们将有一段时间记住他们的登录名和密码,并且永远不会通过注册 过程...除非它真的很容易,他们根本不会使用系统.

我想看看这个问题的其他解决方案.

用户群由不是非常精通技术的人组成,其他方法是什么.

php passwords password-protection

21
推荐指数
2
解决办法
6万
查看次数

如果我为每个用户随机创建SALT,我该如何对它们进行身份验证?

我一直在阅读盐渍和散列密码的好处,但有一件事我仍然没有...

当我为每个用户提供随机盐时,当我尝试对他们进行身份验证登录时,如何知道盐是什么?

所以,如果我这样做..

HASHPW = PW.RANDOMNUMBER

我可以将随机数存储在数据库中,但这似乎会杀死添加盐的整个点......不是吗?我也可以为每个盐使用一个非随机数,但是那也会杀死盐点,因为如果他们弄明白,他们拥有我所有的用户密码......

我刚刚开始学习PHP和MySQL,这样的抽象事情让我感到困惑

谢谢!

database passwords hash password-protection

20
推荐指数
2
解决办法
3451
查看次数