Nur die Session-Id ist als Cookie notwendig, der Client ist damit identifizierbar.
Ja, mir erschien das immer als zu einfach angreifbar (eine Session ID zufällig zu treffen sollte nahezu unmöglich gemacht werden und es reicht ja nach wie vor das Cookie zu stehlen, um die Authentizität zu übernehmen - was man aber wohl nicht verhindern kann)
Das Risiko kann man falls notwendig mit HTTPS schon deutlich senken.
Ich überlege auch in meinem Webframework OpenId oder Oauth zu unterstutzen, habe mich aber mit der Suche nach Delphi/Free Pascal Libraries bisher noch zurückgehalten.
Happy Coding!