使用ThinkTecture IdentityServer和IdentityModel的联合身份验证,JWT,ASP.Net WebAPI和Ajax

时间:2013-09-09 17:22:01

标签: ajax security authentication asp.net-web-api federated-identity

在我的设置中,我有三个应用程序在三个不同的域上运行:

  • idsrv.mydomain.com - ThinkTecture IdentityServer
  • api.mydomain.com - 使用ASP.Net WebAPI实现的RESTful API
  • app.mydomain.com - 轻量级HTML / javascript应用程序

我希望用户登录app.mydomain.com,javascript ajax调用api.mydomain.com

我已在api.mydomain和app.mydomain上启用了联合身份验证,并按照描述here切换到IdentityServer中的JWT令牌 我也在api上启用了CORS。

现在我可以登录到app.mydomain.com并查看初始页面,但是访问API的ajax请求未经过身份验证,因此对API的调用仍然失败。问题是我不知道从哪里开始。我意识到我必须获取传递给app.mydomain.com的令牌并将其提供给该页面上的javascript,并将该令牌与每个请求一起发送到我的API,但我不知道如何获取令牌以及如何将其发送到API。任何帮助将不胜感激。

由于

1 个答案:

答案 0 :(得分:0)

检查作者MVC and Web API (JWT)

提供的样本