İçerik Tablosu
- Ortam Değişkenlerine Giriş
process.env
ile Ortam Değişkenlerine Erişmekdotenv
Paketini Kullanmak- Güvenlik En İyi Uygulamaları
Ortam Değişkenlerine Giriş
Ortam değişkenleri, uygulamalara yapılandırma bilgisi sağlayan dinamik anahtar-değer çiftleridir. Uygulamanızın kodunun dışında depolanırlar ve birkaç önemli avantaj sunarlar:
- Güvenlik: API anahtarları ve parolalar gibi hassas veriler asla kod içine yazılmamalıdır. Ortam değişkenleri, bu gizli bilgileri yönetmek için güvenli bir yol sağlar.
- Esneklik: Kod tabanını değiştirmeden uygulamanın davranışını kolayca değiştirin. Bu, farklı dağıtım ortamları (geliştirme, deneme, üretim) için çok önemlidir.
- Taşınabilirlik: Kod değişikliği yapmadan ortam değişkenlerini ayarlayarak uygulamanızı çeşitli ortamlara uyarlayın.
Bu kılavuz, Node.js ortamlarına odaklanarak JavaScript’te ortam değişkenlerine nasıl erişileceğini göstermektedir.
process.env
ile Ortam Değişkenlerine Erişmek
Node.js, process.env
nesnesi aracılığıyla ortam değişkenlerine yerleşik erişim sağlar. Bu, üretim ortamları için en yaygın ve önerilen yaklaşımdır.
// Belirli bir ortam değişkenini al
const apiKey = process.env.API_KEY;
// Bir ortam değişkeninin var olup olmadığını kontrol edin ve varsayılan bir değer sağlayın
const port = process.env.PORT || 3000;
// Birden fazla değişkene erişin
const dbConfig = {
host: process.env.DB_HOST,
user: process.env.DB_USER,
password: process.env.DB_PASSWORD,
database: process.env.DB_NAME
};
// Eksik ortam değişkenlerini daha açıklayıcı bir hata mesajıyla ele almanın örneği
if (!dbConfig.host) {
throw new Error("Veritabanı sunucusu yapılandırılmadı. Lütfen DB_HOST ortam değişkenini ayarlayın.");
}
console.log("API Anahtarı:", apiKey);
console.log("Port:", port);
console.log("Veritabanı Yapılandırması:", dbConfig);
Ortam değişkenlerinin ayarlanmasının işletim sistemine özgü olduğunu unutmayın. Linux/macOS’ta export
(örneğin, export API_KEY="your_api_key"
) kullanın; Windows’ta set
kullanın.
dotenv
Paketini Kullanmak
Geliştirme için, dotenv
paketi, bir .env
dosyasından ortam değişkenlerini yönetmeyi kolaylaştırır. Bu, hassas bilgilerin sürüm kontrol sisteminizin dışında kalmasını sağlar.
- Kurulum:
npm install dotenv
- .env Dosyası: Projenizin kök dizininde bir
.env
dosyası oluşturun (.gitignore
dosyanıza ekleyin!):
API_KEY=your_api_key
DATABASE_URL=your_database_url
PORT=3001
- Kullanım:
require('dotenv').config();
const apiKey = process.env.API_KEY;
const databaseUrl = process.env.DATABASE_URL;
const port = process.env.PORT;
console.log("API Anahtarı:", apiKey);
console.log("Veritabanı URL'si:", databaseUrl);
console.log("Port:", port);
dotenv.config()
, .env
dosyasından değişkenleri process.env
‘e yükler. Üretim dağıtımları için her zaman sistem ortam değişkenlerini .env
dosyasına göre önceliklendirin.
Güvenlik En İyi Uygulamaları
- Hassas bilgileri asla kod içine yazmayın. Her zaman ortam değişkenleri kullanın.
.env
dosyasını.gitignore
dosyanıza ekleyin. Hassas verilerin yanlışlıkla gönderilmesini önleyin.- Üretim ortamları için hassas verileri güvenli bir şekilde depolamak ve erişmek için bir gizli bilgi yönetim çözümü kullanın.
- Güvenlik açıklarını önlemek için uygulamanızda kullanmadan önce tüm ortam değişkenlerini doğrulayın ve temizleyin.
- Güvenlik uygulamalarınızı düzenli olarak gözden geçirin ve güncelleyin.