Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New Steam login flow #1125

Closed
xPaw opened this issue Aug 28, 2022 · 3 comments · Fixed by #1129
Closed

New Steam login flow #1125

xPaw opened this issue Aug 28, 2022 · 3 comments · Fixed by #1129
Milestone

Comments

@xPaw
Copy link
Member

xPaw commented Aug 28, 2022

Making this issue for collecting observations.

Implementation in JS: DoctorMcKay/node-steamcommunity#292

Even Steam client uses this flow, and it no longer uses login keys for remembering password, instead it uses new access_token field in the login message. There's also refresh_token, but I don't know how will the client decide when it needs to refresh the token.

Their tokens (and cookies) are JWT tokens, you can base64 decode it and see its expiration.

For web, the jwt token expires in a day, and when it does it will redirect to login.steampowered.com which has a separate JWT token cookie set (if remember password, it expires in 207 days).

When auth has confirmation_type 6, it will do a call to /jwt/checkdevice. When login. subdomain has steamMachineAuth cookie set, this will return true and it will avoid asking for an email code.

The protos: https://github.com/SteamDatabase/Protobufs/blob/master/steam/steammessages_auth.steamclient.proto

@fcastrocs
Copy link

You can use refresh_token or access_token to log in to steamcommunity
I've implemented both methods here.
https://github.com/fcastrocs/steam-web

@Adios22
Copy link

Adios22 commented Mar 22, 2023

When can we expect new SteamKit version?

@psychonic
Copy link
Member

When can we expect new SteamKit version?

When it's ready.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants