Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
@azure/core-process ortam kabuğu ayrıştırmadan kaçınan Node.js süreç başlatma ilkeleri sağlar. Windows, macOS veya Linux üzerinde harici çalıştırılabilir dosyaları çağırması gereken Azure SDK paketleri ve araçları için tasarlanmıştır.
Başlarken
Paketi yükle
npm install @azure/core-process
Prerequisites
- Node.js LTS sürümleri.
Temel kavramlar
Komutlar ve argümanlar her zaman ayrı ayrı sağlanır. Paket, komut dizisi API sağlamaz ve çağıranların bir shell'i etkinleştirmesine izin vermez.
import { execFile } from "@azure/core-process";
const { stdout } = await execFile("git", ["rev-parse", "--show-toplevel"]);
console.log(stdout);
Windows'ta yerel .exe ve .com dosya tercih edilir. Toplu dosyalar varsayılan olarak devre dışı bırakılır çünkü keyfi argümanlar her .cmd veya .bat wrapper üzerinden güvenli şekilde taşınamaz. Parti shim bekleyen bir arayan, kısıtlı parti yoluna katılabilir:
import { execFile } from "@azure/core-process";
const { stdout } = await execFile("npm", ["--version"], {
allowWindowsBatchFiles: true,
});
console.log(stdout);
Kısıtlı toplu yol, komut operatörlerini, değişken genişletmeleri, yeni satırları ve başlamadan cmd.exe önce güvenli olduğu kanıtlanamayan diğer değerleri reddeder.
Bir uygulamanın bu değerleri aktarması gerekiyorsa, doğrudan yerel bir yürütülebilir veya yorumlayıcı giriş noktasını çağırmalıdır.
Güvenlik sınırı
Bu paket, komut satırı verilerinin ortam işletim sistemi kabuğu tarafından yorumlanmasını engeller. Bulunan PATH bir çalıştırılabilir dosyanın güvenilir olduğunu kanıtlamaz, kasıtlı olarak bir yorumlayıcıya verilen kodu temizlemez veya komuta özgü seçenek enjeksiyonunu engellemez.
Komut satırı argümanlarına sır koymayın. Süreç argümanları diğer yerel süreçler ve işletim sistemi tanılamaları tarafından da görülebilir.
Troubleshooting
Güvenli olmayan bir Windows toplu argümanıProcessError, a ile başarısız olur, önce ise çocuk süreç oluşturulur. Argüman değiştirilemediğinde yerel bir yürütülebilir dosyayı tercih edin.
Contributing
Katkıda bulunan rehbere bakınız.
Azure SDK for JavaScript