Autenticação do Apache para vários diretórios

1

Tenho um site em execução no apache 2.2.3. Diretório raiz do site contém três diretórios. Eu quero configurar a autenticação para esses diretórios como abaixo

  1. apenas o usuário1 pode navegar em todas as páginas

  2. user2 só pode acessar mydomain.com/dir1 /

  3. user3 só pode acessar mydomain.com/dir2 /

  4. user4 só pode acessar mydomain.com/dir3 /

Eu testei abaixo da configuração, mas somente o usuário1 pode navegar no site. Outros usuários não conseguem acessar o site.

<directory /var/www/html/example>
        AuthUserFile /etc/httpd/user1-htpasswd
        AuthName "Resricted"
        AuthType Basic
        Require user user1
</directory>

<directory /var/www/html/example/dir1/>
        AuthUserFile /etc/httpd/user2-htpasswd
        AuthName "Resricted"
        AuthType Basic
        Require user user2
</directory>

<directory /var/www/html/example/dir2/>
        AuthUserFile /etc/httpd/user3-htpasswd
        AuthName "Resricted"
        AuthType Basic
        Require user user3
</directory>

Por favor me guie para o mesmo. Agradecemos antecipadamente.

    
por Vaibhav Panmand 07.02.2013 / 15:48

2 respostas

1

Ele deve funcionar se você colocar todas as informações de login de seus usuários em um arquivo passwd e, em seguida, fizer algo assim (não testado)

<directory /var/www/html/example/dir1/>
        AuthUserFile /etc/httpd/users-htpasswd
        AuthName "Resricted"
        AuthType Basic
        Require user user1
        Require user user2
</directory>

<directory /var/www/html/example/dir2/>
        AuthUserFile /etc/httpd/users-htpasswd
        AuthName "Resricted"
        AuthType Basic
        Require user user1
        Require user user3
</directory>
    
por 07.02.2013 / 15:53
0

Eu apenas tropecei nessa questão e quero adicionar:

Geralmente, você não deseja listar todos os usuários na declaração exigida

Require user user 1...user x

use

Require valid-user

se você listar todos os usuários de qualquer maneira ou adicionar os usuários a um grupo

Require group myGroup

Para isso você adiciona a declaração

AuthGroupFile /your/path/groupFile

O conteúdo de groupFile é algo como:

myGroup: user1 user2 user3

    
por 20.08.2017 / 13:35

Tags