mirror of
https://github.com/prowler-cloud/prowler.git
synced 2026-07-23 04:21:52 +00:00
e1a12bcb14
* feat(Backend): PRWLR-3989 add RLS to postgresql db and base models * feat(API): PRWLR-3989 add TenantMiddleware * chore(API, Backend): PRWLR-3989 create new db user without RLS bypass on migrations * chore(Backend): PRWLR-3989 fix RLS bypasser for POST requests * fix(Backend): PRWLR-3989 fix user permissions when migrating new models * chore(Backend): PRWLR-3989 add testing view for RLS manual tests * feat(API): PRWLR-3989 add tenant_id to API logging * chore(API, Backend): PRWLR-3989 add TODOs * test(API): PRWLR-3989 add new middleware unit tests * chore(API): PRWLR-3989 refactor RLS code * fix(tests): PRWLR-3989 fix testing db connector * chore: PRWLR-3989 add references to JIRA tickets * fix: PRWLR-3989 remove bypass logic and fix serializers * fix: PRWLR-3989 improve drop SQL query for RLS models * feat(Backend): PRWLR-3989 add specific permissions on each model * fix(Backend): PRWLR-3989 fix database routing and grant select perms * fix(test): PRWLR-3989 fix routing issues with unit tests * chore: PRWLR-3989 remove references to JIRA tickets * chore(Backend): PRWLR-3989 adjust privileges for user on table tenant * chore: PRWLR-3989 add comments on migrations
64 lines
1.6 KiB
YAML
64 lines
1.6 KiB
YAML
services:
|
|
restful-api:
|
|
build:
|
|
dockerfile: Dockerfile
|
|
image: prowler-restful-api
|
|
env_file:
|
|
- path: ./.env
|
|
required: false
|
|
ports:
|
|
- "${DJANGO_PORT:-8000}:${DJANGO_PORT:-8000}"
|
|
profiles:
|
|
- prod
|
|
depends_on:
|
|
postgres:
|
|
condition: service_healthy
|
|
entrypoint:
|
|
- "../docker-entrypoint.sh"
|
|
- "prod"
|
|
|
|
restful-api-dev:
|
|
build:
|
|
dockerfile: Dockerfile
|
|
target: dev
|
|
image: prowler-restful-api-dev
|
|
environment:
|
|
- DJANGO_SETTINGS_MODULE=config.django.devel
|
|
- DJANGO_LOGGING_FORMATTER=human_readable
|
|
env_file:
|
|
- path: ./.env
|
|
required: false
|
|
ports:
|
|
- "${DJANGO_PORT:-8080}:${DJANGO_PORT:-8080}"
|
|
volumes:
|
|
- "./src/backend:/home/prowler/backend"
|
|
- "./pyproject.toml:/home/prowler/pyproject.toml"
|
|
profiles:
|
|
- dev
|
|
depends_on:
|
|
postgres:
|
|
condition: service_healthy
|
|
entrypoint:
|
|
- "../docker-entrypoint.sh"
|
|
- "dev"
|
|
|
|
postgres:
|
|
image: postgres:16.3-alpine
|
|
ports:
|
|
- "${POSTGRES_PORT:-5432}:${POSTGRES_PORT:-5432}"
|
|
hostname: "postgres-db"
|
|
volumes:
|
|
- ./_data/postgres:/var/lib/postgresql/data
|
|
environment:
|
|
- POSTGRES_USER=${POSTGRES_ADMIN_USER:-prowler}
|
|
- POSTGRES_PASSWORD=${POSTGRES_ADMIN_PASSWORD:-S3cret}
|
|
- POSTGRES_DB=${POSTGRES_DB:-prowler_db}
|
|
env_file:
|
|
- path: ./.env
|
|
required: false
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "sh -c 'pg_isready -U ${POSTGRES_ADMIN_USER:-prowler} -d ${POSTGRES_DB:-prowler_db}'"]
|
|
interval: 5s
|
|
timeout: 5s
|
|
retries: 5
|