【发布时间】:2014-07-03 22:56:45
【问题描述】:
我正在为具有单个租户数据库的应用程序创建 Web API 服务。每家公司都有自己的数据库,由我们严格控制和创建。我知道单租户数据库与多租户相比对维护的影响,我们认为单租户最适合我们的需求。用户只能由我们创建。
在仅基于用户名(电子邮件地址)进行身份验证时,将有一个主数据库将每个用户“映射”到他们的公司数据库。如果电子邮件匹配,则身份验证将在客户的公司数据库中继续进行,该数据库将包含密码哈希。
这使得数据库自包含,这是审计记录的外键所需要的。主数据库只是根据用户名(电子邮件地址)充当映射或路由。
我创建了一个新的 Web API 项目并使用了个人帐户模板。我喜欢它的工作方式,但不幸的是,我不知道如何对其进行定制以满足我的需求。这可能吗?我需要使用令牌。我能想到的唯一另一种选择是完全自定义的身份验证程序,但我不想掉以轻心,因为我确信我会在某个地方搞砸。我知道用户通过 SSL 将其用户名和密码传递给服务器,该服务器使用令牌进行响应,然后将令牌包含在对授权资源的每个后续请求的标头中。我只需要知道这是否是我必须自己完全实现的东西?整个事情可能只是一个应用程序的愚蠢模型,在这种情况下我愿意接受建议。
任何反馈都会有所帮助。
谢谢
【问题讨论】:
标签: authentication asp.net-web-api sql-server-2012 token