Oracle的WDB_GATEWAY_LOGOUT在mozilla浏览器中不起作用

时间:2015-09-07 10:53:30

标签: plsql oracle10g mozilla mod-plsql

我有一个PL / SQL应用程序,它有一个注销按钮,当点击注销按钮时会执行以下代码:

-- Open the HTTP header
owa_util.mime_header('text/html', FALSE, NULL);

-- Send a cookie to logout
owa_cookie.send('WDB_GATEWAY_LOGOUT', 'YES', path=>'/');

-- Close the HTTP header
owa_util.http_header_close;

-- Generate the page
htp.p('You have been logged off from the WEBSITE');
htp.p('<a href="http://myApp/pls" target="_blank">click here to log in</a>');
htp.p('<BR>bye');

使用Internet Explorer时它非常完美,但是当我在重新登录时使用mozzila时,我仍然以上一个用户身份登录。有没有其他人处于这种情况?我怎样才能为mozilla做这个工作?

我从oracle文档页面获得了这段代码: https://docs.oracle.com/cd/B13789_01/server.101/b12303/secure.htm

提前致谢!

1 个答案:

答案 0 :(得分:0)

我发现最好设置和取消设置自己的会话Cookie。然后使用owa_custom来验证cookie。

在dad.config文件中添加:

protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
 {
   if (e.CommandName == "btnPlus")
   {
      // Your Logic for Adding & Multiplication
   }
   if (e.CommandName == "btnMinus")
   {
      // Your Logic for Subtraction & Multiplication
   }
 }

然后在模式中创建一个包:名为owa_custom并在其中添加一个函数:owa_custom.authorize

owa_custom.authorize将在每次Web调用之前调用。您可以检查会话cookie以及是否要允许Web调用返回true。要阻止,返回false,用户将获得403禁止。

然后,如果您愿意,可以编写自定义403禁止页面并重定向到您的登录页面。

请注意,在12C中,mod_plsql即将消失,您需要使用Oracle Rest Listener。那里存在相同的功能。事情只是有不同的名字。