A proposal for substrate/wallet connect logins on Discourse

I had a chat with @rich today who told me some of the progress he’s made with allowing connecting a wallet address to log in to the forum with regard to his post here. This would be using the same general connection model as Polkassembly does, which would then connect to Discourse via a default feature of Discourse called Discourse Connect (which is talked about in more detail by Discourse here. This would require some work on the infrastructure side as we would have to host a callback for the Discourse Connect software and somehow map existing accounts to addresses as Discourse Connect is meant to replace the authentication method instead of add to them. This would be a radical change, and the previously linked explainer recommends the external service handle email validation and other technical details to be worked out.

In the interest of maintaining identities across different platforms, using an address login with identity support for the on-chain identity, this is a natural choice.

I’d like to open for discussion on thoughts on this, if anyone has any other experience with Discourse Connect or concerns about implementing this method.

1 Like

I’ve mentioned this on the previous thread, the APIs we should adopt here are JW3Ts and build a specific Discourse Connect plugin that supports this standard as opposed to a custom implementation.

That would be your preference - standards are not enforced, they are adopted.

Honestly I don’t care what approach people use, we just have a working example that can expand to a range of other areas, developed by a team with a long track record in identity management, SSO and bank security.

I shared the JW3T example with them - their feedback:

We have researched the solution you have sent. However, we didn’t find any practical implementation for the same.

If we move forward with that approach, it would be difficult to expand the solution.

We are using a standard protocol supported by Discourse to connect the wallet.

Maybe there’s something missing in translation, so please share anything else.

If you’d like to get your own working, then we can compare and contrast.