Configurando o FreeBSD e PyKota para receber o JPyKotaGUI

Neste artigo, ensino como configurar o FreeBSD e PyKota para que o JPyKotaGUI rode na plataforma com as funcionalidades necessárias para a administração do PyKota. Este tutorial tem relação com outro artigo minha autoria, que versa sobre Configuração do Servidor de Impressão com Cotas utilizando o PyKota (link na 1ª página). Desde já, boa sorte na implementação!

[ Hits: 4.658 ]

Por: Ricardo Xerfan em 21/02/2019


Configuração do DB do PyKota



Instale o "pgAdmin III" (pode ser em uma máquina Windows), esta ferramenta pode ser baixada gratuitamente da Internet.

Configure uma conexão com o DB do PyKota no FreeBSD. Na página inicial do "pgAdmin III", clique no botão "add a connection to a server" (ícone que parece uma tomada).

No campo "Name", coloque o nome da conexão. Ex.: ConnPykotaFreeBSD

No campo "Host", coloque o endereço IP do servidor FreeBSD (onde está localizado o DB do PyKota). Ex.: 192.168.1.5

Obs.: não mude nada nos outros campos e deixe o campo "Username" com o nome de usuário que está (pgsql).

No campo "Password", coloque a senha que foi definida na hora da configuração do PostgreSQL no tutorial de Instalação e configuração do PyKota citado na 1ª página.

Clique no botão "OK".

Feito isto, a conexão com o DB dentro de "Servers (1)". Ex.: +|_|ConnPykotaFreeBSD (192.168.1.5:5432)

A partir de agora, vamos configurar o DB do PyKota para que consiga trabalhar com os usuários e senhas do JPyKotaGUI.

Extenda a conexão com o DB que foi criada (aperte no +):
  • Em "Databases (3)", selecione e expanda o DB "pykota".
  • Expanda "Schemas (1)", depois expanda também "public".
  • Expanda "Tables (11)".

Perceba que temos várias tabelas, dentre elas a tabela "users" que será com a qual iremos trabalhar a partir de agora.

Expanda a tabela "users", depois expanda "Columns (8)" para vermos as colunas/atributos da mesma.

Perceba que temos os atributos: id, username, email, balance, lifetimepaid, limitby, description, overcharge. Contudo, não temos os atributos (colunas) "passwd" e "admin", que são os necessários para que os usuários façam login no JPyKotaGUI e sejam ou não administradores.

Vamos criar então os atributos citados acima.

Ainda no "pgAdmin III", COM A COLUNA/ATRIBUTO "users" SELECIONADA, clique no botão "Execute arbitrary SQL queries" (ícone que parece uma lupa com a palavra 'SQL' dentro):

Na janela de "Query" que apareceu, dentro da aba "SQL Editor", cole o código abaixo, selecione-o e depois clique no botão "Execute query" (ícone que parece um botão de play verde):

--
-- Alterando tabela users adicionando coluna para manter a senha e
-- adicionando coluna para manter o estado de administrador
--
ALTER TABLE users ADD COLUMN passwd TEXT;
ALTER TABLE users ADD COLUMN admin BOOLEAN;

Obs.: depois de executado os comandos acima, na janela de "Query", no painel "Output pane", dentro da aba "Messages", deverá ser exibida uma mensagem parecida com a abaixo:

Query returned successfully with no result in 31 ms

Se aconteceu tudo certo como acima, você perceberá que foram criadas as colunas/atributos "passwd" e "admin" foram criadas dentro da tabela "users". Caso não tenha visualizado no "pgAdmin III", basta clicar no botão "Refresh the selected object.", ícone com duas setas, uma vermelha e outra verde, formando um círculo.

Agora, vamos ajustar as permissões do usuário "pykotaadmin" nas colunas/atributos recém criadas.

Na janela de "Query", dentro da aba "SQL Editor", cole o código abaixo, selecione-o e depois clique no botão "Execute query" (ícone que parece um botão de play verde):

--
-- Ajustando permissoes
--
GRANT SELECT, INSERT, UPDATE, DELETE ON users TO pykotaadmin;

Obs.: depois de executado os comandos acima, na janela de "Query", no painel "Output pane", dentro da aba "Messages" deverá ser exibida uma mensagem parecida com a abaixo:

Query returned successfully with no result in 32 ms

Atenção: agora vem a parte mais delicada do procedimento, VOCÊ DEVERÁ PRESTAR BASTANTE ATENÇÃO E TER CUIDADO DE FAZER EXATAMENTE IGUAL AOS PASSOS A SEGUIR, caso contrário, poderá acontecer de você NÃO conseguir logar no JPyKotaGUI. Vamos aos passos:

Obs.: se você está seguindo o Tutorial de Instalação e configuração do PyKota citado na 1ª página, já deverá existir um usuário chamado "root" na sua base de dados do PyKota, se for este o caso, pode pular para o passo "Altera-Senha02". Caso contrário, siga normalmente com o passo "Altera-Senha01".

PASSO: Altera-Senha01

Caso você tenha uma base de dados populada do PyKota, você vai precisar verificar quais usuários estão cadastrados e quais seus respectivos ID, para então poder realizar o update na tabela com a senha inicial no usuário que você quiser logar como administrador no JPyKotaGUI. Para isso, basta rodar o comando abaixo na janela de "Query", dentro da aba "SQL Editor":

