Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Solr 6.6.1中使用REST的基本身份验证_Rest_Solr_Lucene_Basic Authentication - Fatal编程技术网

Solr 6.6.1中使用REST的基本身份验证

Solr 6.6.1中使用REST的基本身份验证,rest,solr,lucene,basic-authentication,Rest,Solr,Lucene,Basic Authentication,我已经按照他们的参考指南部署了带有基本身份验证的ApacheSolr6.6.1。最后,他们讨论了如何安全地使用curl。对于我的例子,我使用RESTAPI来查询SOLR。 由于基本身份验证,我正在使用此查询。。。 这样,我的用户&paswd将公开。我想知道在REST API中使用基本身份验证的最安全方法,它不会暴露于外部世界。如您所见: 不推荐使用这些URL。在Chrome中,用户名:password@ 出于安全原因,URL中的一部分甚至被删除。在Firefox中,它 检查站点是否确实需要身份验

我已经按照他们的参考指南部署了带有基本身份验证的ApacheSolr6.6.1。最后,他们讨论了如何安全地使用curl。对于我的例子,我使用RESTAPI来查询SOLR。 由于基本身份验证,我正在使用此查询。。。 这样,我的用户&paswd将公开。我想知道在REST API中使用基本身份验证的最安全方法,它不会暴露于外部世界。

如您所见:

不推荐使用这些URL。在Chrome中,用户名:password@ 出于安全原因,URL中的一部分甚至被删除。在Firefox中,它 检查站点是否确实需要身份验证,如果不需要, Firefox将提示用户“您将要登录到” 网站“www.example.com”的用户名为“username”,但 网站不需要身份验证。这可能是试图 欺骗你

您不需要在URL中公开它,您应该在请求中添加一个“授权”标题。该值将使用Base64编码“username:password”,这是不安全的,但由于您使用的是https,因此它将受到保护


标头的完整值类似于“基本dXNlcm5hbWU6cGFzc3dvcmQ=”。它由身份验证类型(“基本”)加上空格加上Base64中编码的“用户名:密码”值组成。

你能给我举个例子吗?如何形成此(“基本dXNlcm5hbWU6cGFzc3dvcmQ=“)编码值并在https请求中使用它?这取决于你想要什么。当您将身份验证设置为basic并提供凭据时,许多Rest客户端(PostMan、ARC等)将自动执行此操作。在java中,您可以构建一个http客户端,如下所示:我想将它用作我们提供给浏览器地址栏的url,它应该在不提示登录的情况下返回数据。我想要一个完整的url格式,其中包含基本身份验证用户&pswd,但格式为编码格式。如果您无法处理添加标题的请求,则无法对其进行保护。标头将受到ssl加密的保护,而URL将不受保护。即使可以直接在url中使用base64编码表单,也不会比纯文本版本更安全,因为base64可以轻松解码。