コンテンツにジャンプ

Backend Notes

GitHub

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

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

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

  • ウェブ上では、実際のブラウザWebAuthn APIにフォワードします。
  • ネイティブCapacitorでは、ネイティブパスキーAPIによって裏付けられたブラウザーのようなクレデンシャルオブジェクトを返します。
  • backendは同じ課題と検証パイプラインを維持できます。

Androidの場合

Androidの場合

Androidのネイティブパスキーはブラウザの信頼モデルと同じではありません。

  • Digital Asset Linksを使用すると、Androidは同じ依存先と資格情報のエコシステムをウェブサイトと共有できます。
  • literalの clientDataJSON.origin __CAPGO_KEEP_0__
  • backendは、ウェブサイトのオリジンと異なる値を拒否することを推奨します。 https://your-domainAndroidのネイティブアサーションは、パスキーが有効である場合でも失敗する可能性があります。

Section titled “Recommended backend rule”

それがあなたに与えるもの:

  • ウェブサイトのブラウザサポート
  • Capacitor アプリ内でのネイティブパスキー サポート
  • 同じ依存パーティドメインのパスキー エコシステム

直接 JSON 安全なコールが必要な場合

「直接 JSON 安全なコールが必要な場合」のセクション

あなたのバックエンドがすでに JSON を返している場合 PublicKeyCredentialCreationOptionsJSON 、あなたはブラウザスタイルの shim の代わりに直接プラグイン __CAPGO_KEEP_0__ を使用することもできます: PublicKeyCredentialRequestOptionsJSON, you can also use the direct plugin API instead of the browser-style shim:

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,
});

「バックエンドのノートから続ける」のセクション

That gives you:

If you are using バックエンド用ノート を使用して認証とアカウントフローを計画し、 Using @capgo/capacitor-passkey Using @capgo/capacitor-passkey @capgo/capacitor-social-login Using @capgo/capacitor-passkey @capgo/capacitor-social-login for the implementation detail in @capgo/capacitor-passkey, @capgo/capacitor-social-login @capgo/capacitor-passkey Capacitorのパスワード認証機能を実装するために、 2要素認証の実装詳細について。