Apache2 Basic Auth: usuário @ ip, user2 @ ip2 - Isso é possível?

3

Estou procurando executar um serviço externo para os clientes usarem aqui no meu escritório, enquanto os clientes estão trabalhando remotamente em seus escritórios.

Suposições: O IP do meu escritório e o IP do escritório do cliente são estáticos.

Desejo permitir o acesso a um serviço, por exemplo, um aplicativo de administração segura de autenticação básica de HTTP, para meus clientes.

Existe uma maneira na Autenticação Básica do Apache ou para criar restrições baseadas no Usuário @ IP?

Eu gostaria de:

  • me @ my_office
  • me @ my_home
  • client1 @ their_office1
  • client2 @ their_office2

Para testar, tentei este código:

<Location />
    Satisfy All

    AuthType Basic
    AuthName "Authorisation"
    AuthUserFile /etc/apache2/passwd

    Order deny,allow
    Deny from all
    Allow from 10.0.0.1/32
    Require user me

    Order deny,allow
    Deny from all
    Allow from 10.0.0.2/32
    Require user client1
</Location>

Existe uma maneira conhecida de fazer isso usando o Apache Basic Auth?

Além disso, em vez de receber um "Proibido" para um usuário / senha bem-sucedido de um IP desconhecido, é possível pedir ao Apache para solicitar os detalhes do usuário novamente?

    
por Drew Anderson 16.10.2012 / 13:12

1 resposta

1

Se você estiver usando o Apache httpd 2.4, poderá usar a nova sintaxe para fazer isso.

<RequireAny>

<RequireAll>
  Require IP 10.0.0.1/32
  Require user me
</RequireAll>

<RequireAll>
  Require IP 10.0.0.2/32
  Require user client1
</RequireAll>

</RequireAny>

Esse tipo de coisa seria muito difícil pré-2.4 sem um manipulador de autenticação personalizado.

    
por 17.06.2013 / 15:02