identityserver4 上用户的多个外部客户端
Multiple external clients for users on identityserver4
我正在从事一个项目,该项目允许用户创建用户以创建应用程序密钥或机密,以便外部客户端可以使用特定服务。用户可以创建多个秘密,他们可以选择在多个客户端上使用这些秘密。
为此,我计划创建一个将使用 identityserver4 的解耦身份验证服务器。
真正让我退缩的是我不确定是否应该在 auth 服务器上创建一个 API 层。我考虑 API 在 auth 服务器上的原因是我可以创建一种管理门户客户端,为用户提供创建、更新和访问他们的应用程序的前端 keys/secrets。甚至管理门户也将成为一个分离的 angular 应用程序。
目前有两件事阻碍了我:
- 我不确定通过
api 层。据我了解,identityserver 将无法提供允许我通过端点访问用户客户端列表的功能,但如果我错了请纠正我,并且有更好的方法来解决这个问题。
- 我知道我们可以轻松地创建新客户端并将其保存到带有 identityserver4 的数据库中,我计划为用户客户端使用 ClientCredentials 授权类型,但是在数据库和身份级别之间是否存在 link用户和客户?还是我需要自己创建该功能?
到目前为止,我已经看过了,但我没能找到与我使用 identityserver4 的情况相似的示例
抱歉这个菜鸟问题,我刚刚开始了解身份服务器和网络安全,所以其中很多概念对我来说仍然很新。
对于第 1 点,我会说是的,您可以为服务器数据创建一个 API 层。如果勾选IdenttiyServer4 AdminUI,Rock Solid也使用了UI后面的管理员API。但是你必须考虑加密、TLS 和其他安全机制来保证它的安全。
AFIK 对于数字 2,在用户和客户端之间没有身份级别的链接。你必须自己创造。
基本上,您需要一个支持Multitenancy的系统。我通过在 AspNetIdentity 用户 table 中添加 TenantId 字段实现了这一点。并且还将租户 ID 添加到声明列表中。
如有错误请指正
我正在从事一个项目,该项目允许用户创建用户以创建应用程序密钥或机密,以便外部客户端可以使用特定服务。用户可以创建多个秘密,他们可以选择在多个客户端上使用这些秘密。
为此,我计划创建一个将使用 identityserver4 的解耦身份验证服务器。
真正让我退缩的是我不确定是否应该在 auth 服务器上创建一个 API 层。我考虑 API 在 auth 服务器上的原因是我可以创建一种管理门户客户端,为用户提供创建、更新和访问他们的应用程序的前端 keys/secrets。甚至管理门户也将成为一个分离的 angular 应用程序。
目前有两件事阻碍了我:
- 我不确定通过 api 层。据我了解,identityserver 将无法提供允许我通过端点访问用户客户端列表的功能,但如果我错了请纠正我,并且有更好的方法来解决这个问题。
- 我知道我们可以轻松地创建新客户端并将其保存到带有 identityserver4 的数据库中,我计划为用户客户端使用 ClientCredentials 授权类型,但是在数据库和身份级别之间是否存在 link用户和客户?还是我需要自己创建该功能?
到目前为止,我已经看过了,但我没能找到与我使用 identityserver4 的情况相似的示例
抱歉这个菜鸟问题,我刚刚开始了解身份服务器和网络安全,所以其中很多概念对我来说仍然很新。
对于第 1 点,我会说是的,您可以为服务器数据创建一个 API 层。如果勾选IdenttiyServer4 AdminUI,Rock Solid也使用了UI后面的管理员API。但是你必须考虑加密、TLS 和其他安全机制来保证它的安全。
AFIK 对于数字 2,在用户和客户端之间没有身份级别的链接。你必须自己创造。
基本上,您需要一个支持Multitenancy的系统。我通过在 AspNetIdentity 用户 table 中添加 TenantId 字段实现了这一点。并且还将租户 ID 添加到声明列表中。
如有错误请指正