webdav, controlando o acesso à pasta

1

Na raiz (/ var / www / webdav /) do meu compartilhamento do webdav eu tenho duas pastas:

valid
myuser

Gostaria que a pasta valid fosse acessível a qualquer usuário válido. Então eu fiz:

Alias /webdav /var/www/webdav/
<Location /webdav>
    DAV On
    AuthType Digest
    AuthName "webdav"
    AuthUserFile /etc/apache2/users.password
    Require valid-user
</Location>

e gostaria que a pasta myuser fosse acessada somente por myuser , então:

Alias /myuser /var/www/webdav/myuser
<Location /myuser>
    DAV On
    AuthType Digest
    AuthName "webdav"
    AuthUserFile /etc/apache2/users.password
    Require user myuser
</Location>

Problema: Outro usuário (não myuser) está obtendo acesso ao webdav / myuser /.

O que estou fazendo de errado?

    
por KcFnMi 02.04.2017 / 16:25

2 respostas

2

<Location> corresponde a URLs, portanto, o URL webdav/myuser é coberto apenas pela primeira regra com a restrição mais permissiva. Você precisaria mudar para <Directory> ou alterar o segundo bloco para <Location /webdav/myuser>

    
por 02.04.2017 / 16:33
0

Ainda estou curioso sobre como a abordagem <Directory> seria usada pelo @Sven.

Mas o seguinte parece resolver o problema:

Alias /webdav /var/www/webdav/
<Location /webdav>
    DAV On
    AuthType Digest
    AuthName "webdav"
    AuthUserFile /etc/apache2/users.password
    Require valid-user
</Location>

Alias /webdav/myuser /var/www/webdav/myuser
<Location /webdav/myuser>
    DAV On
    AuthType Digest
    AuthName "webdav"
    AuthUserFile /etc/apache2/users.password
    Require user myuser
</Location>
    
por 02.04.2017 / 16:50