Yazılım Mimarileri ve Tasarım Desenleri Üzerine Blog

1

Entity Framework Core – Query Log

Merhaba, Entity Framework Core mimarisinde yazılan LINQ sorguları neticesinde generate edilen sorguları izleyebilmek ve olası teknik hataları ayıklayabilmek amacıyla loglama mekanizmasını çalıştırmamız gerekebilmektedir. Bu ihtiyaca istinaden, .NET Core’da dahili olarak gelen log mekanizması Entity...

1

IdentityServer4 Yazı Serisi #21 – Angular İle IdentityServer4 Kullanımı ve Refresh Token(Silent Refresh)

Merhaba, IdentityServer4 Yazı Serisinin bu yirmibirinci makalesinde artık IdentityServer4 framework’ü ile bir SPA(Single Page Application) uygulamasının nasıl kullanıldığına sıra geldiğini düşünerek Angular ile örneklendirmeye karar verdim. SPA teknolojilerinden Angular mimarisinde ele alacağımız bu içeriğimizde...

0

C# 9.0 – Lambda Discard Parameters

Merhaba, C# 7.0 sürümünde hayatımıza girmiş olan Discard Kavramı, C# 9.0 versiyonunda alanını daha da genişleterek lambda ifadelerinde de kullanılabilir bir hal almıştır. Herşeyden önce Discard’ın ne olduğunu hatırlayarak başlayalım… Değişken tanımlamaya ihtiyaç duyulmadığı...

0

C# 9.0 – Target-Typed New Expressions

Merhaba, C# 9.0 sürümünde, nesne oluşum süreçlerinde semantik açıdan inanılmaz kolaylık sağlayan Target-Typed New Expressions özelliğini duyurmuştur. Bu özellik, new operatörü ile türü bilinen bir class’tan nesne yahut bir struct’tan değer üretilirken constructor çağrımı...

0

C# 9.0 – Top-Level Statements

Merhaba, Bir dilin gücünü gösteren birçok faktör vardır. Yer yer bu güç ayrımını ihtiyaçlar belirlerken, bazı dönemler popüler ihtiyaçları(veri madenciliği, yapay zeka vs.) karşılayabilen diller bu özellikleriyle kendilerini daha güçlü şekilde kulvarlara sunabilmektedirler. Sanırım...

2

IdentityServer4 Yazı Serisi #17 – Merkezi Üyelik Sistemi – Client Uygulaması İçin Role Based Authorization

Merhaba, IdentityServer4 Yazı Serisinin bu onyedinci makalesinde, geliştirilen client uygulaması için rol tabanlı yetkilendirmeyi ele alacağız. Client uygulamasında rol tabanlı yetkilendirme için esasında bildiğimiz claim tabanlı bir yetkilendirme yapmamız gerekecektir. Burada MVC uygulamalarında kullandığımız...

0

C# 9.0 – Records İle Immutable Datalar

Merhaba, Hani bazen gelen yenilik, var olan küçük bir gediği kapatmak için yapılan bir onarımdan yahut iyi ya da kötü bir değişiklikten ibaret olabilmektedir. Lakin bazıları vardır ki, hangi olgu üzerinde olursa olsun bir...

1

C# 9.0 – Init-Only Properties ve Init Accessor

Merhaba, Bu içeriğimizde C# 9.0 ile gelen özelliklerimizden, herhangi bir nesnenin propertylerine ilk değerlerinin verilmesi ve sonraki süreçte bu değerlerin değiştirilmemesini garanti altına alan Init-Only Properties özelliğini ele alıyor olacağız. Init-Only Properties, nesnenin sadece...

0

IdentityServer4 Yazı Serisi #15 – Merkezi Üyelik Sistemi – Onay(Consent) Sayfası Ayarlama

Merhaba, IdentityServer4 Yazı Serisinin bu onbeşinci makalesinde kullanıcılardan istenilen bilgiler için onay sayfasının nasıl ayarlanabileceğini inceleyeceğiz. Şuana kadar client, Auth Server’dan kullanıcıya dair istediği tüm bilgileri, kullanıcı giriş yaptığı taktirde elde edebilmekte ve kullanabilmektedir....

Asp.NET Core - API Versiyonlama 0

Asp.NET Core – API Versiyonlama

Merhaba, API geliştirilirken aklımızda tutmamız gereken bir realite vardır ki o da ‘Değişim Kaçınılmazdır’ ilkesidir. Gelişim sürecinde her ne kadar iş odaklı bir çalışma gerçekleştiriyor olsakta, kâh öngörülemeyen kâh sonradan doğan ihtiyaçlara binaen API’a...

