使用基本身份验证和匿名浏览的Apache背后的Artifactory

时间:2012-09-11 14:41:32

标签: apache basic-authentication artifactory

我正在尝试使用基本身份验证在Apache代理后面运行Artifactory。我已经为其他一些webapps(Jira,Jenkins,AnthillOS)做了这个,但是我遇到了Artifactory的问题。 Apache为独立的Artifactory服务器配置代理/ artifactory,并为/ artifactory路径定义基本auth:

<Location "/artifactory">
  AuthUserFile /prod/data/apachePasswords
  AuthName "My Realm"
  AuthGroupFile /dev/null
  AuthType Basic
  Require valid-user
</Location>

在Artifactory中激活匿名浏览。

当我尝试通过Web浏览器进行访问时,我首先从Apache接收身份验证对话框。成功输入这些凭据后,我将获得另一个身份验证对话框,这个对话框用于“Artifactory Realm”。在输入Artifactory帐户的凭证后,我重新呈现了第一个身份验证对话框并继续循环。

我想获得第一个对话框,然后直接进入Artifactory进行匿名浏览。如果我在Apache中禁用身份验证,我可以匿名浏览Artifactory,但是当我在Apache中启用基本身份验证时,我会得到两个单独的循环身份验证对话框。我有什么想法可以杀死第二个对话框吗?

2 个答案:

答案 0 :(得分:3)

本周我遇到了同样的问题。 “Artifactory Realm”的登录名与Artifactory(admin / password)的默认登录名相同。当您登录“Artifactory Realm”时,它会将您登录到Artifactory gui。我正在使用Artifactory 2.6.5

答案 1 :(得分:1)

我遇到了同样的问题,并通过在Apache代理中取消设置授权标头来修复它。看起来Artifactory正在被这个授权标题(来自第一个对话框)感到不安,并且需要一个好的&#34;第二个对话框中的Artifactory密码。这是我的配置:

<Location / >
    AuthType basic
    AuthName "Apache authenticate"
    AuthUserFile /var/www/repo.domain.com/.htpasswd
    AuthGroupFile /dev/null
    Require valid-user

    RequestHeader unset Authorization

    ProxyPass http://repo.company.local:8081/artifactory/repo/
    ProxyPassReverse http://repo.company.local:8081/artifactory/repo/
</Location>

要使用未设置的标题功能,必须启用mod_headers。