同一站点上的多个http auth详细信息+ chrome保存密码功能,有什么办法可以处理这种情况?


14

Google Chrome浏览器似乎是在每个站点上保存密码,但是我正在开发一个站点,根据访问的目录,我希望该站点具有不同的http身份验证详细信息,并使Chrome记住这一点。

也就是说,http://example.com/ahttp://example.com/b具有不同的http用户/密码组合。我希望Chrome能够同时记住两者,例如,当我输入http://example.com/a时,我将使用/ a和/ b的相应用户/密码组合进行访问。如果我使用内置功能在Chrome中保存密码,则浏览器会全局保存http://example.com的两种用户名/密码组合,并且不记得根据地址使用哪种密码,而是默认使用其中一种用于访问http://example.com的任何地址

除了为每个目录设置不同的子域之外,还有其他方法吗?


2
哇,这是从2013年开始的,而在2017年的版本57中,这还没有固定...这是拥有近60%市场份额的浏览器吗?
阿兰·潘尼捷

2
@AlainPannetier是的,直到今天,我仍然没有找到解决方法,我只是诉诸于使用子域或每次手动输入密码。
马恩(Mahn)

2
大声笑。数十年来,我一直在抱怨封闭源代码,而现在开放源代码存在问题:我只想克隆和自定义所有内容。铬很容易(尽管很长)重建。但是,随着他们的市场份额增加,他们的开发人员变得如此傲慢,以至于我只用于开发。我只是回滚到52,因为在57中打开devtools只是...崩溃了chrome。我可以尝试一下。我会让你知道。
阿兰·潘尼捷

@AlainPannetier Chromium的问题在于代码库很大,我觉得重构整个Linux内核比在此更改接口要容易得多。我觉得这太令人生畏了,但也许你比我在那里好运。
Mahn

1
是否所有路径都指定相同的HTTP身份验证“领域”,或者它们是分开的?
user1686 '19

Answers:


1

如果您为不同的子文件夹指定不同的领域,则Chrome将正常运行,例如,在nginx中可以正常工作:

    location /gabinete-rivera {
        auth_basic "Hijos de Rivera";
        auth_basic_user_file /home/www/public/gabinete-rivera-app/.htpasswd;
        index  index.php index.html;
        try_files $uri $uri/ /index.php?$query_string;
    }

    location /gabinete-gases {
        auth_basic "Gases Fluorados";
        auth_basic_user_file /home/www/public/gabinete-gases-app/.htpasswd;
        index  index.php index.html;
        try_files $uri $uri/ /index.php?$query_string;
    }

0

构建一个简单的chrome插件,该插件可以使用表单ID或名称并获取数据(如果只是用户名和密码),并在每次单击提交时将其存储。存储可以是很少加密或不加密的脱机文本文件。或者以某种方式为passwords.google.com使用一些API并手动存储。这样一来,Chrome就会从您的Google帐户中获取密码。替代方案:在网站上引入一个(漏洞)JavaScript并将其发送到passwords.google.com以使用API​​(如果有)进行存储。


问题是关于HTTP身份验证,即:i.imgur.com/WsXRu7J.png。不能通过插件或JavaScript劫持。
Mahn
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.