3.1 KiB
3.1 KiB
Hemligheter och miljövariabler — Cibello
Enda sanningskälla: AWS Systems Manager Parameter Store (/cibello/prod/* i eu-north-1).
Serverns /opt/cibello-platform/.env härleds ALLTID ur SSM via sync-env-from-ssm.py.
Inga handkopior får drifta.
SSM-parameter → env-var
| SSM-parameter | Miljövariabel | Kommentar |
|---|---|---|
/cibello/prod/aamos-api-key |
AAMOS_API_KEY |
Endast när AAMOS_MODE=http |
/cibello/prod/db-password |
byggd in i DATABASE_URL / TEST_DATABASE_URL |
RDS-användare cibello_admin |
/cibello/prod/entitlement-signing-secret |
ENTITLEMENT_SIGNING_SECRET |
Signerar prenumerationsrättigheter |
/cibello/prod/eoc-push-token |
EOC_PUSH_TOKEN |
Ops-summary push till EOC |
/cibello/prod/gemini-api-key |
GEMINI_API_KEY |
AAMOS_MODE=gemini |
/cibello/prod/google-service-account-json |
GOOGLE_SERVICE_ACCOUNT_JSON |
Google Play service account (JSON) |
/cibello/prod/jwt-access-secret |
JWT_ACCESS_SECRET |
Access-token-signering |
/cibello/prod/jwt-refresh-secret |
JWT_REFRESH_SECRET |
Refresh-token-signering |
/cibello/prod/smtp-pass |
SMTP_PASS |
SMTP-lösen för hello@cibello.app |
Föråldrade / dubbla parametrar (rensas vid tillfälle): /cibello/prod/entitlement-signing, /cibello/prod/jwt-access, /cibello/prod/jwt-refresh.
Icke-hemliga värden
Följande ligger fortfarande hårdkodade i infrastructure/deployment/sync-env-from-ssm.py
och kan flyttas till SSM (String-typ) om de behöver ändras ofta:
API_BASE_URL,VITE_API_BASE_URL,CORS_ORIGINSS3_BUCKET,S3_REGION,S3_MODEGEMINI_MODEL,GEMINI_TIMEOUT_MS,GEMINI_DAILY_BUDGET_USDDATABASE_CA_CERT, DB-host/name/user (kan överstyras via env)
Rotation
- Skriv nytt värde till SSM:
aws ssm put-parameter --name /cibello/prod/<namn> --value '<värde>' --type SecureString --overwrite --region eu-north-1 - Kör på prod-servern:
python3 /opt/cibello-platform/infrastructure/deployment/sync-env-from-ssm.py - Starta om API + worker.
- Verifiera
/readyzoch kör röktest.
Regler
- Aldrig committa
.env, secrets eller nycklar. - Aldrig skriva secrets i chatt, loggar eller shell-historik (
set +x). - Produktionsserverns instansroll (
cibello-app) har endastssm:GetParameter; skrivrättigheter kräver gateway-operator medplatform-admin. - RDS-lösenordet roteras med både
ALTER ROLE ... WITH PASSWORDoch SSM-uppdatering;sync-env-from-ssm.pybygger omDATABASE_URLautomatiskt.