3

IdentityServer4 Yazı Serisi #12 – Merkezi Üyelik Sistemi – Claim ve Authentication Propertyleri Okuma

Merhaba, IdentityServer4 Yazı Serisinin bir önceki kaleme aldığımız Merkezi Üyelik Sistemi Temelleri başlıklı makalemizde client’ın Auth Server’dan authorization code almasını başarmış ve client üzerinde authorize olan kısımlara yetkili bir şekilde erişimi test etmiştik. Bu...

1

IdentityServer4 Yazı Serisi #11 – Merkezi Üyelik Sistemi Temelleri

Merhaba, Bu içeriğimizde yazı serimiz boyunca ara ara geliştirdiğimiz örnek uygulama üzerinden Merkezi Üyelik Sistemi’ni örneklendireceğiz. Geliştirdiğimiz uygulamanın bu makaleye kadar olan en son halini elde edebilmek için buraya tıklayınız. Şimdi Merkezi Üyelik Sistemi...

0

IdentityServer4 Yazı Serisi #9 – Implicit Grant(Flow)

Merhaba, Bu içeriğimizde IdentityServer4’ün bir başka akış stratejisi olan Implicit Grant‘ı teorik bir şekilde inceliyor olacağız. Implicit Grant(Flow) Nedir? Bir önceki makalede ele aldığımız Authorization Code Grant(Flow) iki aşamalı bir doğrulama süreci gerçekleştirmektedir. Implicit...

2

IdentityServer4 Yazı Serisi #8 – Authorization Code Grant(Flow)

Merhaba, Daha önce IdentityServer4 Yazı Serisinin üçüncü makalesi olan Client Credentials başlıklı makalemizde IdentityServer4 yapılanması üzerinden client’ların yetkilendirilmesini teorik ve pratik olarak incelemiştik. Bu sekizinci makalede ise Authorization Code Grant/Flow ile kullanıcıların onayı üzerinden...

1

IdentityServer4 Yazı Serisi #6 – Introspection Endpoint

Merhaba, IdentityServer4 Yazı Serisinin bir önceki Discovery Endpoint başlıklı makalesinde IdentityServer4 framework’ünün hali hazırda endpoint’leri olduğundan bahsettik ve bunlar arasından Auth Server’ı keşfetmemizi sağlayan Discovery Endpoint’i ele aldık. Bu içeriğimizde ise client açısından elde...

1

IdentityServer4 Yazı Serisi #5 – Discovery Endpoint

Merhaba, IdentityServer4 framework’ü, kendisiyle belli başlı ihtiyaçlara istinaden iletişim kurulabilmesi için hali hazırda mevcut olan endpointler barındırmaktadır. Bizler bu endpointler vasıtasıyla sistemin getirisi olan bazı işlevlere erişebilmekte ve ihtiyaç doğrultusunda kullanabilmekteyiz. Bu endpoint’lere misal...

1

IdentityServer4 Yazı Serisi #4 – Cleam Bazlı Yetkilendirme

Merhaba, IdentityServer4 Yazı Serisinin üçüncü makalesi olan Client Credentials başlıklı makalede IdentityServer4’ün pratiksel temelleri eşliğinde işlevsel mekanizmasına değinmiş ve bir yandan da sadece client’ları yetkilendirme merkezli(Client Credentials) temel bir uygulama geliştirmiştik. Bu içeriğimizde ise...

3

IdentityServer4 Yazı Serisi #3 – Client Credentials

Merhaba, IdentityServer4 Yazı Serisinin bu üçüncü makalesinde Client Credential yetki tipi ile gerekli konfigürasyonlar eşliğinde IdentityServer4 uygulaması geliştirecek ve ayağa kaldıracağız. Client Credential; machine to machine kimliklendirme dediğimiz iki uygulama arasındaki etkileşime istinaden kullanılan...

1

IdentityServer4 Yazı Serisi #2 – IdentityServer4 Hangi Problemlere Çözüm Getiriyor?

Merhaba, IdentityServer4 Yazı Serisinin bu ikinci makalesinde IdentityServer4 kütüphanesinin problem senaryolarını şematik görselleştirmeye çalışacak ve bunlara nasıl çözüm getirdiğini inceleyeceğiz. 1. Problem Senaryosu Birden fazla uygulama arasında merkezi bir yetkilendiriciye ihtiyaç hissedildiği durumlarda IdentityServer4...