Skip to Content
TestingLietotnes vides mainīgie

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

MethodPathPurpose
GET/api/apps/{app_id}/envMaskēts app atslēgu saraksts un versijas stāvoklis
PUT/api/apps/{app_id}/envTransakcionāls set/delete app atslēgām
POST/api/apps/{app_id}/env/revealAuditēts vienas app atslēgas plaintext reveal
GET/api/account/envMaskēts account atslēgu saraksts
PUT/api/account/envTransakcionāls set/delete account atslēgām
POST/api/account/env/revealAuditēts vienas account atslēgas plaintext reveal
PUT/api/apps/{app_id}/env/managedKonfigurē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.