Добавляю Webauthn аутентификацию для вебсайта. Столкнулся с тем что TouchId на MacOs не работает кросс-браузерно. Если аутентификатор регистрировался в Chrome, то залогиниться я могу только в Chrome. При попытке залогинится с TouchId в Safari - получаю ошибку (found no credentials on this device). И наоборот, если аутентификатор регистрировался в Safari, то я смогу залогинится только в Safari, а в Chrome получу ошибку.
Для регистрации аутентификатора вызываю navigator.credential.create(), c параметрами:
{
"rp": {
"name": "localhost",
"id": "localhost"
},
"user": {
"id": Unit8Array,
"name": "alex",
"displayName": "alex"
},
"attestation": "none",
"pubKeyCredParams": [
{
"type": "public-key",
"alg": -7
}
],
"timeout": 60000,
"authenticatorSelection": {
"userVerification": "preferred",
"requireResidentKey": false,
"authenticatorAttachment": "platform"
},
"challenge": Unit8Array,
"excludeCredentials": [
{
"type": "public-key",
"id": Unit8Array
}
],
"status": "ok",
"errorMessage": ""
}