api-admim/app/rbac
RicardoJDaleprane 91a4568db1 Commit Inicial 2025-09-18 15:52:28 -03:00
..
README.txt Commit Inicial 2025-09-18 15:52:28 -03:00
__init__.py Commit Inicial 2025-09-18 15:52:28 -03:00
auth.py Commit Inicial 2025-09-18 15:52:28 -03:00
bkp_classes_customizadas.py Commit Inicial 2025-09-18 15:52:28 -03:00
classes_customizadas.py Commit Inicial 2025-09-18 15:52:28 -03:00
modelos.txt Commit Inicial 2025-09-18 15:52:28 -03:00
permissions.py Commit Inicial 2025-09-18 15:52:28 -03:00
rbac.py Commit Inicial 2025-09-18 15:52:28 -03:00
routes_login.py Commit Inicial 2025-09-18 15:52:28 -03:00
routes_usuario_logado.py Commit Inicial 2025-09-18 15:52:28 -03:00
schemas.py Commit Inicial 2025-09-18 15:52:28 -03:00

README.txt

Instruções para integração do módulo RBAC:

1. Copie a pasta 'rbac' para o diretório raiz do seu projeto.

2. Instale a dependencias
    - pip install  fastapi-users[sqlalchemy]

3. Adicione o modelo 'User' ao seu projeto:
   - Copie o conteúdo do arquivo 'user_model_snippet.txt' para o seu arquivo de modelos.

4. Inclua as rotas protegidas no seu 'main.py':
   - Importe e inclua as rotas:
     from rbac.routes import router as rbac_router
     app.include_router(rbac_router)

5. Configure as dependências e sessões do banco de dados conforme necessário.

6. Exemplo de como adicionar a verificação de permissão nas rotas:
```python
from fastapi import APIRouter, Depends
from rbac.permissions import verify_permissions

router = APIRouter()

@router.get("/admin-only")
async def admin_only_route(user: User = Depends(verify_permissions([1]))):
    return {"message": "This is an admin-only route"}

7. Exemplo importação das rotas

from rbac.routes import router as rbac_router

app.include_router(rbac_router, prefix="/auth", tags=["auth"])