Web API创建Web API时无法识别新用户

时间:2015-11-11 22:56:11

标签: asp.net azure asp.net-web-api asp.net-identity owin

我有一个访问同一数据库的Web API和Azure Web App。此数据库包含所有用户信息。我使用ASP.NET Identity进行用户管理。我遇到的问题是,当Web应用程序创建用户时,Web API需要重新启动,或者在用户通过它进行身份验证之前至少相对较长时间。当然,这完全是不切实际的。如何在Web API上立即更新环境,以便用户可以访问其资源?

更新3:

原来它使用API​​进行身份验证,但由于我的用户未与Google帐户相关联,因此我没有保留正确的声明。见下面的答案。

1 个答案:

答案 0 :(得分:0)

哇。没关系。我们要求Google帐户在一种客户端上签名,我们应该在网络客户端上要求它,但我还没有设置它。如果帐户设置时没有关联的Google帐户,并且该电子邮件在客户端上设置了Google帐户,那么它将尝试使用数据库中不存在的Google声明进行身份验证。因此,虽然我可以通过Google SSO对该声明进行身份验证,但数据库中没有设置声明,导致401错误。经过身份验证,但未经授权

这意味着我的身份验证过滤器可能配置错误,因为如果我的帐户没有关联的Google帐户,则无论我的客户请求是什么,都不应对Google进行身份验证。这也意味着我需要在我的网络应用上重构我的SPA,静态地要求使用API​​进行Google身份验证。

相关问题