Platform: Web
when a user is trying to login using linkedin (via auth0) we get the following error:
Error occurred while verifying params could not verify identity.
from the investigation is seems that the problem is with the case sensitivity and unlike your other sdks the sfa is missing the flag “isVerifierIdCaseSensitive”
Thank you for sharing your concern. It seems like a configuration issue. Can you please provide us with the following details so that we can better assist you?
also you have a bug in your authentication to the web3auth dashboard , when i connect using my email i reach our company enterprise account but when i connect using google (same email) i get a detached account. when i try to login to to this site (community) using my email i get an error.
while i am able to connect using google, you do not recognize my account as a scale paid subscriber and that might be the reason it takes you a week to response?
Thank you for sharing the verifier details. Based on the information provided, it appears that you are using an aggregate verifier that combines Google and Twitter via Auth0.
May I please request you share the code snippet that you are using for configuration and login?
I have a document that includes a sample of how the aggregate verifier can be used, which I can share with you.
thank you for your reply, i noticed few differences between our code and the manual you have shared.
the main difference is The sdk, we are using the core Sfa sdk (@web3auth/single-factor-auth) while in the example you shared the NoModal sdk is used ({ Web3AuthNoModal } from “@web3auth/no-modal”);
the core object does not have .connectTo function, only .connect which does not accept “isVerifierIdCaseSensitive” flag.
also we do not run call the web3auth.configureAdapter(openloginAdapter) at all, isnt it being fetched from the account?.
here is the a snippet of the our code (i’ve cleared logs and unrelated code):
try {
const web3Auth = context.web3Auth!
if (!web3Auth) {
return
}
if (!idToken) {
return
}
if (!web3Auth.ready) {
throw new Error('Web3Auth status not ready')
}
const sessionId = web3Auth.sessionId
if (!user?.email) {
logger({
msg: 'Attempting to instantiate Web3 provider without user',
severity: 'warn',
})
throw new Error('Web3Auth status not ready')
}
const loginParams = {
verifier: Web3AuthDeps.socialVerifierName, /// 'grappa-social'
verifierId: user.email,
idToken: idToken,
subVerifierInfoArray: [
{
verifier: user.loginProvider,
idToken,
},
],
}
let web3AuthProvider
try {
if (!web3Auth.connected) {
if (web3Auth.status !== ADAPTER_STATUS.CONNECTED) {
usedIdTokens.current.add(idToken)
web3AuthProvider = await web3Auth.connect(loginParams)
}
} else {
web3AuthProvider = web3Auth.provider
}
} catch (error) {
throw new Error('Error while connecting to Web3 provider')
}
const provider = new ethers.providers.Web3Provider(web3AuthProvider as ethers.providers.ExternalProvider)
span.addEvent('Web3 provider instantiated')
span.setAttribute('provider', JSON.stringify(provider))
try {
const address = (await provider.getSigner().getAddress()).toLowerCase()
setContextState({
web3Auth,
provider,
address,
})
} catch (err) {
throw new Error('Detected a corrupted Web3Auth provider')
}
}
Hi,
Can we please schedule a live session? if you read our code snippet I shared you could see this is already the defined verifier’s name. the problem is not with the verifier since this problem is not persistent for all users. it only occurs for some and i suspect it is related to case sensitivity.
Also, i am still having issues with my email leads to two separated accounts and i don’t see anyone addressing it.