# support db type: sqlite, mysql, postgresql
DB_TYPE=sqlite
# Maximum number of connections to the database connection pool
DATABASE_MAX_CONNECTIONS=100
# Timeout for connecting to the database
DATABASE_TIMEOUT=30
# service request address and port
ATTESTATION_ADDRESS=127.0.0.1:8080
# Scheduled Task Connection Address and port
SCHEDULE_TASK_ADDRESS=127.0.0.1:8081
LD_LIBRARY_PATH=/usr/local/lib

# Log output directory
LOG_OUTPUT_DIR=/etc/attestation_server/ra-log

DB_NAME=RA
DB_USER=abcd
DB_PASSWORD=abcd
DB_ROOT_PASSWORD=abcd
REDIS_PASSWORD=

HTTPS_ADDRESS=127.0.0.1:8443
# 0=HTTP, 1=HTTPS, 2=UDS
COMMUNICATION_PROTOCOL=1
UDS_SOCKET_PATH=/var/run/attestation_service.sock
UDS_SOCKET_PERMISSION=660
SERVER_KEY_PATH=/etc/attestation_server/certs/server.key
SERVER_CERT_PATH=/etc/attestation_server/certs/server.crt
CA_CERT_PATH=/etc/attestation_server/certs/ca.crt

# TCP layer restriction configuration
SERVER_WORKERS=1
SERVER_MAX_CONNECTIONS=50
SERVER_BACKLOG=0

# Security Configuration
MAX_JSON_SIZE=104857600
# Limit the number of requests per second for the management interface
REQUESTS_PER_SECOND=10
BURST_SIZE=5
# Limit the number of requests per second for the challenge interface
CHALLENGE_REQUESTS_PER_SECOND=50
CHALLENGE_BURST_SIZE=10

# SQLite configuration (default database)
SQLITE_DATABASE_URL=sqlite:///var/lib/global-trust-authority/attestation.db

# Enable Redis for distributed locking (false = in-memory lock, single instance)
ENABLE_REDIS=false

# PostgreSQL configuration (uncomment and set DB_TYPE=postgres/postgresql to use)
#POSTGRESQL_DATABASE_URL=postgres://postgres:1234@localhost:5432/RA

# MySQL configuration (uncomment and set DB_TYPE=mysql to use)
#MYSQL_DATABASE_URL=mysql://abcd:abcd@127.0.0.1:3306/RA

# Redis configuration (set ENABLE_REDIS=true and uncomment to use Redis lock)
#REDIS_URL=redis://127.0.0.1/

# MQ service
MQ_HOST=127.0.0.1:29092

ENABLE_APIKEY=false
