说到为特定目录设置BasicAuth保护,我使用简单的设置(在apache2.conf文件中): <Directory /var/www/somedir/> Deny from all AuthUserFile /var/pswd/somedir/.htpasswd AuthName authorization AuthType Basic Satisfy Any require valid-user </Directory> 但是我想默认情况下在服务器上设置BasicAuth,并且只为特定的目录(网站,域)解锁它。 那么,除了某些目录之外,怎么能在服务器上的任何地方设置BasicAuth呢?
如何设置Apache 2.2的基本身份validation绕过IP? 我已经按照这个维基http://wiki.apache.org/httpd/BypassAuthenticationOrAuthorizationRequirements ,但总是要求一个密码,也列入IP: <Directory /var/www/html/mydir> AuthName "Private" AuthType Basic AuthUserFile "/etc/httpd/htpasswd" Require valid-user Order allow,deny Allow from 111.111.111.111 222.222.222.222 Satisfy any </Directory> 我在haproxy下,但我设置了IP,我已经设置LogFormat这样: LogFormat "%{X-Forwarded-For}i %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined access_log是: 111.111.111.111 – – [25/Oct/2016:12:35:41 +0200] "GET /index.html HTTP/1.1" 401 487 "-" "Mozilla/5.0 (X11; Linux armv7l; rv:38.0) Gecko/20100101 Firefox/38.0 Iceweasel/38.7.0"
什么插件和什么configuration我需要configurationApache服务器使用用户/密码从数据库而不是从文件进行基本身份validation
我试图设置nginx作为一个反向rpoxy服务器在前面closures使用基本身份validation进行身份validation的几个IIS Web服务器。 (注意 – 这与使用密码文件提供auth的nginx不一样 – 它只是在浏览器/服务器之间进行mathhelling everythnig) 它的工作types – 但反复提示一个页面上的每一个资源(图像/ CSS等)auth。 upstream my_iis_server { server 192.168.1.10; } server { listen 1.1.1.1:80; server_name www.example.com; ## send request back to my iis server ## location / { proxy_pass http://my_iis_server; proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504; proxy_http_version 1.1; proxy_pass_header Authorization; proxy_redirect off; proxy_buffering off; proxy_set_header […]
背景 我使用grafana来显示我们的服务器度量的graphics。 Grafana是一个JS应用程序,在我们的例子中是从石墨中获取数据并在elasticsearch中存储search查询。 所有这三个服务都有自己的虚拟主机,虽然现在在同一台机器上。 由于JS规则,我添加了CORS头到石墨和elasticsearch-vhost。 graphite-vhost是WSGI的路由请求,因为石墨是一个python / django应用程序。 elasticsearch-vhost是将数据从端口443转发到localhost:9200的反向代理。 这有助于不直接向世界开放elasticsearch服务,也给我一个添加CORS头的地方。 到目前为止,这是有效的:grafana可以同时与两个服务进行通信。 出现问题 我添加了Basic Auth身份Basic Auth的grafana和石墨主机。 这些工作正常,如预期。 Grafana能够检索和显示数据。 当将Basic Auth添加到elasticsearch-vhost时,我遇到了问题。 虽然我可以在<Location / >块中添加Auth设置,但似乎禁用了CORS头。 激活身份validation后,我可以在浏览器或curl中使用elasticsearch。 但是,grafana无法在elasticsearch中searchconfiguration的仪表板。 search似乎更复杂,一个GET ,因为grafana开始与OPTIONS -request。 这失败了一个401错误。 有趣的是,Grafana可以检索已知的仪表板(这是一个简单的GET )。 我没有提到在Headers中限制HTTP方法。 所以,总结一下: How can I add basic auth to an apache proxy while using CORS headers? 如果你想看看Apache的configuration,请告诉我哪些部分,我不想张贴三个相当长的虚拟主机“只是可以肯定”。
两种情况: 目录 我想我的整个服务器被密码保护,所以我包括这个目录configuration在我的sites-enabled/000-default : <Directory /> Options FollowSymLinks AllowOverride None AuthType Basic AuthName "Restricted Files" AuthUserFile /etc/apache2/passwords Require user someuser </Directory> 问题是我如何从这个排除特定的url? 代理 我发现上面的密码保护不适用于mod_proxy,所以我把它添加到我的proxy.conf : <Proxy *> Order deny,allow Allow from all AuthType Basic AuthName "Restricted Files" AuthUserFile /etc/apache2/passwords Require user someuser </Proxy> 如何从密码保护中排除特定的代理URL? 我尝试添加一个新的细分: <Proxy http://myspecific.url/> AuthType None </Proxy> 但是这并没有什么窍门。
在IIS7的一个.asmx页面上是否可以同时启用Windows身份validation和基本身份validation? 我想要的是: 有人调用webservice 如果可能,请使用Windows身份validation(例如,从另一个基于Microsoft的应用程序调用时 如果客户端不知道如何处理Windows身份validation:允许他使用基本身份validation(例如,当客户端是我们不能真正修改的程序时)。 如果仍然不起作用,请发送401 它看起来像 – 只要我启用Windows身份validation – 所有基本的身份validation尝试都会被401忽略/回答,即使login凭据在我启用Windows身份validation之前工作。
我有我的IIS7网站的子目录,我想用基本身份validationlocking。 我已经进入IISpipe理器,select了authentication指定的目录并启用了基本authentication,并禁用了其他所有types。 当我从服务器浏览到目录时,我得到用户名/密码提示。 但是,当我在远程计算机上使用浏览器时,我没有得到用户名/密码提示。 我使用Fiddler来查看HTTP通信,并且WWW-Authenticates标头没有被发送到远程浏览器。 我已经search并通过configurationsearch,找不到任何会导致此问题的设置。 什么是阻止提示出现? 我们已经尝试closures该服务器上的所有其他网站,以确保正确的网站被击中。 查看HTTP日志后,我可以看到我们的请求进来:它导致我们的应用程序500错误(因为用户没有login)。 这导致我相信Web服务器没有正确地挑战浏览器,因为我们的应用程序代码正在执行。
我有一个问题,从SQL Serverstream式处理文档时,即使用户已通过浏览器中的基本身份validation进行身份validation,身份validation对话框也会提示input凭据。 单击auth对话框上的取消仍然允许文档正常打开。 目标是防止显示auth对话框。 Web服务器位于我们的DMZ中,并且SQL Server框位于组织内部。 在我们开发环境中的Active Directory中,我已经能够将Web服务器委派更改为Kerberos(将此计算机信任到任何服务器),并且auth对话框消失。 我担心的是从安全的angular度来看这是否是正确的做法。 什么是防止authentication对话的正确和最安全的方法,无论怎样的方法都需要我们的运营团队来certificate。 这里是当前正在应用的响应标题和代码(在C#中),可能的办公文档可能有额外的要求,我没有正确configuration。 byte[] b = rda.Attachment; Response.ClearContent(); Response.ClearHeaders(); Response.AppendHeader("Content-Disposition", "filename=" + rda.UploadedFilename); Response.ContentType = mime; Response.BinaryWrite(b); Response.End(); return File(b, mime); 任何想法都会有所帮助。
在我们的DMZ中,我们目前有一个外观或代理网页(asp.net webform),它将请求转发到我们的Intranet中的Web服务(asp.net web服务),然后将Web服务响应中继给调用者。 客户端软件在URL中使用用户名和密码将数据发布到网页上。 网页根据用户名和密码url参数创build基本authentication凭证并调用interal web服务,然后通过web页面响应内容将web服务响应中继给调用者。 我正在研究使用IIS 7的反向代理function而不是使用代理Web页面的可能性。 我们Intranet中的Web服务仍然需要基本身份validation,那么是否可以使用用户名/密码url参数来创buildIIS 7的反向代理function的基本身份validation信用卡?