Skip to Content
TestingAlkalmazás környezeti változói

Alkalmazás környezeti változói

Az OpenFactory képes alkalmazás- és fiókszintű környezeti értékeket tárolni, titkosítani őket nyugalmi állapotban, és deploy során a jelölt app VM-be írni. Korai, fájlalapú titoktár, nem kezelt vault.

Hatókör és precedencia

  • A fiók értékei újrafelhasználható alapértelmezések minden, a fiókhoz tartozó alkalmazás számára.
  • Az alkalmazás értékei felülírják az azonos nevű fiók értékeit.
  • A kezelt értékeket egy beállított producer token írja, és rögzíti a kulcs tulajdonos producert.
  • A megváltozott érték növeli az env_version értékét; a sikeres deploy rögzíti az alkalmazott verziót. Eltérés redeploy szükségességét jelenti.

A neveknek nagybetűs környezeti azonosítóknak kell lenniük, legfeljebb 128 karakter hosszúak lehetnek, és nem használhatják a fenntartott OPENFACTORY_ előtagot. A felhasználói értékek 8 KiB-ra, az alkalmazás pedig 100 kulcsra korlátozódik.

MCP munkafolyamat

A listázó műveletek mindig maszkolják az értékeket. Csak szükség esetén fedd fel egy értéket:

set_app_env( app_id="550e8400-e29b-41d4-a716-446655440000", set={"API_BASE_URL": "https://api.example.internal"} ) list_app_env(app_id="550e8400-e29b-41d4-a716-446655440000") reveal_app_env( app_id="550e8400-e29b-41d4-a716-446655440000", name="API_BASE_URL" )

Ugyanez a minta elérhető set_account_env, list_account_env és reveal_account_env formában is. Az alkalmazásszintű set/delete műveletek env_version és redeploy_hint értéket adnak vissza; az érték beállítása nem módosít futó VM-et.

REST felület

MethodPathPurpose
GET/api/apps/{app_id}/envMaszkolt alkalmazáskulcs-lista és verzióállapot
PUT/api/apps/{app_id}/envTranzakciós set/delete alkalmazáskulcsokhoz
POST/api/apps/{app_id}/env/revealAuditált plaintext reveal egy alkalmazáskulcshoz
GET/api/account/envMaszkolt fiókkulcs-lista
PUT/api/account/envTranzakciós set/delete fiókkulcsokhoz
POST/api/account/env/revealAuditált plaintext reveal egy fiókkulcshoz
PUT/api/apps/{app_id}/env/managedBeállított producer managed kulcsokat publikál
DELETE/api/apps/{app_id}/env/managed/{name}A producer eltávolítja a saját managed kulcsát

A felhasználói felületek érvényesítik a feloldott tulajdonosi kontextust. A managed endpointok <kid>.<secret> alakú bearer credentialt használnak az operátor által beállított producer-token fájlból; enélkül a fájl nélkül a producer API unavailable értéket ad vissza.

Deploy viselkedés

Deploy közben a backend visszafejti a fiók értékeit, ráhelyezi az alkalmazás értékeit, hozzáadja a platform runtime mezőit, és 0600 móddal írja a /etc/openfactory/app.env fájlt a VM-be. A folyamat ezzel a fájllal indul környezetként. Ha a visszafejtés, a fájl kézbesítése vagy az indítás sikertelen, a jelöltet nem emelik elő.

Biztonsági határ

  • A tárolt értékek Fernet titkosítást használnak. Az operátornak biztosítania és védenie kell az OPENFACTORY_ENV_MASTER_KEY értékét; elvesztése vagy cseréje visszafejthetetlenné teszi a meglévő értékeket.
  • A list válaszok maszkoltak. Az explicit reveal és mutáció JSONL audit eventet fűz hozzá.
  • A jelenlegi tárolás és audit trail helyi fájlok. Nem adnak hardware-backed keys, multi-party approval, tamper-evident logging, automatic rotation vagy disaster-recovery guarantee képességet.
  • Az alkalmazás- és deploy naplók még nem adnak teljes secret-redaction boundary-t. Az a folyamat, amely kiírja a környezetét, credential-bearing URL-t vagy titkot error üzenetben, naplókban és test evidence-ben is kiszivárogtathatja.

Emiatt ne használja ezt a preview store-t éles hitelesítő adatokhoz, amíg a telepítésének nincs független access controls, backup and restore tesztje, log-redaction validation, retention rules és dokumentált key-rotation eljárása. Soha ne tegyen secrets értékeket recipes, source code, commands, URLs, test descriptions vagy assertion expectations mezőbe.

Lásd: Alkalmazás telepítése a jelölt előléptetésének folyamatához.