cdi*_*die 3 asp.net-identity asp.net-core identityserver4
我一直在网上粉碎,发现了一些关于IdentityServer4及其真正用途的数据.
对于我到目前为止所理解的,IdentityServer4是令牌发行者,它是系统,它将保持特定客户端可以访问的资源与之间的链接.因此,IdentityServer将获得客户端标识,以确定是否,是或否,它有权访问此资源,或者它将获得用户标识(也称为邮件和密码)以获取令牌以说明用户是否已注册.
如果我没有误会,这意味着用户存储必须靠近IdentityServer,或者IdentityServer应该知道在用户存储中进行的每个修改.关于身份服务器的最新版本,我没有找到一些有价值的东西.而且,IdentityServer似乎需要AspNet Identity,这意味着信息将被复制......
有什么我不明白或出错的吗?如果没有,它是如何轻松实现的(考虑到我从头开始,我必须迁移旧的旧用户存储)?
您有几个用户管理选项:
选项1和2有很多例子和每个选项的快速入门,所以我不会深入到那里.
选项3 - 自定义实施.我们最终得到了这一点.我们有很多自定义的东西(感觉与扩展/覆盖EF方法无关),我们不需要Asp NET Identity,因此决定采用自定义实现.
或多或少 - 我们有一个数据库,它拥有我们的用户.用于访问数据库的EF(与PostgreSQL,SQL Server等配合使用,因此您可以自由使用)和自定义服务,可用于CRUD操作以及表所需的任何其他内容.
IdentityServer允许您连接几乎所有正在使用的服务/商店的自定义实现:
services.AddIdentityServer()
.AddInMemoryCaching()
.AddProfileService<ProfileService>()
.AddClientStoreCache<ClientStore>()
.AddResourceStoreCache<ApiResourceStore>()
Run Code Online (Sandbox Code Playgroud)
所有这些都是其接口的自定义实现.您也可以自由地修改AccountController实际登录的位置,这样您就可以在那里连接您的用户服务,并检查您自己的数据库.
所以基本上这里的方法取决于你,你的时间框架等.
| 归档时间: |
|
| 查看次数: |
3675 次 |
| 最近记录: |