更改WebAuthnfaceID提示/对话框上的文本

我正在尝试与WebAuthn集成以进行用户身份验证。

下面是我目前使用的代码:

const credOptions = {
    publicKey: {
      rp: {
        name: 'test inc',
        id:'login.test.com'
      },
      user,
      authenticatorSelection: {
        authenticatorAttachment: 'platform',
        requireResidentKey: true,
        userVerification: 'preferred'
      },
      pubKeyCredParams: [
        {
          type: 'public-key',
          alg: -7
        }
      ],
      attestation: 'direct',
      timeout: 60000,
      challenge
    }
  };
  try {
    const cred = await navigator.credentials.create(credOptions);
    return cred;
  } catch (e) {
    console.log(e);
  }

  • 在下面的屏幕截图中,我可以更改“登录”和“您想... ”下的文本,显示在 WebAuthn 提示/对话框中的 FaceID 或 TouchID。
  • 基本上我想在这两个字段中显示自定义文本,例如:
    • Sign In --> Enroll
    • Do you want to allow "login.com" to use FaceID
      --> Do you want to allow "Paypal" to use FaceID?

我尝试更改 Relying party( rp) 信息,credOptions但没有看到预期的结果。

任何人都可以请指导这是否可行。

回答

不幸的是,这是一个无法自定义的操作系统级提示。这是WebAuthn API的一个共同的局限性-出现响应的浏览器和操作系统的情态动词navigator.credentials.create().get()无法通过JS,因为它们被认为是有意不暴露在网页出于安全原因,浏览器或操作系统本身的情况下进行处理来操纵。


以上是更改WebAuthnfaceID提示/对话框上的文本的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>