Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refatorar a autenticação da EJ+Mautic para Oauth2. #366

Open
8 tasks done
davidCarlos opened this issue Jul 16, 2021 · 1 comment
Open
8 tasks done

Refatorar a autenticação da EJ+Mautic para Oauth2. #366

davidCarlos opened this issue Jul 16, 2021 · 1 comment
Assignees
Labels
Divida técnica Tarefa que foi iniciada em sprints anteriores mas não foi concluída ej-api Correções e features na api da EJ ej-server Correções e features na aplicação django história técnica Funcionalidades que entregam valor ao sistema, mas não ao usuário prioridade::media Nós iremos trabalhar nessa issue assim que possível, caso não haja nenhum bug ou feature crítica
Milestone

Comments

@davidCarlos
Copy link

davidCarlos commented Jul 16, 2021

Atualmente, o mecanismo de autenticação entre EJ e Mautic é feito via Basic. Esse mecanismo de autenticação só deve ser utilizado em ambientes locais e de desenvolvimento, uma vez que precisamos guardar em texto aberto as credenciais. Se salvarmos como campos de senha, não é possível recuperar os dados para autenticar no Mautic. Esta issue deve refatorar esse mecanismo para utilizar Oauth2, conforme consta na documentação do Mautic.

Tarefas

  • Atualizar a model com os campos de client_id, client_secret e code
  • Atualizar forms com os campos de client_id, client_secret
  • Implementar redirecionamento do usuário da EJ para o Mautic, seguindo primeiro passo da documentação;
  • Ao voltar para a EJ, recuperar o código que o mautic incluiu na URL;
  • Fazer requisição POST no mautic, na rota /oauth/v2/token, com o código extraido da URL;
  • Armazenar no banco as informações que virão no response da requisição POST. O token será utilizado para conectar na API do mautic;
  • Quando o token expirar, requisitar um novo token no Mautic utilizando o refresh_token, que foi salvo no banco anteriormente;
  • Refazer a requisição para criação do contato, mudando o tipo de autenticação

https://developer.mautic.org/#oauth-2

@davidCarlos davidCarlos added ej-api Correções e features na api da EJ ej-server Correções e features na aplicação django história técnica Funcionalidades que entregam valor ao sistema, mas não ao usuário prioridade::media Nós iremos trabalhar nessa issue assim que possível, caso não haja nenhum bug ou feature crítica labels Jul 20, 2021
@davidCarlos davidCarlos added this to the demo.eco 0.13 milestone Jul 23, 2021
@shayanealcantara
Copy link
Member

shayanealcantara commented Jul 26, 2021

@davidCarlos para as requisições desses endpoints, é necessário o client_id e o client_secret que está cadastrado na instância do Mautic, que são únicos para cada instância. Como podemos extrair isso do usuário?

@davidCarlos davidCarlos added the Divida técnica Tarefa que foi iniciada em sprints anteriores mas não foi concluída label Jul 30, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Divida técnica Tarefa que foi iniciada em sprints anteriores mas não foi concluída ej-api Correções e features na api da EJ ej-server Correções e features na aplicação django história técnica Funcionalidades que entregam valor ao sistema, mas não ao usuário prioridade::media Nós iremos trabalhar nessa issue assim que possível, caso não haja nenhum bug ou feature crítica
Projects
None yet
Development

No branches or pull requests

2 participants