Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/30.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Owin Windows窗体/重置密码_C#_Asp.net_Asp.net Mvc_Winforms_Asp.net Identity - Fatal编程技术网

C# Owin Windows窗体/重置密码

C# Owin Windows窗体/重置密码,c#,asp.net,asp.net-mvc,winforms,asp.net-identity,C#,Asp.net,Asp.net Mvc,Winforms,Asp.net Identity,我正在尝试解决如何从windows窗体应用程序发送重置密码链接,然后在ASP.NET MVC 5网站中运行。我目前正在使用Microsoft.OWIN Identity作为身份验证提供程序。我可以创建用户,但每当我尝试发送令牌时,网站总是声明该令牌无效,有人知道我需要怎么做吗 提前感谢, Chris使用DpapiDataProtectionProvider的唯一方法是双方、web和win forms进程共享相同的机器密钥,网站共享相同的进程模型。不太可能成功 相反,您是否可以使用webapi请求

我正在尝试解决如何从windows窗体应用程序发送重置密码链接,然后在ASP.NET MVC 5网站中运行。我目前正在使用Microsoft.OWIN Identity作为身份验证提供程序。我可以创建用户,但每当我尝试发送令牌时,网站总是声明该令牌无效,有人知道我需要怎么做吗

提前感谢,


Chris

使用DpapiDataProtectionProvider的唯一方法是双方、web和win forms进程共享相同的机器密钥,网站共享相同的进程模型。不太可能成功


相反,您是否可以使用webapi请求,以便网站能够生成令牌,并对win forms应用程序进行所有正确的身份验证,然后win forms应用程序按它的方式发送它?

我可以通过强制dataProtectionPRovider成为DpapiDataProtectionProvider来实现这一点-当web应用程序启动时,它会创建一个不同的提供者,这显然是令牌从未被接受的原因。这是一个很好的答案。如果您将令牌生成的责任完全放在web应用程序中,那么整个系统就更容易推理。特别是,除了开发场景之外,不建议使用DPAPI提供程序。