Adicionar usuário como administrador
Para adicionar um usuário no Ckan e atribuir o papel de administrador, deve-se seguir os passos:
Identificar a VM do Ckan no Rancher
- Acessar https://rancher2.dds.ufvjm.edu.br/.
- Selecionar o ambiente noc-apps-prod onde está localizada a Stack Ckan.
- Clicar no nome da Stack Ckan.
- Localizar o serviço do Ckan (ckan-db)
-
Clicar no nome do serviço
- Clicar na aba Containers
- Identificar em qual VM o container está rodando (apps-prod3).
Após a identificação da VM no Rancher, devemos abrir um terminal para conectar e acessar o container do banco.
Acessar a VM e bocalizar o container do Banco de Dados
Conecte-se via SSH à VM apps-prod3
O comando SSH abre um terminal seguro na máquina virtual apps-prod3.
Em seguida, liste os containers Docker em execução na VM:
O comando docker ps lista todos os containers ativos do servidor, e | grep ckan filtra a saída para exibir apenas os containers relacionados à stack ckan.
Localize e anote o nome ou ID do container de banco de dados (r-ckan-ckan-db-1-dbfa5298)
Entrar no container de banco do Ckan
Conecte-se ao banco de dados executando o seguinte comando:
O comando psql -U ckan -d ckan irá abrir o terminal do banco PostgreSQL conectando-se com o usuário ckan no banco ckan.
No prompt do PostgreSQL (ckan=#) consulte a lista de usuários cadastrados como administrador.
O comando select name, apikey from "user" where sysadmin=true; retorna o nome e chave de API de todos os usuários cadastrados na tabela "user" que possuem privilégios de administrador do sistema (sysadmin=true).
Copie uma chave ativa (ex.: a chave do usuário default).
Após copiar a chave, abra outro terminal (sem estar logado em qualquer máquina), e vamos criar o novo usuário.
Criar novo usuário via API REST do Ckan
Para criar um usuário novo, abra outro terminal (fora do servidor/VM) e execute a requisição HTTP para a API do Ckan como se segue.
Explicando cada parâmetro usado:
curl -X POST: envia uma requisição HTTP do tipo POST para o endpoint /api/3/action/user_create do Ckan.
-H "Content-Type: application/json": Informa à API do CKAN que os dados enviados no corpo da requisição estão no formato JSON.
-d '{...}': envia o JSON contendo o nome de usuário (name), email (email) e senha temporária (password) para o usuário alterar no primeiro acesso.




