如何从身份验证和资源服务器加入数据库表?

时间:2015-03-11 13:43:43

标签: c# entity-framework oauth asp.net-identity

遵循OAuth规范,我有两个独立的服务器和数据库,一个用于我的webapplication(资源),另一个用于Asp.Net Identity(身份验证服务器)。在我的应用程序中,资源服务器数据库包含一个表用户,对于此示例,如下所示:

Table: Users
  [Id]
  [UserName]

我的身份验证服务器上的身份表如下所示:

Table: AspNetUsers
  [Id]
  [Email]
  [EmailConfirmed]
  [PasswordHash]
  [SecurityStamp]
  [PhoneNumber]
  [PhoneNumberConfirmed]
  [TwoFactorEnabled]
  [LockoutEndDateUtc]
  [LockoutEnabled]
  [AccessFailedCount]
  [UserName]

用户名始终在两个数据库之间共享。如果您的用户名是Timmy,则两个数据库都有一行用户名为Timmy。如果您要从资源服务器中删除Timmy,那么他也应该从身份验证服务器中删除。我找不到任何有关如何在代码中解决此问题的信息。如何在资源服务器中的用户名列和我的身份验证服务器之间创建链接?我:

  • 在资源服务器中向身份验证服务器添加上下文?在这种情况下,您将失去分离资源和身份验证服务器的重要性。

  • 我是否将身份验证表添加到资源数据库,或将资源表添加到我的身份验证数据库?其中任何一个都将删除服务器的分离。

有谁知道如何处理这个问题?

0 个答案:

没有答案