Lietotnes vides mainīgie
OpenFactory var glabāt app un account scope vides vērtības, šifrēt tās miera stāvoklī un ierakstīt kandidāta app VM izvietošanas laikā. Tā ir agrīna failos balstīta slepeno datu glabātuve, ne pārvaldīts vault.
Tvērums un prioritāte
- Account vērtības ir atkārtoti lietojamas noklusējuma vērtības katrai šī account app.
- App vērtības pārraksta tā paša nosaukuma account vērtības.
- Pārvaldītās vērtības raksta konfigurēts producer token un reģistrē producer, kuram pieder atslēga.
- Mainīta vērtība palielina
env_version; veiksmīgs deploy reģistrē lietoto versiju. Atšķirība nozīmē, ka nepieciešams redeploy.
Nosaukumiem jābūt lielajiem burtiem vides identifikatoriem, tie ir ierobežoti līdz 128
rakstzīmēm un nevar izmantot rezervēto OPENFACTORY_ prefiksu. Lietotāja vērtības
ir ierobežotas līdz 8 KiB, un app ir ierobežota līdz 100 atslēgām.
MCP darba plūsma
List operācijas vienmēr maskē vērtības. Atklājiet vienu vērtību tikai, ja nepieciešams:
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"
)Tas pats modelis pieejams kā set_account_env, list_account_env un
reveal_account_env. App līmeņa set/delete operācijas atgriež env_version
un redeploy_hint; vērtības iestatīšana nemaina darbojošos VM.
REST virsma
| Method | Path | Purpose |
|---|---|---|
GET | /api/apps/{app_id}/env | Maskēts app atslēgu saraksts un versijas stāvoklis |
PUT | /api/apps/{app_id}/env | Transakcionāls set/delete app atslēgām |
POST | /api/apps/{app_id}/env/reveal | Auditēts vienas app atslēgas plaintext reveal |
GET | /api/account/env | Maskēts account atslēgu saraksts |
PUT | /api/account/env | Transakcionāls set/delete account atslēgām |
POST | /api/account/env/reveal | Auditēts vienas account atslēgas plaintext reveal |
PUT | /api/apps/{app_id}/env/managed | Konfigurēts producer publicē pārvaldītās atslēgas |
DELETE | /api/apps/{app_id}/env/managed/{name} | Producer noņem pārvaldītu atslēgu, kurai pieder |
Lietotāja virsmas piemēro atrisināto īpašnieka kontekstu. Pārvaldītie endpoint izmanto
<kid>.<secret> bearer credential no operatora konfigurētā producer-token
faila; bez tā faila producer API atgriež unavailable.
Deploy uzvedība
Izvietošanas laikā backend atšifrē account vērtības, pārklāj app vērtības, pievieno
platformas runtime laukus un VM ieraksta /etc/openfactory/app.env
ar režīmu 0600. Process tiek palaists ar šo failu kā vidi.
Ja atšifrēšana, faila piegāde vai palaišana neizdodas, kandidāts netiek promoted.
Drošības robeža
- Glabātās vērtības izmanto Fernet šifrēšanu. Operatoram jānodrošina un jāsargā
OPENFACTORY_ENV_MASTER_KEY; to pazaudējot vai aizstājot, esošās vērtības kļūst neatšifrējamās. - List atbildes ir maskētas. Skaidri reveal un mutācijas pievieno JSONL audita notikumu.
- Pašreizējā glabātuve un audita trail ir lokāli faili. Tie nesniedz aparatūras atbalstītas atslēgas, vairāku pušu apstiprinājumu, tamper-evident logging, automātisku rotāciju vai disaster-recovery garantiju.
- Lietotnes un deploy žurnāli vēl nesniedz pilnu secret-redaction robežu. Process, kas izdrukā savu vidi, credential URL vai noslēpumu kļūdā, var to atklāt žurnālos un test evidence.
Tāpēc neizmantojiet šo priekšskatījuma glabātuve production credential, kamēr jūsu deployment nav neatkarīgu piekļuves kontroles, backup un restore testu, log-redaction validācijas, retention noteikumu un dokumentētas key-rotation procedūras. Nekad nelieciet noslēpumus recipes, source code, commands, URLs, test aprakstos vai assertion expectations.
Skatiet Lietotnes izvietošana, lai uzzinātu kandidāta promotion plūsmu.