Mongo db Identity Kullanımı C# .Net Core

03/01/2026 23:01:22
  • 23 min okuma
Mongodb Identity  Kullanımı .Net Core

Gerekli Olan Kütüphane 

Yukarıda belirtilen kütüphane hem mongo db core ve mongo db driver kütüphanesini içermekte olup ayrıca identity sınıflarını da içinde içermektedir.

Böylelikle de  bu kütüphane kendi başına hem veritabanı işlemleri hemde yetki ve auth işlemlerini gerçekleştirebilmektedir.

Kullanımı

Öncelikli olarak program.cs dosyamızda birkaç değişiklik yaomamız gerekmektedir. Entity identity ile pek bir farklılığı bulunmamaktadır.

builder.Services.AddIdentity<User, Role>().AddMongoDbStores<User, Role, string>(builder.Configuration["DatabaseConnection:Server"], builder.Configuration["DatabaseConnection:DatabaseName"]).AddDefaultTokenProviders();

yukarıdaki kod parçasında  User ve role sınıfımızın yetki içinde kullanacğımızı addIdentity methodu ile belirtiyoruz. Mongo db veritabanında ise ayriyeten de Id sini veritabanımızda string bir tür ile tutacağımızı belirttikten sonra token kullanımı için providerlerimizi kullanması gerektiğini belirtiyoruz.

Yanda belirtilen kodda ise identity ayarlarımızı ve cookie ayarlarımızın nasıl olması gerektiğini yazıyoruz.

En kritik nokta ise eğer mvc için kullanıyorsanız SameStie ayarının strict olmasıdır. Strict olması cookienin sadece ilk oluşturulddupu yerde kullanılması içindir. Böylelikle de cookie çalınması gibi durumlarda o tarayıcıya has çalısacağı için yetkilendirme işlemleri başarısız olacaktır.

Yukarıda ise User nesnesini  Identity nesnesinin özelliklerine sahib olabilmesi için MongoIdentityUser nesnesinden generic olarak miras almamız gerekmektedir. Geri kalan kullanım için ise  UserManager RoleManager SıgnInManager sınıflarını dependency injection ile heryerde kullanabiliriz.

;

Coded By Mehmet Kelleli