Adicionar usuário e promover privilégio de administrador

Adicionar usuário no ckan

Para adicionar um usuário no Ckan e atribuir o papel de administrador, deve-se:

1 - Identificar a VM do Ckan no Rancher

  1. Acessar https://rancher2.dds.ufvjm.edu.br/.
  2. Selecionar o ambiente noc-apps-prod onde está localizada a stack Ckan.
  3. Clicar no nome da stack Ckan.
  4. Localizar o serviço do Ckan (ckan-db)
  5. Clicar no nome do serviço

  6. Clicar na aba Containers
  7. 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.

2 - Acessar a VM e localizar o container do Banco de Dados

Conecte-se via SSH à VM apps-prod3

Captura de tela de 2026-09-30 12-19-46.png

O comando SSH abre um terminal seguro na máquina virtual apps-prod3.

Em seguida, liste os containers Docker em execução na VM:

Captura de tela de 2026-10-01 11-28-36.png

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)

3 - Entrar no container de banco do Ckan

Conecte-se ao banco de dados executando o seguinte comando:

Captura de tela de 2026-10-01 11-35-27.png

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.

Captura de tela de 2026-10-01 11-41-47.png

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). 

Na lista de resultados retornados, copie uma das chaves que estão ativas (ex.: a chave do usuário default).

Após copiar a chave, abra outro terminal (sem estar logado em qualquer máquina) para criar um novo usuário.

4 - 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. 

Captura de tela de 2026-10-01 11-50-23.png

Exemplo para copiar e colar (não esqueça de alterar os dados que estão relacionados ao usuário que se pretende criar, tais como  nome, e-mail, senha temporária, etc)

curl -X POST \
https://dados.ufvjm.edu.br/api/3/action/user_create \
-H "Authorization: 803f7db2-f046-4e90-9851-f8d4570793ce" \
-H "Content-Type: application/json" \
-d '{
"name":"dsi",
"email":"sistemas.protic@ufvjm.edu.br",
"password":"Senhadsi*temp"
}'

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 "Authorization: ...": passa o token de autenticação (a apikey admin obtida no passo anterior) para autorizar a criação do usuário.

-H "Content-Type: application/json": Informa a 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). O usuário deve alterar a senha no primeiro acesso.

Captura de tela de 2026-10-01 12-08-47.png

Usuário criado com sucesso!

Para conferir, podemos listar os usuários cadastrados no banco a partir da consulta:

select name, email, sysadmin, state from "user" order by name;

Essa consulta retorna o nome, email e se o usuário é administrador (t) ou não (f).

t = true;

f = false;

Captura de tela de 2026-10-01 12-11-35.png

Pode-se observar que o usuário dsi foi criado e que não possui privilégio de administrador ainda (sysadmin = f).

Promover usuário a Administrador

Caso o novo usuário precise de acesso de administrador, devemos:

  1. Se a sessão do PostgreSQL no container da VM estiver aberta no terminal, vá para ela. Caso contrário volte ao passo 1.
  2. Busque pelo usuário que deseja promover a administrador, usando o comando a seguir:

     

    Captura de tela de 2026-10-01 12-24-04.png
  3. Altere a coluna sysadmin para true (verdadeiro) no registro do usuário especificado e confirme a transação no banco com o COMMIT. 

     

    Captura de tela de 2026-10-01 12-27-38.png

     

  4. Consulte novamente o registro para confirmar que o campo sysadmin agora está como t (true).

     

    Captura de tela de 2026-10-01 12-27-53.png

Pronto. Usuário dsi promovido a administrador do sistema.


Revision #11
Created 30 September 2026 15:05:03 by Amanda Cristina Albano Gonçalves
Updated 1 October 2026 20:17:28 by Ramon Rocha Leite