我有两个Web应用程序,WCF和MVC共享同一个数据库。 我使用ASPNET身份2.0
虽然注册新用户,它创建确认令牌并发送电子邮件给用户。 创建令牌,发送电子邮件在WCF大部分完成,验证在MVC应用程序完成。
var code = UserManager.GenerateEmailConfirmationToken(user.Id);
string.Format("{0}/Account/ConfirmEmail?userId={1}&code={2}", WebsiteUrl,
HttpUtility.UrlEncode(user.Id), HttpUtility.UrlEncode(codeId));
我使用相同的数据保护供应商
在WCF
var provider = new Microsoft.Owin.Security.DataProtection.DpapiDataProtectionProvider("MyTestApplication");
UserManager.UserTokenProvider =
new Microsoft.AspNet.Identity.Owin.DataProtectorTokenProvider<ApplicationUser>(
provider.Create("UserToken"))
{
TokenLifespan = TimeSpan.FromDays(7)
};
在MVC
var dataProtectionProvider = new Microsoft.Owin.Security.DataProtection.DpapiDataProtectionProvider("MyTestApplication");
manager.UserTokenProvider = new DataProtectorTokenProvider<ApplicationUser>(dataProtectionProvider.Create("UserToken"))
{
TokenLifespan = TimeSpan.FromDays(7)
};
}
来源: 让ASP.NET身份2.0电子邮件确认WCF和MVC令牌工作
现在我的问题
工程在本地主机和QA罚款。 在本地主机测试OK的SSL了。
失败的生产(使用SSL)。 从WCF生成令牌和MVC验证失败。
- 生成并在同一应用程序的工作验证。
这是怎么invalid token
错误出现? 有web.config
什么关系呢?