Mövzunu Açan
#0
Identity, .NET uygulamalarında kimlik doğrulama ve yetkilendirme işlemlerini yönetmek için kullanılan bir framework'tür. Bu yazıda, Identity'nin nasıl kurulacağını ve yapılandırılacağını adım adım inceleyeceğiz.
Öncelikle, Identity'yi projeye eklemek için gerekli NuGet paketlerini yüklememiz gerekiyor. Bu paketler, projenizde kimlik yönetimi işlevselliğini sağlamak için gereken tüm bileşenleri içerir. Aşağıdaki komutu kullanarak bu paketleri yükleyebilirsiniz:
Bu işlemi tamamladıktan sonra, bir veritabanı bağlamı oluşturmalıyız. Bu bağlam, kullanıcı verilerini saklamak için Entity Framework Core kullanacak. Aşağıdaki örnekte,
Şimdi,
Veritabanı bağlantı dizesini
Son olarak, uygulamanızda kimlik doğrulama ve yetkilendirme işlemlerini gerçekleştirmek için gerekli olan middleware'i de
Bu adımları takip ederek, temel bir Identity kurulumu gerçekleştirmiş olacaksınız. Bu noktadan sonra, kullanıcı kaydı, oturum açma ve yetkilendirme gibi işlevsellikleri uygulamanıza ekleyebilirsiniz. Identity'nin sunduğu esneklik ve özelleştirme seçenekleri sayesinde, ihtiyaçlarınıza uygun bir kimlik yönetim sistemi oluşturabilirsiniz.
Öncelikle, Identity'yi projeye eklemek için gerekli NuGet paketlerini yüklememiz gerekiyor. Bu paketler, projenizde kimlik yönetimi işlevselliğini sağlamak için gereken tüm bileşenleri içerir. Aşağıdaki komutu kullanarak bu paketleri yükleyebilirsiniz:
CODE
1Install-Package Microsoft.AspNetCore.Identity.EntityFrameworkCoreBu işlemi tamamladıktan sonra, bir veritabanı bağlamı oluşturmalıyız. Bu bağlam, kullanıcı verilerini saklamak için Entity Framework Core kullanacak. Aşağıdaki örnekte,
ApplicationDbContext adında bir sınıf oluşturuyoruz:CODE
12345678
public class ApplicationDbContext : IdentityDbContext
{
public ApplicationDbContext(DbContextOptions options)
: base(options)
{
}
}
Şimdi,
Startup.cs dosyamızda Identity'yi yapılandırmamız gerekiyor. ConfigureServices metodunda aşağıdaki gibi Identity servisini ekleyebiliriz:CODE
123456789101112
public void ConfigureServices(IServiceCollection services)
{
services.AddDbContext(options =>
options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));
services.AddIdentity()
.AddEntityFrameworkStores()
.AddDefaultTokenProviders();
services.AddControllersWithViews();
}
Veritabanı bağlantı dizesini
appsettings.json dosyanıza eklemeyi unutmayın. Örnek bir bağlantı dizesi şöyle görünebilir:CODE
1234
"ConnectionStrings": {
"DefaultConnection": "Server=(localdb)\\mssqllocaldb;Database=IdentityDb;Trusted_Connection=True;MultipleActiveResultSets=true"
}
Son olarak, uygulamanızda kimlik doğrulama ve yetkilendirme işlemlerini gerçekleştirmek için gerekli olan middleware'i de
Configure metoduna eklemelisiniz:CODE
12345678910111213141516171819202122232425262728
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
else
{
app.UseExceptionHandler("/Home/Error");
app.UseHsts();
}
app.UseHttpsRedirection();
app.UseStaticFiles();
app.UseRouting();
app.UseAuthentication();
app.UseAuthorization();
app.UseEndpoints(endpoints =>
{
endpoints.MapControllerRoute(
name: "default",
pattern: "{controller=Home}/{action=Index}/{id?}");
});
}
Bu adımları takip ederek, temel bir Identity kurulumu gerçekleştirmiş olacaksınız. Bu noktadan sonra, kullanıcı kaydı, oturum açma ve yetkilendirme gibi işlevsellikleri uygulamanıza ekleyebilirsiniz. Identity'nin sunduğu esneklik ve özelleştirme seçenekleri sayesinde, ihtiyaçlarınıza uygun bir kimlik yönetim sistemi oluşturabilirsiniz.