select * from users order by id;

Feito isto, vai aparecer na janela de "Query", no painel "Output pane", dentro da aba "Data Output" a lista de usuários cadastrados no DB do PyKota com seus respectivos IDs. Basta você verificar qual usuário você vai querer que seja administrador do JPyKotaGUI e anotar o ID (da coluna/atributo id) do mesmo, partindo então para o passo "Altera-Senha02".

Caso não queira nenhum, dos usuário apresentados na consulta, como administrador do JPyKotaGUI, basta inserir um usuário na tabela "users". Para isso, rode o comando abaixo na janela de "Query", dentro da aba "SQL Editor":

insert into users (username) values ('administrador');

Feito isto, deverá retornar o resultado abaixo na janela de "Query", no painel "Output pane", dentro da aba "Messages":

Query returned successfully: one row affected, 12 ms execution time.

Para saber qual ID foi atribuído ao usuário recém criado, basta fazer a consulta citada no começo deste passo "Altera-Senha01" (select * from users order by id;), ou simplesmente:

select * from users where username='administrador';

Feito isto, vai aparecer na janela de "Query", no painel "Output pane", dentro da aba "Data Output" o usuário recém cadastrado.

Obs.: a partir de agora, não vou mais citar os nomes das janelas, painels e abas, senão vai ficar muito repetitivo.

ATENÇÃO: se você é um usuário avançado, vai saber que eu poderia ter adicionado a senha na hora da criação do "user" acima e deve estar se perguntando o por quê de eu não ter feito isto. A resposta é simples, a senha é criptografada "com um hash de 160 bits, equivalente a 40 caracteres", dentro do projeto do JPyKotaGUI com uma função específica para isso e, alguns usuários, têm dificuldades de gerar a mesma. Então, para não deixar dúvidas, faz-se necessário ser um pouco mais detalhado e deixar para criar a senha em um passo separado. Siga agora para o passo abaixo.

PASSO: Altera-Senha02

Agora, vamos criar a senha criptografada do usuário que vai ser administrador do JPyKotaGUI e torná-lo administrador. Para isso, você vai precisar saber o ID que foi atribuído a ele na hora da criação do mesmo dentro do DB PyKota (foi explicado no passo "Altera-Senha01").

Na janela de "Query", dentro da aba "SQL Editor", cole o código abaixo, selecione-o e depois clique no botão "Execute query" (ícone que parece um botão de play verde):

--
-- Alterando senha do usuario criado com script de instalaca
-- Senha: 123 é igual a 40bd001563085fc35165329ea1ff5c5ecbdbbeef
--
UPDATE users
SET passwd='40bd001563085fc35165329ea1ff5c5ecbdbbeef',admin=TRUE
WHERE id=1;

Feito isto, você pode executar a instrução de consulta citada no passo "Altera-Senha01" (select * from users order by id;) e na saída do comando, você vai perceber que o usuário ficou com o campo "senha" e campo "admin" modificado conforme a instrução realizada acima.

Obs.1: você pode alterar essa senha depois no frontend do JPyKotaGUI.

Obs.2: excluídas as instruções contidas no passo "Altera-Senha01", todas as outras instruções SQL foram tiradas do script de atualização do DB PyKota escrito por Rogerio Tomassoni. Como usuários com menos experiências teriam dificuldades em realizar o procedimento, preferi destrinchar o script nas explicações acima que foram um pouco mais detalhadas.

Segue abaixo o referido script:

- Nome do script: updatePostgres-0.0.2.sql
- Autor: Rogerio Tomassoni

--
-- Alterando tabela users adicionando coluna para manter a senha e
-- adicionando coluna para manter o estado de administrador
--
ALTER TABLE users ADD COLUMN passwd TEXT;
ALTER TABLE users ADD COLUMN admin BOOLEAN;
--
-- Ajustando permissoes
--
GRANT SELECT, INSERT, UPDATE, DELETE ON users TO pykotaadmin;
--
-- Alterando senha do usuario criado com script de instalaca
-- Senha: 123 é igual a 40bd001563085fc35165329ea1ff5c5ecbdbbeef
--
UPDATE users
SET passwd='40bd001563085fc35165329ea1ff5c5ecbdbbeef',admin=TRUE
WHERE id=1;

Pronto! Realizadas as configurações do DB PyKota. Vamos agora configurar o Apache-Tomcat.

Página anterior     Próxima página

Páginas do artigo
   1. Observação Inicial
   2. Configuração do DB do PyKota
   3. Configurando arquivo "apache-tomcat-6.0"
   4. Considerações sobre os LOGs do JPyKotaGUI e sobre o modo de inicialização do Tomcat
   5. Considerações sobre as configurações relativas ao projeto do JPyKotaGUI
Outros artigos deste autor

Servidor de impressão com cotas no FreeBSD (CUPS + PostgreSQL + PyKota)

Leitura recomendada

Instalação de Aplicativos no FreeBSD

Introdução ao FreeBSD

FreeBSD Release 11.1 - Introdução, instalação e customização

Apache2 com SSL - Configuração para forçar uso de HTTPS ao invés de HTTP

Introdução ao PC-BSD

  
Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário