asp.net - 如何通过门户中的注销按钮从所有打开的 Web 应用程序中注销?

标签 asp.net security post portal

我使用 post 方法 通过我的门户打开不同的网站,如下所示:

在我的门户主页中:

<form method="post" target="_blank" action="">
<input id="Hdn_r" name="Hdn" type="hidden" value="55622"> 
.....
</form>
<小时/>

然后在通过门户打开的任何网站的主页中进行以下检查:

var hr = HttpContext.Current.Request.UrlReferrer;
        if (hr != null && !string.IsNullOrEmpty(hr.AbsolutePath))
        {
            if (Request.UrlReferrer.AbsolutePath.Contains("Portal"))
            {

                if (Request.Form["Hdn_r"] != null && !string.IsNullOrEmpty(Request.Form["Hdn_r"].ToString())
                   && Request.Form["Hdn_a"] != null && !string.IsNullOrEmpty(Request.Form["Hdn_a"].ToString()) &&
                   Request.Form["Hdn_b"] != null && !string.IsNullOrEmpty(Request.Form["Hdn_b"].ToString()) &&
                   Request.Form["Hdn_c"] != null && !string.IsNullOrEmpty(Request.Form["Hdn_c"].ToString())
                   )
                {

                  Session["emp_num"]= int.Parse(Request.Form["Hdn_r"].ToString());
                //...........
<小时/>

我的问题是:

如何通过单击门户中的注销按钮从所有打开的网站注销?

假设我通过门户打开三个网站,我希望在注销(在门户中)时从所有打开的应用程序中注销?

注意:门户中的不同网站发布在不同的服务器上。

最佳答案

在您的所有网站中创建注销页面。然后,当你想注销时,用ajax调用那些注销页面。或者向该注销页面发出 http 请求。您无法直接注销,因为它们不在同一域中,并且一个站点无法更改另一站点的 session 。

关于asp.net - 如何通过门户中的注销按钮从所有打开的 Web 应用程序中注销?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21216787/

相关文章:

c# - 如何从 .Net 窗口应用程序读取 web.config

javascript - 在 asp.net aspx 页面上使用 jquery 获取隐藏字段值时遇到问题

asp.net-mvc - ASP.Net MVC 的 AntiForgeryToken 方法是否适用于负载均衡器?

security - 加强 HTTP 流量使其不可重现的想法

.net - 如何在 ASP.NET MVC 3 中发布文件数组?

javascript - JSON 对象,绘制图表时出现奇怪的情况,怎么了?

c# - 单文件 ASPX 和 LINQ

c - 缓冲区溢出利用实验,意想不到的结果

javascript - jQuery 拦截表单提交到参数字符串

java - 修复 java.net.SocketTimeoutException : Read timed out