Giriş
Microsoft Azure'da modern uygulamalar genellikle OAuth 2.0 ve OpenID Connect protokollerini kullanarak kimlik doğrulaması yapar. Bu kimlik doğrulama yöntemleri, uygulama kimliklerinin (Service Principals) güvenliğini sağlamak için genellikle sertifikalara veya istemci gizli anahtarlarına (Client Secrets) dayanır. Bu kimlik bilgilerinin geçerlilik sürelerinin dolması, uygulamanın erişim yeteneklerinin aniden kesilmesine ve kritik iş süreçlerinin durmasına neden olabilir. Bu makale, bu kritik bileşenlerin sürelerini takip etme ve proaktif yönetim stratejilerini sunmaktadır.
Sorun: Süresi Dolmuş Kimlik Bilgileri
Azure Uygulama Kayıtlarında kullanılan sertifikalar genellikle 1 veya 2 yıllık sürelerle yüklenir. Gizli anahtarların varsayılan süresi ise daha kısadır (örneğin 1 yıl). Bu süreler dolduğunda, uygulama artık Azure AD'ye veya korunan API'lere (örneğin Microsoft Graph) erişemez, bu da kesintilere yol açar.
Çözüm Adımları: Proaktif Takip Mekanizması Oluşturma
Sürekli hizmet sağlamak için, bu son kullanma tarihlerini izlemek ve yenileme işlemlerini otomatikleştirmek veya en azından zamanında hatırlatmak esastır. Aşağıdaki adımlar, bu takibi sağlamak için temel yöntemleri özetlemektedir.
Adım 1: Mevcut Sertifika ve Gizli Anahtar Son Kullanma Tarihlerini Belirleme
Öncelikle, hangi Uygulama Kayıtlarının hangi kimlik bilgilerini kullandığını tespit etmelisiniz. Bu bilgiyi Azure Portal üzerinden veya PowerShell/Azure CLI kullanarak sorgulayabilirsiniz.
Azure Portal Üzerinden Kontrol
- Azure Portal'da ilgili Uygulama Kaydına (App Registration) gidin.
- Sol menüden Sertifikalar ve Gizli Anahtarlar (Certificates & secrets) sekmesini seçin.
- Burada, hem Gizli Anahtarlar (Client secrets) sekmesindeki Sona Erme Tarihi (Expires) sütununu hem de Sertifikalar (Certificates) sekmesindeki ilgili bilgileri kontrol edin.
Önemli Not: Gizli anahtarların şifresi yalnızca oluşturuldukları anda görüntülenebilir. Bu nedenle, son kullanma tarihini not almak veya bu bilgiyi bir envanter sistemine kaydetmek zorunludur.
Adım 2: Otomasyon ve Uyarı Sistemleri Kurma
Manuel kontrol sürdürülebilir değildir. Azure Monitor, Azure Automation veya Logic Apps/Power Automate kullanarak otomatik uyarılar kurmak en iyi uygulamadır.
Azure CLI ile Sorgulama ve Uyarı Tetikleme Örneği (Konsept)
Sertifika son kullanma tarihlerini toplu olarak almak için Azure CLI kullanılabilir. Bu çıktı daha sonra bir otomasyon aracına beslenebilir.
# Tüm Uygulama Kayıtlarını listeleme (Yalnızca Uygulama Kimliği ve Adı)
# Gerçek son kullanma tarihi bilgisi genellikle detaylı sorgulamalarla veya özel scriptlerle çekilir.
# Sertifika verileri doğrudan bu komutla kolayca alınamaz, genellikle Graph API veya özel PowerShell modülleri gerekir.
az ad app list --query "[].{Name:displayName, AppId:appId}"
Daha etkili bir yöntem, Azure Key Vault'u kullanmaktır. Sertifikalar Key Vault'a yüklendiğinde, Key Vault'un kendi son kullanma tarihi uyarı mekanizmalarını kullanabilirsiniz. Eğer sertifikalar doğrudan Uygulama Kaydına yüklüyse, Azure Resource Graph veya özel bir PowerShell scripti ile belirli bir süre (örneğin 90 gün kala) uyarı tetikleyecek bir otomasyon iş akışı tasarlanmalıdır.
Adım 3: Sertifika Yenileme Süreci
Sertifika yenileme işlemi, yeni bir sertifika oluşturmayı, bunu Azure Key Vault'a (önerilir) veya doğrudan Uygulama Kaydına yüklemeyi ve ardından eski sertifikanın süresi dolmadan önce uygulamanın yeni sertifikayı kullanacak şekilde güncellenmesini içerir.
- Yeni bir X.509 sertifikası oluşturun (genellikle self-signed veya PKI sağlayıcınız aracılığıyla).
- Yeni sertifikanın genel anahtarını (public key) Base64 formatında alın.
- Uygulama Kaydının Sertifikalar ve Gizli Anahtarlar bölümüne gidin ve Yeni Sertifika Yükle (Upload Certificate) seçeneğini kullanarak yeni sertifikanın genel anahtarını yükleyin.
- Uygulamanın çalıştığı ortamdaki (VM, Azure Function, App Service vb.) yapılandırmayı, yeni sertifikanın parmak izini (thumbprint) veya Key Vault referansını kullanacak şekilde güncelleyin.
- Yeni sertifikanın başarılı bir şekilde kullanıldığından emin olduktan sonra, eski sertifikayı kaldırın.
İpucu: Gizli anahtarlar yerine sertifikaları kullanmak (özellikle uzun ömürlü servisler için) daha güvenli bir yaklaşımdır. Sertifika yenileme sürecini otomatikleştirmek için Azure Automation Runbook'ları veya Azure Functions kullanmayı değerlendirin.



