So basically you want to make sure the user is authenticated. Here, Steam provides your server with a key (OpenID server), and your server has provided a key to the OpenID server. This is very similar to the tokens used for Anti-Forgery attacks. Steam provides your server with user identification, and your server marks the location of the Steam server. Then the user is allowed to view the contents of your server. Steam will probably use the API, so if the credentials are cached in the browser, it will not request them in the future.
Note. HTTP has no statelessness, so you need to use sessions to make sure you are still logged in.
source
share