Steam Login / Authentication Plugin

Yes it does

So all this does is to fetch username and realname, then?
Not entirely useful, and not a login plugin in my opinion.

Considering it can fetch avatar, and you can link steamid to a custom field with a little bit of custom coding (very little), it definitely is a login plugin.

Heck, from a populated steamid one could populate groups based on steam groups or a tons of other things with minimal effort.

2 Likes

As mentioned before, unless Steam shares an email address, it can’t access it and bind the user to that email address. There are plenty of other authentication plugins that use the same principle. Discourse accommodated this fact very early on. You’re free not to use the plugin though, if you think it doesn’t suit your needs. You just don’t have to install it.:roll_eyes:

4 Likes

Yep, but it’s a Steam thing – they don’t hand out emails. What’s really useful is the ID to link to other things, but for some reason, this isn’t saved anywhere that I can see.

Right now, it’s a bit useless since it doesn’t even save the SteamID anywhere that I can see (and it’s also bugged – if you didn’t confirm your email yet and try to login via Steam, it’ll just show an error page instead of a warning to confirm your email first). However, it has tons of potential. For example, we use PlayFab (BaaS). If we can save their steamId, they’ll have access to our other services, linking directly to our game.

So right now, it’s … not useful. However, if someone were to spruce it up, there’s a lot that can be done with it.

This plugin would become far more generally applicable if we ever get around to supporting multiple OAuth providers.

Steam authentication wouldn’t even have to be available upon login. It should be something you’d be encouraged to do later. Say, 1 week after registration, if you still haven’t connected with steam, @discobot could remind you that this is a possibility.

EDIT: We support multiple auth providers now:

6 Likes

Smart. And … off topic O__O ooo what is discobot? Does this come stock?

Is it possible to add Steam’s profile in the profile so that others can view or edit it from the profile options?

Hello @def

I think your plugin broke with the discourse 5 patch regarding Font Awesome 5.
The page is broken with the error

Undefined variable: “$fa-var-steam”.\A on line 7 of plugins/discourse-steam-login/auto_generated/plugin_80b807a32d0970c9f414b0eec9dd64acc9fd9c4c.css\A >> content: $fa-var-steam;\A -------------^\A ’

EDIT: After I commented it out in the app.yml and rebuild, the forum worked again.

2 Likes

I’ve updated the plugin to fix the FA5 issue (commit).

8 Likes

Hi. Thank you guys for working on this!
Is it possible to change the button text somehow? I’d like to replace ‘with’ with the Portuguese translation to keep consistent with my other social logins.
I couldn’t find a way to override the string in the admin dashboard.

If you’re referring to this text, it won’t be found in Admin

A quick but dirty approach would be to fork the plugin and edit the text in the plugin.rb file. Forking can generally be a bad idea because it essentially becomes your own plugin to maintain, but until / unless the plugin becomes internationalized it should “work”.

3 Likes

Yes, I meant that text! I think if I’m about to work on it, it might as well be helpful to others. Would it be hard to provide i18n support for this plugin?

Better even: do a PR that internationalyze the plugin :wink:

1 Like

I’ve just released a new version of this plugin that makes it more compatible with the current Discourse code base. The steam web api key is configured via site settings and all text are translatable now.

12 Likes

Are there any new features with this change other than changing the token?

What are the features you have in mind?

1 Like

Hi. I used the previous installation method to work normally, but now I will use the new method and the account verification will fail. I need your help.

Thank you very much!

Translation: Sorry, an error occurred while verifying your account. Maybe you have not approved the authorization application?

The error message in the URL (connection_failed) imply that either browser or server can’t connect to the Steam service.

Since you appear to be in China, do Steam work normally there? Or they use a different domain, like most services?

1 Like

Ok, maybe I should continue to check the availability of the server connection Steam. Thank you for your help! :sweat_smile:

1 Like