相关疑难解决方法(0)

IdentityServer4注册UserService并从asp.net核心的数据库中获取用户

我已经搜遍了如何UserService在asp.net核心中注册一个IdentityServer4,但我似乎无法找到正确的方法来做到这一点.

这是注册发现InMemoryUsers代码在这里,但是我想从样品中定义我的MSSQL数据库不是静态的用户访问的用户.

var builder = services.AddIdentityServer(options =>
{
    options.SigningCertificate = cert;
});

builder.AddInMemoryClients(Clients.Get());
builder.AddInMemoryScopes(Scopes.Get());
builder.AddInMemoryUsers(Users.Get());
Run Code Online (Sandbox Code Playgroud)

那么我看了一下是针对IdentityServer3的.

var factory = new IdentityServerServiceFactory()
                .UseInMemoryClients(Clients.Get())
                .UseInMemoryScopes(Scopes.Get());

var userService = new UserService();
factory.UserService = new Registration<IUserService>(resolver => userService);
Run Code Online (Sandbox Code Playgroud)

从在线阅读看起来我需要使用DI系统注册UserService,但我不确定它如何绑定到IdentityServer,例如.

services.AddScoped<IUserService, UserService>();
Run Code Online (Sandbox Code Playgroud)

所以我的问题是:

如何将我绑定UserService到构建器(IdentityServer4用户)?我将如何调用我的数据库来访问和验证我现有的数据库用户UserService(我使用存储库连接到数据库)?

考虑到这一点必须asp.net核心一起使用.

谢谢!

c# asp.net-core identityserver4

69
推荐指数
3
解决办法
5万
查看次数

标签 统计

asp.net-core ×1

c# ×1

identityserver4 ×1