Mysql
 sql >> Datenbank >  >> RDS >> Mysql

So erhalten Sie Benutzer aus einer vorhandenen Datenbank für identityServer4

Dieser Artikel ist relevanter für Ihre Situation. Die von Ihnen verlinkte ist für Konfigurationsdaten und nicht für Benutzerdaten:http:/ /docs.identityserver.io/en/release/quickstarts/6_aspnet_identity.html

Kurz gesagt, Sie möchten über Asp.Net Core Identity auf Ihre Benutzerdaten zugreifen. Sie müssen:

  • Erstellen Sie eine Benutzerklasse mit den relevanten Feldern als Ihre Datenbank
  • Erstellen Sie eine EntityFramework-DbContext-Klasse, um Ihre Datenbank Ihrer Klasse zuzuordnen
  • Registrieren Sie Ihre Benutzerklasse und Ihren Datenbankkontext mit der aspnet-Kernidentität
  • Weisen Sie IdentityServer an, AspNetIdentity zu verwenden

So könnte Ihre Startup ConfigureServices-Methode nach der Implementierung aussehen. Hier nicht abgebildet sind die DbContext- und User-Klassen, die Sie erstellen müssen.

public void ConfigureServices(IServiceCollection services)
{
    // Add framework services.
    services.AddEntityFramework()
        .AddSqlServer()
        .AddDbContext<YourUserStoreDbContextHere>(options =>
            options.UseSqlServer(Configuration["Data:DefaultConnection:ConnectionString"]));

    services.AddIdentity<YourUserClassHere, YourRoleClassHereIfAny>()
        .AddEntityFrameworkStores<YourUserStoreDbContextHere>()
        .AddDefaultTokenProviders();

    services.AddIdentityServer()
        // Other config here
        .AddAspNetIdentity<YourUserClassHere>();
}

Einzelheiten zum Konfigurieren Ihrer Benutzerklasse und Ihres Datenbankkontexts finden Sie in der Dokumentation zu AspNet Identity:https://docs.microsoft.com/en-us/aspnet/core/security/authentication/identity