Users running a non-download version of Vanilla (pulled from github), on branch release/2019.016 or master from the last 2 weeks should upgrade to release/2019.017 or latest master for security reasons. Downloaded official open sources releases are not affected.
Please upgrade here. These earlier versions are no longer being updated and have security issues.

2.0.18b2: SSO Logout not working and cookie not deleting

edited June 2011 in Vanilla 2.0 - 2.8
Hi,

I've installed the newest version of Vanilla Forums 2.0.18b2 today (because ProxyConnect is now working again), but I've got two problems:
1. When a click the logout button in Vanilla Forums the user is not redirected to my logout page.
2. I can't unset/delete the Vanilla cookies from my logout page, although I did set my domain correctly...

Are these bugs, or am I just making some kind of mistake?

Thanks!

Comments

  • I'd post a report with as much info as you can on the github issue tracker. They will ask you followup questions if they need to and triage it as needed.
  • I solved it in a dumb way: I just downgrade to 2.0.16 and with ProxyConnect 1.8.4 and it works again... :)

    However, there is one minor problem I noticed: administrators can't set a message or import a forum. Only the user that was initially created as administrator can do that. Is that done on purpose?
  • Don't know whether @Frog means the same, but in my setup (Vanilla 2.0.18b2, Proxyconnect 1.97, WordPress 3.1.3), I am unable to log out properly from Vanilla. Whenever I sign out by clicking vanilla's link, I remain signed in into wordpress, while it appears to be working fine the other way round.
  • Yes, I meant exactly the same. Because my client needed some features from Vanilla 2.0.18b2 I now use that version (and not 2.0.16 anymore) successfully with ProxyConnect 1.97. I was able to solve the problem by making changes in the ProxyConnect source code.
  • I'm facing the same problem.
    How did you solve it? What did you change?
    Thanks!
  • To change the logout issue I opened class.proxyconnect.plugin.php in the ProxyConnect folder and changed the EntryController_SignOut_Handler function with the following (I know it's a quick and dirty fix):
    public function EntryController_SignOut_Handler(&$Sender) {
    if (!Gdn::Authenticator()->IsPrimary('proxy')) return;

    Redirect('http://www.yoursite.com/logout.php', 302);
    }
    Do you also have the cookie problem?
  • I was having a similar problem with vanilla signout link not signing out of wordpress. had to modify the code a bit to make it work.

    I opened class.proxyconnect.plugin.php in the ProxyConnect folder and changed the EntryController_SignOut_Handler function with the following :

    public function EntryController_SignOut_Handler(&$Sender) {
    if (!Gdn::Authenticator()->IsPrimary('proxy')) return;
    Redirect('http://www.yoursitehere.com/wp-login.php?action=logout', 302);
    }

    note that if your wordpress is not installed on the root, you need to include the installation folder eg. http://www.yoursitehere.com/blog/wp-login.php?action=logout
  • TimTim Operations Vanilla Staff
    I'll look at this. Thanks

    Vanilla Forums COO [GitHub, Twitter, About.me]

  • edited July 2011
    I seem to be having the identical problem. I login to Vanilla from my site perfectly but when I attempt to logout from Vanilla it does not log me out nor does it redirect to my site. I attempted making the change to the class.proxyconnect.plugin.php file as described above but that does not seem to be working for me (and I believe that is only a fix for the redirect problem, not the won't log me out problem). Any suggestions? Thanks.
  • Once you've finished setup, you may need to clear out your browser's cache before testing. I had the same problems and that seemed to do the trick for me.
  • Had the same problem, I had to change my SignOut Handler to also clear the forum session. my final code was:

    public function EntryController_SignOut_Handler(&$Sender) {
    if (!Gdn::Authenticator()->IsPrimary('proxy')) return;
    $Authenticator = Gdn::Authenticator()->GetAuthenticator('proxy');
    $Authenticator->SetIdentity(NULL);
    $Authenticator->DeleteCookie();
    $SignoutURL = Gdn::Authenticator()->GetURL(Gdn_Authenticator::URL_REMOTE_SIGNOUT, NULL);
    Redirect($SignoutURL,302);
    }
Sign In or Register to comment.