User Login with Steam OAuth
In this guide, you will learn how a React/NextJS app integrated with the Arcana Auth SDK can easily onboard users via custom login UI and Steam as the authentication provider.
Make sure you can access the Arcana Developer Dashboard: https://dashboard.arcana.network
Carefully follow the instructions to obtain Steam API key and set it up in the dashboard for user authentication.
Use the appropriate integration method as per the app type and integrate the app with the Arcana Auth SDK before accessing the user onboarding function of the Arcana Auth SDK.
Using Steam to onboard users in a Web3 app that is integrated with the Arcana Auth SDK is simple!
Just a single line of code!
Step 1: Call
Make sure that all the prerequisites listed above are met. The app should be successfully registered, configured, and integrated with the Arcana Auth SDK, before adding code to onboard users via Steam OAuth.
Check if a user is logged in:
const connected = await auth.isLoggedIn()
After onboarding users, developers can add code to access the other Arcana Auth SDK functions in the app. See Arcana Auth SDK Usage Guide for details.
Add code in the application to log out an authenticated user:
That is all!
Your app is all set for authenticating users via Steam OAuth. Authenticated users can instantly access the Arcana wallet to sign blockchain transactions.
No Aggregate Login with Steam OAuth
The aggregate login feature does not work for the Steam OAuth login mechanism.
If a user has the same email ID registered with say a social provider and with Steam OAuth, logging into an app using Steam will create a new unique user account even if the user uses the same email as the one used with a social provider or via the passwordless option. What this means is that the wallet address for the same user will be different when Steam is used to log in and subsequently a social provider or passwordless login is used by the same user having the same email ID.
Arcana JWT Token
Upon successful authentication, Arcana Auth SDK returns a unique JWT token to the app called the Arcana JWT Token. App developers can use this token to verify user login and subsequently generate another token for app use. Learn more about how to verify the Arcana JWT Token for apps deployed on Testnet and Mainnet.
To know more about how to use Web3 wallet operations programmatically in your app, see Arcana wallet Developer's Guide. Refer to the Arcana wallet User's Guide for more information on how authenticated app users can access the wallet UI.
- Arcana authentication concepts.
- How to integrate with the Arcana Auth SDK
- Handing authentication errors
- Auth Examples