Skip to Content
TestingUygulama Ortamı Değişkenleri

Uygulama Ortamı Değişkenleri

OpenFactory, uygulama kapsamlı ve hesap kapsamlı ortam değerlerini depolayabilir, bunları beklemedeyken şifreleyin ve dağıtım sırasında bunları bir aday uygulama sanal makinesine dönüştürün. Bu, yönetilen bir kasa değil, eski bir dosya destekli gizli depodur.

Kapsam ve öncelik

  • Hesap değerleri, söz konusu hesaba ait olan her uygulama için yeniden kullanılabilir varsayılanlardır.
  • Uygulama değerleri, aynı ada sahip hesap değerlerini geçersiz kılar.
  • Yönetilen değerler, yapılandırılmış bir üretici belirteci tarafından yazılır ve anahtarın sahibi olan yapımcı.
  • Değiştirilen değer env_version artar; Başarılı bir dağıtım şunları kaydeder: uygulanan versiyon Bir fark, yeniden konuşlandırmanın gerekli olduğu anlamına gelir.

Adlar büyük harfli ortam tanımlayıcıları olmalıdır; 128 ile sınırlıdır karakterleri kullanamaz ve ayrılmış OPENFACTORY_ önekini kullanamaz. Kullanıcı değerleri 8 KiB ile sınırlıdır ve bir uygulama 100 anahtarla sınırlıdır.

MCP iş akışı

Listeleme işlemleri her zaman değerleri maskeler. Yalnızca gerektiğinde bir değeri gösterin:

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" )

Aynı desen set_account_env, list_account_env ve reveal_account_env. Uygulama düzeyinde ayarlama/silme işlemleri env_version sonucunu döndürür ve bir redeploy_hint; bir değerin ayarlanması çalışan bir VM’yi değiştirmez.

REST yüzeyi

YöntemYolAmaç
GET/api/apps/{app_id}/envMaskelenmiş uygulama anahtarı listesi ve sürüm durumu
PUT/api/apps/{app_id}/envUygulama anahtarları için işlemsel ayarlama/silme
POST/api/apps/{app_id}/env/revealBir uygulama anahtarının denetlenmiş düz metinle ortaya çıkması
GET/api/account/envMaskelenmiş hesap anahtarı listesi
PUT/api/account/envHesap anahtarları için işlemsel ayarlama/silme
POST/api/account/env/revealBir hesap anahtarının denetlenmiş düz metinle ortaya çıkması
PUT/api/apps/{app_id}/env/managedYapılandırılmış yapımcı yönetilen anahtarları yayınlıyor
DELETE/api/apps/{app_id}/env/managed/{name}Yapımcı, sahip olduğu yönetilen anahtarı kaldırır

Kullanıcı yüzeyleri çözümlenen sahip bağlamını zorunlu kılar. Yönetilen uç noktalar şunları kullanır: <kid>.<secret> operatör tarafından yapılandırılmış üretici belirtecinden alınan taşıyıcı kimlik bilgisi dosya; bu dosya olmadan yapımcı API’si kullanılamaz duruma gelir.

Davranışı dağıt

Dağıtım sırasında arka uç, hesap değerlerinin şifresini çözer, uygulama değerlerini üst üste koyar, ekler platformun çalışma zamanı alanlarına gider ve VM’de /etc/openfactory/app.env yazar 0600 modunda. Süreç, bu dosyanın ortamı olmasıyla başlatılır. Şifre çözme, dosya teslimi veya başlatma işlemi başarısız olursa aday terfi ettirilmez.

Güvenlik sınırı

  • Saklanan değerler Fernet şifrelemesini kullanır. Operatör tedarik etmeli ve korumalıdır OPENFACTORY_ENV_MASTER_KEY; onu kaybetmek veya değiştirmek mevcut değerleri değiştirir şifresi çözülemez.
  • Liste yanıtları maskelenir. Açık ortaya çıkarmalar ve mutasyonlar bir JSONL ekler denetim olayı.
  • Mevcut depolama ve denetim takibi yerel dosyalardır. sağlamazlar donanım destekli anahtarlar, çok taraflı onay, kurcalanmaya karşı korumalı günlük kaydı, otomatik rotasyon veya olağanüstü durum kurtarma garantisi.
  • Uygulama ve dağıtım günlükleri henüz tam bir gizli düzenleme sağlamamaktadır sınır. Kimlik bilgisi taşıyan bir URL olan ortamını yazdıran bir süreç, veya bir hatadaki sır, onu günlüklerde ve test kanıtlarında açığa çıkarabilir.

Bu nedenle, üretim kimlik bilgileri için bu önizleme deposunu şu ana kadar kullanmayın: dağıtımınızda bağımsız erişim kontrolleri, yedekleme ve geri yükleme testleri bulunur, günlük düzenleme doğrulaması, saklama kuralları ve belgelenmiş anahtar rotasyonu prosedür. Tariflere, kaynak kodlara, komutlara, URL’lere, testlere asla sır koymayın açıklamalar veya iddia beklentileri.

Aday tanıtım akışı için Uygulama dağıtımı’a bakın.