コンテンツにジャンプ

バックエンドの注記

あなたのバックエンドは通常のWebAuthn セレモニーの所有権を維持します:

  • 登録と認証の挑戦を生成する
  • 証明と断言の応答を検証する
  • 依存するパーティIDと挑戦の検証を強制する
  • ブラウザフローと同じようにクレデンシャルとカウンタを保存する

プラグインはあなたの既存のWebAuthn codeのフロントエンドの形状を保存するように設計されています。

  • ウェブ上では、実際のブラウザWebAuthn APIにフォワードします。
  • native Capacitor では、ブラウザのクレデンシャルオブジェクトをネイティブのパスキーAPIによってサポートしています。
  • あなたのバックエンドは、同じチャレンジと検証パイプラインを維持できます。

Androidで何が変わりますか

Androidで何が変わりますか

Androidのネイティブパスキーは、ブラウザの信頼モデルとは異なります。

  • デジタルアセットリンクは、Androidが同じ依存パーティーとクレデンシャルエコシステムをウェブサイトと共有できるようにします。
  • 文字列の「 clientDataJSON.origin 」の値は、ウェブサイトのオリジンとは異なる可能性があります。
  • あなたのサーバーが、 https://your-domain」以外のものを受け入れない場合、Androidのネイティブアサーションは、パスキーが有効である場合でも失敗する可能性があります。
推奨されるバックエンドのルール

ブラウザの期待されるオリジンと、期待されるAndroidアプリのオリジンを同じリレーピアリに許可するには、ネイティブAndroidパスキーをサポートする必要があります。

これが得られる:

  • ウェブサイトのブラウザサポート
  • Capacitorアプリ内でネイティブパスキーをサポート
  • 同じリレーピアドメインのパスキー生態系

直接JSONセーフな呼び出しが必要な場合

タイトル:直接JSONセーフな呼び出しが必要な場合

バックエンドがすでにJSONセーフな呼び出しを返している場合 PublicKeyCredentialCreationOptionsJSONPublicKeyCredentialRequestOptionsJSON直接プラグインAPIを使用するのではなく、ブラウザスタイルのシムを使用する代わりに、

import { CapacitorPasskey } from '@capgo/capacitor-passkey';
const registration = await CapacitorPasskey.createCredential({
origin: 'https://signin.example.com',
publicKey: registrationOptionsFromBackend,
});
const authentication = await CapacitorPasskey.getCredential({
origin: 'https://signin.example.com',
publicKey: requestOptionsFromBackend,
});