Versiyon tarihi: 14 Mart 2023

Bu dokümanda 2023.03.1 versiyonuna ait Yeni Özellikler, Değişiklikler, İyileştirmeler, Kaldırılan Özellikler ve Hata düzeltmeleri (Bug Fixes) yer almaktadır.

Yeni özellikler

APNZ-3339 JSON Web Keypair Set (JWK) Oluşturma

JWK, JSON formatında public key ya da keypair bilgisi tutar. 4 farklı yöntem (key store'dan dönüştürme, URL bağlantısından al, panoya yapıştır, üret) ile 4 farklı tipte (RSA, EC, OCT, OKP) key, key set, keypair ya da keypair set oluşturulabilir. Bu key tanımları, JOSE politikaları ile isteğin üzerindeki mesaj içeriğini doğrulama (validation) ya da imzalama (sign) işlemleri için kullanılırken, yanıt hattındaki içeriğin şifresini açma (decryption) ya da şifreleme (encryption) için kullanılır. 

APNZ-3477 JOSE Doğrulama Politikası

JOSE (Javascript Object Signing and Encryption), "claim" veya genellikle JSON verilerin herhangi iki taraf arasında güvenli aktarımını kolaylaştırmak için kullanılan bir çözümdür.  JOSE Doğrulama Politikası ile imzalanmış olan verilerin imza doğrulaması ve şifrelenmiş olan verilerin deşifre edilmesi işlemleri yapılır.

APNZ-3478 JOSE Implementasyonu Politikası

JOSE (Javascript Object Signing and Encryption), "claim" veya genellikle JSON verilerin herhangi iki taraf arasında güvenli aktarımını kolaylaştırmak için kullanılan bir çözümdür.  JOSE Implementasyon Politikası ile verilerin imzalanması ve şifrelenmesi işlemleri yapılır.

APNZ-3467 Elasticsearch Konfigürasyonu

Eğer loglama direkt olarak Apinizer üzerinden değilde dış bir sistem tarafından Elasticsearch'e yazılmak istenirse, Elasticsearch, read-only moda geçirilebilir. Bu durumda, API Proxy üzerinden gelen giden mesaj logların Elasticsearch kümesine yazımı Apinizer üzerinde durdurulur ve sadece logları okuma aktif olarak yapılır. Böylece, analitik ekranlarının çalıştırdığı sorgulama işlemlerine devam edilir. 

APNZ-2791 Webhook Entegrasyonu ile Logların Aktarımı

Varsayılan olarak, API Proxy'e gelen ve giden mesajın öğeleri, Elasticsearch üzerinde depolanmaktadır. Webhook Entegrasyonu yapılarak, mesajların loglanması farklı bir uygulamaya aktarılabilir.

APNZ-3399 RabbitMQ Entegrasyonu ile Logların Başka Sisteme Aktarılması

Varsayılan olarak, API Proxy'e gelen ve giden mesajın öğeleri, Elasticsearch üzerinde tutulmaktadır. RabbitMQ Entegrasyonu yapılarak, mesajların kuyruk sistemi üzerinde farklı bir uygulamaya aktarımı gerçekleştirilebilir.

APNZ-2885 Sistem Bilgilendirmesi için Alarm Oluşturma

Real-time çalışan sistemlerde, uygulama performansının düşmemesi için sistem kaynak kullanımıyla ilgili durumların probleme dönüşmeden önce yakalanması önemli bir gereksinimdir. Böylelikle, olası problem ile çözüm üretilerek, karşılaşılması önlenir. Alarm ise Apinizer Platformu'nun bulunduğu Kubernetes modülleri ve Elasticsearch kümelerinin, ön tanımlı tetikleme tiplerine göre izlenmesi sağlanır. Eğer verilen eşik değeri aşılmış ise uygulama üzerinde bildirim oluşturulur.

APNZ-3330 Yeni bir Eylem tipi: Bildirim (Notification) Oluşturma

Anomali Dedektörü, Çalışma Süresi Monitörü, API Entegratörü veya Alarm oluştururken zamanlayıcı sonunda, sonucu işlemek için yeni bir eylem olan bildirim oluşturma eylemi eklenebilir. Bu sayede, her iş tanımı çalıştığında  tüm ya da bildirim alınması istenen kullanıcılara bildirim gönderilir. Kullanıcı, uygulamanın arayüzünden bildirimlerini yönetebilir.

APNZ-3431 Bildirimleri Yönetme

Apinizer üzerinde 3 farklı durum sonucunda bildirim oluşturulmaktadır; eylem sonucunu gösteren bildirimler, Hesap/Geliştirici oluşturma istekleri ve API Ürünü abonelik istekleri. Tüm bildirimler, uygulamanın header kısmındaki ikondan görüntülenebilir ve ya ilgili bildirim kategorisine tıklanarak bildirim yönetimi yapılabilir.

APNZ-3452 MongoDB'den Bağlantı Tanımı Oluşturma 

Veri tabanı bağlantı konfigürasyonlarına yeni bir tip olan MongoDB eklendi. 

APNZ-3452 MongoDB ile DB-2-API Find Metodu Oluşturma 

API Creator modülünde olan Db-2-API ile veri tabanından endpoint oluştururken, MongoDB konfigürasyonu ile find sorgusu yazarak endpoint eklenebilir.

APNZ-3472 Tüm API Proxy'nin Log Ayarlarını Proje ya da Uygulama Bazında Kontrol Etme

Önceden Proje, API Proxy Grup ve API Proxy olarak 3 farklı bazda, hangi bölgede hangi mesaj öğelerinin log kaydı alınıp alınmayacağı ayarlanmaktaydı. Log ayarlarının kullanılabilirliği ve yönetilebilirliği iyileştirmek için, sadece API Proxy bazına indirgenmiştir. Log ayarlarını etkinleştirme veya devre dışı bırakmak için 3 farklı ekran bulunur; her API Proxy'nin kendi sayfasından ayarlanabilir ya da Proje ve uygulama bazında bulunan Log Ayarları ekranı üzerinden çoklu olarak API Proxy log ayarlamaları yapılabilir.

APNZ-3207 Pod Probe'ların Kubernetes Resources Ekranından Tanımlama

Kubernetes, konteynerının (container) ne zaman yeniden başlatılacağını, hazır olduğunu ve başlatılacağını bilmek için Probe'ları kullanır. Temel olarak, Probe'lar containerların sağlığını kontrol eder ve yanıt vermeyen uygulamanın yeniden başlatılmasını sağlar. Apinizer'ın üzerinden, Pod'ların Probe'larını tanımlanması sağlandı.


Önemli değişiklikler ve iyileştirmeler

APNZ-2884 Eylemler dialogundaki görünüm ve eylemler oluşturma dialoglarının kullanıcı deneyimi iyileştirildi.

APNZ-3109 Spec Tasarımı üzerinden API Proxy oluşturulduğunda, oluşturulan spec tanımından tasarıma devam edilebilmesi sağlandı.   

APNZ-3111 API Çağrısı politikasında gövdenin orijinal mesaj verisi düzenlemesi işlemine ekleme operasyonu eklendi.

APNZ-3272 API Proxy listesini, yükleme durumuna göre arayabilme filtresi getirildi.

APNZ-3282 Kubernetes Resources ekranına podların durumunu gösteren tabloya yenile butonu eklendi.

APNZ-3329 API Proxy Trafik ekranına sorguyu cURL olarak kopyalama ve excel olarak dışa aktarma özellikleri eklendi.

APNZ-3329 Rapor Üretici ekranına sorgu ve filtreyi düzenleme ve sorguyu cURL olarak kopyalama özellikleri eklendi.

APNZ-3368 JWT token'ların saklanması veri tabanı tarafından bağımsız hale getirildi.

APNZ-3381 Sertifika, Anahtar ve Key Store ekranları project bazında da yönetilebilir olması sağlandı.

APNZ-3382 Audit kaydı için Manager Console girişlerindeki IP bilgisinin X-Forwarded-For alanından alınması sağlandı.

APNZ-3405 API Proxy'nin Yönlendirme sekmesinde Circuit Breaker gözükmesi için en az 2 tane adres ekleme kontrolü kaldırıldı.

APNZ-3411 Rapor Oluşturma ve Sorgu ekranlarındaki zaman bilgileri (Total Time, API Proxy Time, Backend Time) ait alanlar revize edildi.

APNZ-3413 Veritabanlarına ait bağlantı konfigürasyonları ekranları birleştirildi.

APNZ-3429 API Proxy ekranına Log Ayarları sekmesi eklenerek, tüm log ayarlarının Ayarlar sekmesinden ayrıldı. 

APNZ-3440 Çalışma Süresi Monitörü ve Anomali Dedektörü tanımlarının, uygulama bazında da yönetilmesi sağlandı.

APNZ-3456 Veri Tabanı bağlantılarında zorunlu girilmesi gereken kimlik bilgileri, kimlik bilgisi istemeyen bağlantıların desteklenebilmesi için seçimli hale getirildi.

APNZ-3456 Plain-Text Kimlik Doğrulama Politikasında şifre (password) alanının seçilmesi isteğe bağlı hale getirildi. Böylece sadece API Key kullanarak servislerin yetkilendirilebilmesi sağlandı.

APNZ-3457 Yetki Konfigürasyonunda (Authorization) politikasında rol kontrolü yapılmadan sadece rollerin alınabilmesi sağlandı.

APNZ-3459 JWT, OAuth2 ve JOSE Validasyonu politikalarında, eğer Kimlik/Yetki Doğrulama Servisi seçildiyse, bu servisteki rollerin istek başlığına eklenebilmesi durumu sağlandı.

APNZ-3473 Hassas Veri Yönetimi, Syslog Entegrasyonu ekranı Log Ayarları menüsüne taşındı.

APNZ-3473 KPS Ayarı ve ProCrpyt ekranı Sistem Ayarları menüsüne taşındı.

APNZ-3473 API Proxy Raporu, Analitik menüsüne taşındı.

APNZ-3473 ACL Raporu ekranı, Kimlik Yönetimi menüsüne taşındı. Önceden uygulama bazında çalışan ekran proje menüsüne de eklendi.

APNZ-3473 Analitik menüsündeki API Proxies ekranı kaldırılıp, buradaki tablo verileri, API Proxy Raporu ekranının liste modundaki tablo verileri ile birleştirildi.

APNZ-3478 Kimlik Bilgisi ekranına JWK Ayarı tabı getirilerek, JOSE politikaları için kullanılacak olan JWK'nın seçilmesi sağlandı.

APNZ-3497 OpenAPI 3.0.3 versiyonunun desteklenmesi sağlandı.


Kaldırılan Özellikler

APNZ-3411 Swagger ve Open API tipinde API Proxy oluşturmak için Spec'den Yükle seçeneği kaldırıldı.

APNZ-3411 JOSE Doğrulama politikası JWT 3.Taraf (3rd Party) politikasını içerdiği için JWT 3.Taraf politikası kaldırıldı.

APNZ-3467 APNZ-3472 ile yapılan düzenlemeden dolayı API Proxy Grup bazında log ayarlarını konfigüre etme özelliği kaldırıldı.

APNZ-3467 APNZ-3472 ile yapılan düzenlemeden dolayı Proje Log Ayarları ekranı kaldırıldı. 

APNZ-3467 APNZ-3472 ile yapılan düzenlemeden dolayı Genel Ayarlar bazında log ayarlarının önem derecesini ayarlama özelliği kaldırıldı.


Hata düzeltmeleri (Bug Fixes)

Issue NoAçıklama
APNZ-2958Rapor Üretici (Report Generator), Anomali Dedektörü (Anomaly Detection) ve Çalışma Süresi Monitörü (Uptime Monitor) ekranlarında zamanlama (schedule) çalışsa bile herhangi bir rapor verisi oluşmuyor. 
APNZ-3247API Proxy Trafiği ekranında gelişmiş arama ile X-Forwarded-For alanı ile filtreleme çalışmıyor.
APNZ-3308API Proxy'ye birden fazla API Çağrısı politikası eklenip Veri Düzenleme yapıldığında diğer API Çağrısı politikalarını da etkiliyor.
APNZ-3344JWT ve OAuth2 politikalarında, Grant Type değeri Password seçilince, Kimlik Hizmeti (Identity Service) Security Manager varsayılan olarak seçili gelmiyor.
APNZ-3345İçe aktarma işlemleri hata içeriyor.
APNZ-3353Mock API'de sadece içerik tipi (content-type) olan boş yanıtı bulunan uç noktaya gönderilen isteklerin, API Trafik'de logu gözükmüyor.
APNZ-3354Kubernetes Resources üzerinden yeni bir API Integration modülü oluşturulurken sorun yaşanıyor.
APNZ-3363API Proxy Grup'u silme işlemi iptal edildikten sonra tekrar silme işlemi yapılamıyor.
APNZ-3364Ortama (environment) ait host takma adları her republish işleminde hataya sebep olur.
APNZ-3383Sorgu oluşturma ekranındaki "şununla başla (starts with)" ve "şununla bitsin (ends with)" seçeneklerine ait arama çalışmıyor.
APNZ-3392Db-2-API için metoda parametre tanımlarken, birbirini içeren parametre adları sorgunun çalışmamasına sebep oluyor.
APNZ-3393API Proxy'e uygulanan kota verinin boyutu büyüdüğünde önbelleği zorlayabiliyor.
APNZ-3395API Proxy Trafik üzerinde sayfalaması değiştirilen kayıtlara, yeni sorgu uygulandığında senkron çalışmıyor.  
APNZ-3398API Proxy Trafik ekranında log kaydı 500kb'dan küçük olmasına rağmen açılmıyor.
APNZ-3401Kubernetes Resources sayfası aşırı kaynak varsa sorun yaşıyor.
APNZ-3410Aynı relative path değerini içeren başka bir API Proxy ya da  API Proxy Group oluşturulabiliyor.
APNZ-3411

API Proxy Grup ACL ekranında, kimliği düzenleme işlemindeki değişim sayfa yenilendikten sonra yansıyor.

APNZ-3415API Proxy Grup içerisinde "/{id}" içeren bir metoda sahip farklı API Proxy'lerden birine log kaydı oluşturulduğunda, diğerinde de görüntüleniyor.
APNZ-3416WSDL adresinde schemaLocation bilgisinin local adresini referans veren tanım dosyalarında, XSD işlenme hatası alınıyor.
APNZ-3419Db-2-API ile parametreli sorgu parametresiz hale dönüştürüldüğünde kaydedilemiyor.
APNZ-3438Rest2SOAP tipindeki API Proxy'nin Tracing log detayına gitmek istenildiğinde hata alınıyor.
APNZ-3441Toplu olarak gerçekleştirilen işlemlerin audit kaydı oluşmuyor.
APNZ-3449SOAP metotlarında metot bulunsa bile diğer metotların da iterate edilmesi aynı istek gövdesine sahip metotlarda, hatalı metodun bulunmasına yol acıyor.
APNZ-3450Db-2-API'de sorgu parametrelerinde boşluk gibi beklenmeyen karakterler, URL decode edilmiyor.
APNZ-3466Aynı relative path değerine sahip API Proxy ya da API Proxy Grup oluşturulamamalı.
APNZ-3490Rest 2 Soap Transformation politikalarında kaydet ve iptal işlemlerinde hata alınıyor.