PowerShell modülü güncellenmiş.
Exchange Online PowerShell Modülü 3.10.1 Sürümüne Güncellendi
microsoft, exchange online yönetim powershell modülünü sertifika tabanlı kimlik doğrulama sorunlarını gidermek için 3.10.1 sürümüne güncelledi.
sertifika tabanlı kimlik doğrulamadaki sorun, güncelleme zorunluluğu doğurdu 24 temmuz’da microsoft, exchange online yönetim powershell modülünü güncelledi. modülün 3.10.1 sürümü powershell galerisi’nden indirilebiliyor. yayınlanan sürüm notlarına göre bu güncellemenin amacı, microsoft’un ifadesiyle “sertifika tabanlı kimlik doğrulama (cba) akışındaki hataları ve birkaç küçük performans sorununu” gidermek. cba sorunu exchange online yönetimini aksattı geçtiğimiz hafta, exchange online ….
Sertifika Tabanlı Kimlik Doğrulamadaki Sorun, Güncelleme Zorunluluğu Doğurdu
24 Temmuz’da Microsoft, Exchange Online yönetim PowerShell modülünü güncelledi. Modülün 3.10.1 sürümü PowerShell Galerisi’nden indirilebiliyor. Yayınlanan sürüm notlarına göre bu güncellemenin amacı, Microsoft’un ifadesiyle “sertifika tabanlı kimlik doğrulama (CBA) akışındaki hataları ve birkaç küçük performans sorununu” gidermek.
CBA Sorunu Exchange Online Yönetimini Aksattı
Geçtiğimiz hafta, Exchange Online ve Microsoft Graph PowerShell SDK için sertifika tabanlı kimlik doğrulama kullanan bir betiği güncellerken CBA ile ilgili bir soruna takıldım. İşin ilginç yanı, aynı betik bir kiracıda hiç çalışmazken diğerinde sorunsuz çalışıyordu. Sorunlu betik, önce sertifika tabanlı kimlik doğrulamayla Exchange Online’a bağlanıyor, ardından diğer cmdlet’leri çalıştırıyordu. Eski cmdlet’ler, eksik bir metot yüzünden bir gecikmenin ardından hata veriyor; REST tabanlı cmdlet’ler ise 401 yetkisiz erişim hatası döndürüyordu:
Koddaki her şey normal görünüyordu; Get-ConnectionInformation cmdlet’i de geçerli bir oturum olduğunu bildiriyordu. Buna rağmen hiçbir Exchange Online cmdlet’i çalışmıyordu.
Sorunun Kaynağı Bir Yazılım Güncellemesiydi
Microsoft ile yaptığım görüşmelere göre, Microsoft’un dahili kimlik doğrulama hizmetinde (MISE) yapılan son bir güncelleme, token içindeki kiracı kimlik bilgilerinin nasıl dolduğunu değiştirmiş. Eski davranışa göre yazılmış senaryolar artık beklenenden farklı bir tanımlayıcı almaya başlamış; bu da bazı müşterilerde kiracı düzeyinde yetkilendirme ve arama işlemlerinin başarısız olmasına yol açmış.
Sorunu yaşadığım kiracının birden fazla onaylı (accepted) alan adı vardı. Ben de kiracının varsayılan alan adını kullandım, ama bu, hizmetin kendi alan adı olan onmicrosoft.com değildi. Kullanılacak alan adını belirleyen kod şuydu:
Aynı betiği başka bir kiracıya karşı test ederken hizmet alan adını (onmicrosoft.com) kullandım ve her şey sorunsuz çalıştı. Sorunun kaynağının bu olduğu anlaşılıyor: Exchange Online bağlantıyı kabul ediyor, Get-ConnectionInformation cmdlet’i de geçerli bir oturum olduğunu gösteriyor; ama sonraki cmdlet çağrıları yetkilendirme hatasıyla başarısız oluyordu.
Microsoft’un açıklamasına göre MISE güncellemesi, bazı kimlik doğrulama akışlarının token içinde daha önceye göre farklı bir kiracı tanımlayıcısı almasına neden oldu. Kendi testlerimde, birden fazla onaylı alan adına sahip kiracılarda, hizmet alan adı (onmicrosoft.com) yerine varsayılan alan adı kullanıldığında yetkilendirme ve kiracı arama hataları ortaya çıktı. Bu benim, yaşadığım 401 hatasına dayanarak vardığım bir yorum; Microsoft sürüm notlarında belirttiğinden fazlasını açıklamadı.
İyi haber şu ki Microsoft bu sorunu 3.10.1 sürümünde düzeltti ve şimdiye kadar bu sürüm istikrarlı görünüyor. Ne yazık ki Microsoft, 365 PowerShell modülleri arasındaki derleme (build) çakışmalarını çözmek için henüz bir adım atmış değil.
Yetersiz Test mi, Yoksa Sadece Talihsiz Bir Durum mu?
Bazıları bu tür sorunları Microsoft’un test süreçlerinin yetersizliğine bağlayacaktır. Ben bu konuda o kadar emin değilim. Sorunu bizzat yaşamış olsam da, bunun yalnızca kiracıların küçük bir kısmını etkileyen istisnai bir durum olduğu görülüyor.
Microsoft’un, Exchange Online yönetim modülünün yeni sürümlerini diğer Microsoft 365 modülleriyle birlikte kapsamlı biçimde test etmediği düşünülürse, farklı onaylı alan adları kullanan sertifika tabanlı kimlik doğrulama gibi uç senaryoları kaçırmış olması hiç şaşırtıcı değil.
Microsoft 365, sayısız hareketli parçası ve bağımlılığıyla son derece karmaşık bir altyapı. Yazılımın kullanılabileceği her olası senaryoyu test etmek pratikte imkânsız. Belki ileride yapay zeka bu konuda bizlere yardımcı olur