|
|
|
||||||||||||||||||||||
|
|||||||||||||||||||||||
|
|||||||||||||||||||||||
Parceiros - CSS para Web Design - S.O.S Designers - Slackware-Brasil - Crie seu Web site - Oficina da Net |
Proteger pastas mediante usuários em ApacheComo proteger uma pasta e autentificação e autorização de usuários com Mysql e Apache. mod_auth_mysql. 1º. Criar um arquivo de chaves fora da parte pública:
-htpasswd -c /rota/passwords Carlos Ao fazê-lo, pedirá que se introduza a chave, e esta será codificada, escrevendo o arquivo. 2º Criar um novo arquivo, na mesma localização que "rota", que se chamará "groups" na qual se armazenarão os grupos, por agora um, para isso escrever a seguinte linha e salvar o arquivo: usuariosAutenticados: Carlos Desta forma, deveria ter um arquivo que se chame passwords, e que contenha uma linha com os dados do usuário Carlos, e um arquivo, com nome groups, que contém uma linha definindo um grupo chamado usuariosAutenticados, do qual só o usuário Carlos faz parte. 3º Criar um arquivo com o nome .htaccess na pasta que se quer proteger, e escrever as seguintes linhas e salvar o arquivo: AuthType Basic AuthName "ServidorProvasCarlos" AuthUserFile /rota/passwords AuthGroupFile /rota/groups Require group usuariosAutenticados A explicação do conteúdo do arquivo é a seguinte:
Ao invés de realizar as autorizações a grupos completos, se pode autorizar a um usuário determinado mudando a última linha por "Require user Carlos", desta forma só se autorizará ao usuário Carlos. Pode-se permitir o acesso a todos os usuários identificados mediante a introdução da seguinte diretriz "Require valid-user". O fato de que esta diretriz esteja incluída no arquivo, faz com que as demais não tenham efeito. Autenticação e autorização de usuários com Mysql e Apache. mod_auth_mysql. Em capítulos anteriores explicamos como controlar a autenticação e a autorização de usuários com o mod_auth. Este módulo tem como característica o que armazena os nomes de usuário, as senhas e os grupos em arquivos de texto que devem ser escritos e gerenciados pelo administrador do sistema. Esta solução é obviamente pouco escalável, já que enquanto o número de usuários e de grupos é elevado, o gerenciá-los e controlá-los pode ser um problema. Por este motivo existe o mod_auth_mysql, este módulo permite gerenciar a autenticação e autorização, armazenando os usuários e os grupos em tabelas de Mysql, de forma que inclusive se podem gerenciar mediante um painel de controle escrito em php. Para configurar o módulo em Linux, será necessário extraí-lo e executar: ./configure --with-mysql=/usr/local/mysql --with-apache=/usr/local/apache substituindo o lugar onde se encontra a instalação de mysql ede apache. Para utilizar o ódulo é necessário dispor ao menos de uma tabela onde se armazenam os usuários e outra onde se armazenam os grupos. Para isso, pode-se criar uma tabela usuários com os campos, nome e password, e outra tabela chamada grupos com os campos grupo, usuário, armazenando uma entrada por cada usuário que tiver um grupo. A configuração é a seguinte: Em primeiro lugar será necessário estabelecer o servidor, o usuário e a senha da conexão com o banco de dados, isto se fará escrevendo a seguinte linha no arquivo httpd.conf, e substituindo os valores pelos corretos: Auth_MySQL_Info <host> <user> <password> Para configurar o módulo será necessário estabelecer os valores das seguintes diretrizes do módulo: Auth_MySQL_DB: nome do banco de dados Auth_MySQL_Password_Table: nome do banco de dados que contém os nomes de usuário e as senhas. Auth_MySQL_Username_Field: nome do campo da tabela que contém o usuário. Auth_MySQL_Password_Field: nome do campo da tabela que contém a senha do usuáario. Auth_MySQL_Group_Table: nome da tabela que contém os usuários e os grupos aos que pertencem. Auth_MySQL_Group_Field: nome do campo da tabela que contém o nome do grupo Auth_MySQL_Empty_Passwords on/off para determinar se se aceitam usuários com senhas vazias. Auth_MySQL_Encryption_Types para especificar o tipo de encriptação que se utilizará para armazenará a chave do usuário dentro do banco de dados. Auth_MySQL_Non_Persistent on/off para especificar se se desejam utilizar conexões persistentes. Ademais, será necessário estabelecer as seguintes diretrizes de core para seu correto funcionamento: AuthName: com o nome do domínio AuthType: estabelecido a Basic Uma vez posto em andamento, o funcionamento é análogo ao módulo mod_auth.
Autoria e outras referências sobre este artigo Dentro deste artigo: + 1 manual relacionado + 1 categoria relacionada
Manuais relacionados com este artigo Dentro de Instalação e configuração de Apache Anterior: Segurança em Apache I Categorias relacionadas Através das categorias do nosso diretório podem ser encontrados outros tipos de recursos relacionados com este artigo: + Entrar em ApacheComentários dos visitantes Os comentários dos visitantes são para ampliar a informação do artigo. Todos podem participar.
|
| Sobre nós | Copyright | Anuncie | Entrar em contato | <criarweb> |