我们有多个具有Single Sign On的Asp.Net MVC应用程序,其中我们使用FormsAuthentication.Encrypt()方法传递加密的字符串,并将其作为查询字符串传递,并使用FormsAuthentication.Decrypt()解密相同的字符串。
由于两个站点都是在Asp.Net MVC中开发的,因此我们能够使用表单身份验证并能够解密字符串。
现在,我们正在Asp.Net Core中开发一个新项目,在该项目中,我们将经过加密的字符串作为来自Asp.Net MVC的查询字符串进行传递,并且必须在Asp.Net Core Web应用程序中进行解密。
是否有其他方法可以在Asp.Net Core中解密字符串
注意:我们没有使用Asp.Net身份
//Encryption
FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(1,"Name",DateTime.Now,DateTime.Now.AddMinutes(60),true,"DataToEncrypt");
string encrypted = FormsAuthentication.Encrypt(ticket);
Response.Redirect("siteUrl?CookieName="+encrypted );
//Decryption
HttpCookie authCookie = Request.Cookies["CookieName"];
var formsAuthenticationTicket = FormsAuthentication.Decrypt(authCookie.Value);
string _userData = formsAuthenticationTicket.UserData;