Jedesmal, wenn ein Benutzer unserer Seite mit http zugreifen will, werden sie über diesen Code in der Application.cfc auf https umgeleitet:Coldfusion-Session-Tracking http vs https
If (CGI.HTTPS != "on") {
location(url="https://#Application.PortalApp.GetDomain()##CGI.SCRIPT_NAME#?#CGI.QUERY_STRING#", addtoken="false");
}
Das Merkwürdige ist, wenn sie nie haben Zugriff auf die Website über http, aber zufällig auf einen internen Link, der auf http statt https verweist, sie sind ausgeloggt. Sobald sie sich jedoch erneut anmelden, können sie auf einen http-Link zugreifen, zu https weitergeleitet werden und im System angemeldet bleiben.
Ich habe einige Zeile-für-Zeile-Debugging und die https-Sitzung wird überschrieben, wenn ein Benutzer http zugreifen. Aber sobald ein Benutzer auf http zugreift, teilt das https die sessionid.
Ist das korrektes Verhalten?
In den ColdFusion Administrator-Sitzungseinstellungen ist HTTPOnly auf "true" gesetzt und "secure cookie" auf "false" gesetzt.
Markieren Sie dies als die Antwort, jedoch ist es wichtig zu beachten, dass HTTP-Session-IDs auf https übertragen, nur nicht umgekehrt. – Brad