It needs a few more things to kill in order to sign the user out... check out this sample method:
public static void SignoutUser(System.Web.HttpContext httpContext, DotNetNuke.Entities.Portals.PortalSettings ps)
{
// sign them out
// Log User Off from Cookie Authentication System
System.Web.Security.FormsAuthentication.SignOut();
//remove language cookie
httpContext.Response.Cookies["language"].Value = "";
// expire cookies
if (DotNetNuke.Security.PortalSecurity.IsInRoles(ps.AdministratorRoleId.ToString()) && httpContext.Request.Cookies["_Tab_Admin_Content" + ps.PortalId.ToString()] != null)
{
httpContext.Response.Cookies["_Tab_Admin_Content" + ps.PortalId.ToString()].Value = null;
httpContext.Response.Cookies["_Tab_Admin_Content" + ps.PortalId.ToString()].Path = "/";
httpContext.Response.Cookies["_Tab_Admin_Content" + ps.PortalId.ToString()].Expires = DateTime.Now.AddYears(-30);
}
httpContext.Response.Cookies["portalaliasid"].Value = null;
httpContext.Response.Cookies["portalaliasid"].Path = "/";
httpContext.Response.Cookies["portalaliasid"].Expires = DateTime.Now.AddYears(-30);
httpContext.Response.Cookies["portalroles"].Value = null;
httpContext.Response.Cookies["portalroles"].Path = "/";
httpContext.Response.Cookies["portalroles"].Expires = DateTime.Now.AddYears(-30);
if (httpContext.Request.Cookies["_Tab_Admin_Preview" + ps.PortalId.ToString()] != null)
{
httpContext.Response.Cookies["_Tab_Admin_Preview" + ps.PortalId.ToString()].Value = "False";
}
}