imobanco / bb-wrapper

https://pypi.org/project/bb-wrapper/
GNU General Public License v3.0
8 stars 1 forks source link

Autenticação oauth de forma exacerbada #36

Closed rodrigondec closed 2 years ago

rodrigondec commented 2 years ago

Resumo

A cada interação com a API BB é feito uma autenticação Oauth resgatando um token.

Mesmo que sejam feitas duas consultas sequenciais são feitas duas autenticações. Uma para cada consulta.

O ideal é ter uma persistência local (threading) para armazenar o token de autenticação. Dessa forma, cada wrapper conseguiria controlar quando é necessário solicitar uma nova autenticação ou quando utilizar uma já armazenada.

Detalhes técnicos

Token

O Token do BB tem uma duração de 10 minutos.

Utilizar um token expirado na API deve retornar um erro 401 ou 403 de falha de autenticação.

Permissões do token para API's diferentes

Cada token possui as permissões atribuídas a ele. Cada API do BB possui permissões diferentes.

Então por exemplo, para consultar tanto a API de Pagamentos em Lote e API de Cobranças ainda será necessário solicitar dois tokens diferentes. Já que não é possível solicitar um token universal que sirva para TODAS as API's.

Por causa disso, CADA wrapper de cada API deverá fazer o controle do seu token e o comportamento de todos os wrappers perante a isso deve ser igual!

Tarefas