BAS Auth API é uma aplicação Django que permite o gerenciamento de códigos TOTP (Time-based One-Time Password) para diferentes serviços. Os usuários podem criar, editar e excluir serviços, além de gerar códigos TOTP automaticamente, com suporte para integração via API.
- Gerenciamento de Serviços: Cadastro, edição e exclusão de serviços com chaves TOTP.
- Geração de Códigos TOTP: Criação de códigos temporários automáticos para autenticação.
- Integração via API: Suporte para geração de códigos por requisição externa.
- Interface Web: Interface amigável para os usuários gerenciarem seus serviços.
- Login/Logout: Sistema seguro de autenticação de usuários.
- Python: 3.10 ou superior.
- Django: 5.1.3.
- Banco de Dados: SQLite (ou outro configurado).
- Bibliotecas Adicionais:
djangorestframework
djangorestframework-simplejwt
pyotp
-
Clone o repositório:
git clone https://github.com/seu-usuario/bas-auth-api.git cd bas-auth-api
-
Crie um ambiente virtual:
python -m venv venv source venv/bin/activate # No Windows: venv\Scripts\activate
-
Instale as dependências:
pip install -r requirements.txt
-
Configure o banco de dados:
python manage.py makemigrations python manage.py migrate
-
Crie um superusuário para acessar o painel administrativo:
python manage.py createsuperuser
-
Inicie o servidor de desenvolvimento:
python manage.py runserver
O servidor estará disponível em
http://127.0.0.1:8000
.
- authentication: Gerenciamento de autenticação de usuários.
- otp: Lógica para gerenciamento de chaves TOTP e APIs associadas.
- templates: Arquivos HTML para a interface web.
- static: Arquivos CSS e JavaScript.
- Acesse o sistema em
http://127.0.0.1:8000
. - Faça login com seu usuário e senha.
- Gerencie seus serviços diretamente pela interface.
-
Gerar Código TOTP:
Endpoint:
/api/v1/totp/
Método:POST
Cabeçalho:Authorization: Bearer <token>
Body:{ "nome_servico": "NomeDoServico" }
Resposta:
{ "totp_code": "123456" }
- Faça upload dos arquivos do projeto.
- Configure o ambiente virtual e instale as dependências.
- Configure o WSGI para apontar para o arquivo
wsgi.py
do Django. - Reinicie o aplicativo na interface do PythonAnywhere.
Este projeto é licenciado sob a MIT License. Consulte o arquivo LICENSE
para mais detalhes.
Gabriel Santos de Castro
Entre em contato: [email protected]