54 lines
1.3 KiB
Markdown
54 lines
1.3 KiB
Markdown
# Admin User Setup - SQL Commands
|
|
|
|
## 1. Agregar columna a BD (Auto-ejecutado)
|
|
La migración SQL se encuentra en: `migrations/001_add_is_admin_to_usuarios.sql`
|
|
|
|
Ejecutar manualmente si es necesario:
|
|
```sql
|
|
ALTER TABLE `voxpopuli_users`.`usuarios`
|
|
ADD COLUMN `is_admin` BOOLEAN NOT NULL DEFAULT FALSE AFTER `biografia`,
|
|
ADD INDEX `idx_is_admin` (`is_admin`);
|
|
```
|
|
|
|
## 2. Promover usuario a admin
|
|
```sql
|
|
UPDATE `voxpopuli_users`.`usuarios`
|
|
SET `is_admin` = TRUE
|
|
WHERE `user_id` = 1;
|
|
```
|
|
|
|
## 3. Listar usuarios admin
|
|
```sql
|
|
SELECT `user_id`, `nombre`, `email`, `is_admin`
|
|
FROM `voxpopuli_users`.`usuarios`
|
|
WHERE `is_admin` = TRUE;
|
|
```
|
|
|
|
## 4. Revocar permisos admin
|
|
```sql
|
|
UPDATE `voxpopuli_users`.`usuarios`
|
|
SET `is_admin` = FALSE
|
|
WHERE `user_id` = 1;
|
|
```
|
|
|
|
## API Usage
|
|
|
|
### Endpoints de Moderación (requieren token JWT de admin)
|
|
```bash
|
|
# Usar token JWT en header Authorization
|
|
curl -X POST "http://localhost:8003/moderation/reports/delete" \
|
|
-H "Authorization: Bearer YOUR_JWT_TOKEN" \
|
|
-H "Content-Type: application/json" \
|
|
-d '{
|
|
"report_id": 123,
|
|
"reason": "Contenido ofensivo",
|
|
"description": "Violación de políticas"
|
|
}'
|
|
```
|
|
|
|
### Obtener usuario y verificar is_admin
|
|
```bash
|
|
GET http://localhost:8000/users/{user_id}
|
|
# Response incluye "is_admin": true/false
|
|
```
|