Custom Authentication with Web3Auth
Custom Authentication represents a pivotal feature within Web3Auth, enabling the integration of bespoke authentication flows into your application. This approach is recommended for those seeking to move beyond Web3Auth's standard authentication modal, offering a more tailored and comprehensive user experience. It empowers developers to craft authentication flows that are not only unique to their applications but also align with the nuanced needs of their user base.
Access to Custom Authentication is gated. The minimum
pricing plan to create custom
verifiers is the Growth Plan. However, you can use this
feature for projects on sapphire_devnet
for free.
Check out our reference on Auth Provider Setup for a detailed guide on how to set up your custom authentication.
Advantages of Custom Authentication
- Enhanced User Experience: Custom Authentication ensures a seamless journey for users from the start of the authentication process to its completion, maintaining consistency with your application's design and workflow.
- Customizable User Data Collection: It allows for the customization of the data collected from users during the authentication process, enabling you to tailor onboarding and user management according to your specific requirements.
- Seamless User Migration: For applications transitioning to Web3Auth, Custom Authentication facilitates the migration of existing user bases without necessitating the creation of new accounts, thereby preserving user continuity.
Implementation Across Web3Auth Products
- Plug and Play SDKs: While Custom Authentication remains an optional feature for Plug and Play SDKs, it's highly recommended for developers looking to provide a unique user experience and meet specific authentication requirements.
- Core Kit SDKs: Custom Authentication is a fundamental requirement for Core Kit SDKs, underscoring the need for bespoke authentication flows that align with the specific needs of the application and its users.
- Wallet Ecosystems: Currently, Wallet Ecosystem integrations do not support Custom Authentication. These ecosystems leverage predefined authentication mechanisms specific to each wallet platform.
Supported Login Providers
Social
Authentication Service Providers
Bring your own Custom Login Providers
You can integrate your own custom login providers with Web3Auth by using one of the custom login schemes, such as JWT or ECDSA signatures. This enables your users to continue using your existing login provider. Your application should adhere to the JWT specification and utilize JWKS for signing the JWT. The public keys for signing the JWT should be exposed through an endpoint.
There are some nuances with certain login providers, so don't hesitate to get in touch with us on our Community Portal and we will take care of things from there.
FAQs
Which logins should my application support?
You can select from this list or use your own custom authentication. There are some nuances with certain login providers, so don't hesitate to get in touch with us.
Should different logins lead to the same key?
You can choose to connect logins with the same Verifier ID
. For example, if a user uses generic
email logins and a Gmail login to log in on different occasions he/she can still retrieve the same
key. This can only be done on logins that share a common unique identifier for a user.
Read more about aggregating logins here.
Can XXXX authenticator/login be supported?
Yes, If you'd like support for a particular login system do send your query over to hello@web3auth.io If you have any questions, please get in touch with us on Community Portal. We'll be happy to help you out!