Ter credenciais específicas de htaccess para um URL diferente do restante do site

1

Estou tentando configurar um site para que eu tenha um nome de usuário e senha necessários para acessar o site em geral, mas para um local específico é necessário um nome de usuário e senha diferentes, com o nome de usuário e senha mais gerais não funcionando essa localização.

Isso é do meu httpd.conf no momento:

<Location "/store/dashboard">
    AuthType Basic
    AuthName "Please Enter Password"
    AuthUserFile /home/user/webapps/blue_webapp/.htpasswd
    Require user blueadmin
</Location>

<Location "/">
    AuthType Basic
    AuthName "Please Enter Password"
    AuthUserFile /home/user/webapps/blue_webapp/.htpasswd
    Require user blue
</Location>

O problema é que o segundo bloco de localização parece anular o primeiro. Quando eu mudo o segundo bloco de localização para requerer um usuário válido eu posso logar na localização / store / dashboard com blueadmin, mas isso também significa que o blueadmin pode ser usado para acessar o resto do site que não é o que eu quero.

Como posso corrigir isso?

    
por Jake Rankin 22.11.2018 / 13:41

2 respostas

1

Eu não posso comentar, então devo enviar uma resposta.

O problema é (até onde eu sei): você não precisa acessar /store/dashboard mas você também precisa ter o direito de ver / porque /store/dashboard é um subdiretório de / .

Você pode usar um subdomínio:

/ = > example.com

/store/dashboard = > dashboard.example.com

Então você pode / deve usar 2 vhosts com o próprio diretório / .

Mas não tenho certeza.

    
por 22.11.2018 / 13:56
0

The problem is the second location block seems to override the first.

Sim.

Sinto que devo estar perdendo alguma coisa aqui, mas você só precisa reverter seus dois <Location> blocks:

<Location "/">
  :
  Require user blue
</Location>

<Location "/store/dashboard">
  :
  Require user blueadmin
</Location>

Agora, o usuário blue pode acessar o site inteiro, exceto /store/dashboard . E blueadmin só pode acessar /store/dashboard e não o resto do site. Em outras palavras, "o segundo bloco de localização sobrescreve o primeiro". Qual parece ser o que você precisa?

No entanto, um possível problema com esse cenário é que blueadmin não pode acessar nenhum recurso (possivelmente compartilhado ) fora da árvore% URL /store/dashboard . Mas presumo que isso não seja um problema no seu cenário?

    
por 22.11.2018 / 22:28