#steam #openid #verify #api #spec

bin+lib steamopenid

A library for easily interacting with Steam's OpenID support

4 releases (2 breaking)

0.3.0 Aug 11, 2024
0.2.2 Aug 11, 2024
0.2.1 Aug 11, 2024
0.2.0 Aug 11, 2024
0.1.0 Aug 10, 2024

#25 in #openid

MIT license

11KB
81 lines

steamopenid (Steam OpenID 2.0 Support)

This crate extends an API using cURL to:

  • verify openid2.0 signatures with steam via HTTP requests

In the future, I'm planning on making this crate support all parts of Steam's OpenID 2.0 support, including:

  • the discovery phase
  • association creation
  • creating an auth url to redirect in order to get required information

The spec used to build this crate, as reference: https://openid.net/specs/openid-authentication-2_0.html

NOTE: this crate hardcodes Steam's OpenID2.0 Endpoint (https://steamcommunity.com/openid/login) and therefore will not work if Steam decides to change where their openid endpoint is (unlikely, but could happen).

This crate includes an example (examples/simple.rs) that demonstrates how to use this crate effectively.


lib.rs:

  • This is a crate intended for use with Steam's old, outdated OpenID 2.0 implementation.

  • Note: this crate does not add a login redirect endpoint to Steam's server (yet, possibly), but simply

  • checks against parameters to see if they are valid.

  • The source is maintained on https://github.com/prplnorangesoda/steamopenid.

  • This crate depends on cURL.

  • Functions to work with OpenID Key-value pairs.

Dependencies

~9–16MB
~249K SLoC