メインコンテンツにスキップ

Capacitor アプリケーションでのバイオメトリック認証

Capacitor アプリケーションでのセキュアなバイオメトリック認証を実装する方法を学びましょう。ユーザー体験を向上させ、敏感なデータを保護しましょう。

マーティン・ドナディュー

マーティン・ドナディュー

コンテンツマーケター

Capacitor アプリでバイオメトリック認証

バイオメトリック認証 ユーザーは指紋、顔、または他の生物学的特性を使用してアプリに安全にアクセスできます。パスワードの代わりに。 開発者が「Capacitor」と一緒に働いている場合、この機能を実装するのは簡単で、iOSとAndroid両方で動作します。ここでは簡単な概要を紹介します。バイオメトリック認証の利点

  • パスワードよりも安全です。

    • ログインを高速化してユーザー体験を向上します。
    • 敏感なデータのセキュリティ基準を満たします。
    • サポートされているメソッド
  • 指紋: 速く一般的です。

    • __CAPGO_KEEP_0__
    • __CAPGO_KEEP_0__
    • 顔認識: 手の負荷なしのオプション。
    • アイリススキャン: 高セキュリティの使用ケース (制限されたデバイス)。
  • 声認識: アクセシビリティに焦点を当てた (制限されたサポート)。

    • Capacitor 3.0+.
  • __CAPGO_KEEP_0__ 3.0+。

    • セットアップのハイライト:
    • AndroidManifest と Info.plist に権限を追加。
    • Keychain (iOS) または Keystore (Android) を使用して安全なストレージ。

完全性とフォールバックオプションのための徹底的なテスト。

プラグインの比較プラグイン名: Capacitor バージョン機能最適
@aparajita/capacitor-biometric-authCapacitor 8Native biometry, device credentials新しいプロジェクトのCapacitor 8
capacitor-native-biometricCapacitor 3, 4Secure credential storage, Keychain/KeystoreCredential management
すべてのバージョンBiometric and device credential supportFlexible authentication options

Biometric authentication in Capacitor apps は、機密情報を保護する安全で使いやすい方法です。全記事では、セットアップ手順、codeの例、テスト戦略、セキュリティ基準について詳しく説明しています。

Ionic Biometric (FaceID / FingerPrint) 認証

セットアップ要件

を有効にするには、 Capacitorアプリ

、必要なツール、依存関係、およびプラットフォーム固有の設定を構成する必要があります。以下に、AndroidおよびiOSプラットフォームの両方のステップバイステップのセットアップ要件が記載されています。

必要なツールと依存関係

実装に進む前に、以下のツールと依存関係が用意されていることを確認してください。コンポーネント最小バージョン
Capacitor3.0 以上Core フレームワーク
Node.js最新のLTSパッケージ管理
Xcode最新バージョンiOS 開発
Android Studio最新バージョンAndroid 開発
物理デバイスiOS 13+ / Android API 23+生体認証機能のテスト

選択してください 生体認証プラグイン Capacitor のバージョンに基づいて、以下のいずれかを選択してください:

  • @aparajita/capacitor-biometric-auth Capacitor 8 の場合の生体認証
  • capacitor-native-biometric Capacitor 3 と 4 の場合の生体認証

Android のセットアップ手順

Android で生体認証を設定するには、プロジェクトファイルにいくつかの変更が必要です。

  1. マニフェストの設定

    以下の権限をアプリに追加してください。 AndroidManifest.xml ファイル:

    <uses-permission android:name="android.permission.USE_BIOMETRIC" />
    <!-- For Android 9 (API 28) or lower -->
    <uses-permission android:name="android.permission.USE_FINGERPRINT" />
  2. Gradleセットアップ

    アプリの build.gradle ファイルを更新して、必要なバイオメトリック依存関係を含めるようにしてください。

    dependencies {
        implementation "androidx.biometric:biometric:1.1.0"
    }

iOSセットアップ手順

iOSの場合、バイオメトリック認証を設定するには、以下の手順に従う必要があります。

  1. Info.plist設定

    必要な使用説明を Info.plist ファイル:に追加してください。

    <key>NSFaceIDUsageDescription</key>
    <string>Authentication required for secure access</string>
  2. キーチェーン設定

    Xcodeでキーチェーン機能を有効にします。

    • プロジェクト設定を開きます。
    • Go to the 署名 &#x26; Capabilities セクションを開きます。
    • Keychain Sharing 機能を追加します。 アクセス グループを設定する必要がある場合は、必要に応じてアクセス グループを設定します。
    • Authentication Policies
  3. ローカル認証ポリシーを設定して、次のシナリオを処理します。

    認証失敗

    • デバイスのパスコードにフォールバックします。
    • デバイスのパスコードにフォールバックします。
    • 生体認証の利用可能性の確認

    セキュリティの向上のために、iOS Keychainを使用して機密情報を保存してください。この設定により、両方のTouch IDとFace IDの互換性を確保し、ユーザー認証情報を保護します。

Code実装

codeの設定が整った後、セキュアなcodeの実装に進みます。このプロセスでは、適切なプラグインを選択し、信頼できる認証フローを作成します。

プラグインの選択ガイド

Capacitorアプリ向けの生体認証プラグインを選択する際は、プロジェクトの特定のニーズに合致するものを選択する必要があります。ここでは、人気のあるオプションを紹介します。

プラグイン名Capacitorバージョン主な機能適切なもの
@aparajita/capacitor-biometric-authCapacitor 8ネイティブバイオメトリック、デバイスクレデンシャル、包括的なAPI新しいプロジェクトのCapacitor 8
capacitor-ネイティブバイオメトリックCapacitor 3, 4セキュアなクレデンシャルストレージ、Keychain/Keystore統合クレデンシャル管理が必要な既存のプロジェクト
すべてのバージョンバイオメトリックとデバイスクレデンシャル認証、クリーンなAPI柔軟な認証オプションが必要なプロジェクト

認証Codeの例

ここでは、__CAPGO_KEEP_0__の使用方法を紹介します。 @capgo/capacitor-ネイティブバイオメトリック バイометリック認証用プラグイン:

import { Biometrics } from '@capgo/capacitor-native-biometric';

async function setupBiometricAuth() {
  try {
    const { isAvailable } = await Biometrics.isBiometricsAvailable();

    if (!isAvailable) {
      return {
        success: false,
        message: "Biometric authentication not available"
      };
    }

    const result = await Biometrics.authenticate({
      reason: "Access your secure data",
      title: "Verify Identity",
      subtitle: "Use biometrics to authenticate",
      cancelTitle: "Use Password Instead"
    });

    return {
      success: true,
      data: result
    };
  } catch (error) {
    return {
      success: false,
      error: error.message
    };
  }
}

セキュアなクレデンシャルを管理する場合、 capacitor-ネイティブバイオメトリック __CAPGO_KEEP_0__が実装されたら、機能を適切にテストすることでその機能を検証することが重要です。

import { NativeBiometric } from '@capgo/capacitor-native-biometric';

async function secureCredentialStorage(credentials) {
  try {
    await NativeBiometric.setCredentials({
      username: credentials.username,
      password: credentials.password,
      server: "api.yourserver.com"
    });

    // Verify storage by retrieving the credentials
    const stored = await NativeBiometric.getCredentials({
      server: "api.yourserver.com"
    });

    return stored.username === credentials.username;
  } catch (error) {
    console.error("Credential storage failed:", error);
    return false;
  }
}

Once the code is in place, it’s crucial to validate its functionality through proper testing.

バイオメトリック認証が信頼性とセキュリティを確保するには、以下のテスト戦略を検討してください。

デバイス互換性テスト

  • さまざまなデバイスと状況で認証が機能するかどうかを確認してください。

    エラーハンドリングと一般的なシナリオ

    async function runCompatibilityTests() {
      const tests = {
        biometricAvailable: await Biometrics.isBiometricsAvailable(),
        credentialStorage: await testCredentialStorage(),
        authenticationFlow: await testAuthFlow(),
        fallbackMechanism: await testFallbackAuth()
      };
    
      return tests;
    }
  • エラーをシミュレートし、フォールバックメカニズムをテストしてください。

    セキュリティ検証

    async function validateErrorHandling() {
      try {
        await Promise.race([
          Biometrics.authenticate(),
          new Promise((_, reject) =>
            setTimeout(() => reject(new Error("Timeout")), 30000)
          )
        ]);
      } catch (error) {
        return implementFallbackAuth();
      }
    }
  • セキュリティ検証

    セキュリティ基準を満たした実装を確実にする:

    async function validateSecurityMeasures() {
      const validations = {
        keychain: await validateKeychainAccess(),
        biometricStrength: await checkBiometricStrength(),
        encryptionStatus: await verifyEncryption()
      };
    
      return validations.keychain &&
             validations.biometricStrength &&
             validations.encryptionStatus;
    }

さらに、次のようなシナリオをテストする:

  • 複数回の認証失敗
  • デバイスの再起動後の動作
  • 前景とバックグラウンドアプリの状態の移行
  • ネットワーク接続の変更
  • システムのバイオメトリック設定の更新

バイオメトリック認証システムの徹底的なテストにより、実用的な環境で機能する堅牢なシステムが確保される。

セキュリティ基準

バイオメトリック認証における強固なセキュリティを確保するには、データ保護を優先し、規制遵守を徹底し、層化されたセキュリティ技術を適用する。

データセキュリティ手法

iOSでは、バイオメトリックデータは暗号化され、ストレージに保存される。 Keychain, Androidは KeystoreCapacitorプラグインを使用している場合、ユーザーキャッシュ情報を安全に保存することができます。 capacitor-native-biometric For data transmission, always implement

import { NativeBiometric } from '@capgo/capacitor-native-biometric';

async function securelyStoreCredentials(username, password) {
  const server = "api.yourapp.com";

  // Use the highest available encryption
  await NativeBiometric.setCredentials({
    username,
    password,
    server,
    authenticationType: "biometricAndDevice",
    accessControl: "biometryAny"
  });
}

end-to-end encryption to keep sensitive information protected. Store Guidelines

App storesは

biometric security の厳格な規則を強制しています。Here’s a breakdown of the major platform requirements:

プラットフォーム主な要件実装注意点
iOSLocalAuthenticationフレームワークを使用し、代替オプションを提供し、ユーザーの明確な同意を確保する両方のFace IDとTouch IDをサポートする
AndroidLeverage the BiometricPrompt API, obtain explicit user permission, and declare security levels指紋認証と顔認証をサポートし、異なるセキュリティレベルの区別

マルチファクター設定

セキュリティの強化は、組み合わせる必要がある 生物認証 追加の認証レイヤーを使用します。例えば、初回認証後、ユーザーのアイデンティティを確認するための追加のステップを追加できます。 生物学的認証多要素アプローチは、通常、次の要素を含みます。

async function setupMultiFactorAuth() {
  // First factor: Biometric verification
  const biometricResult = await Biometrics.authenticate({
    reason: "Verify your identity",
    title: "Authentication Required"
  });

  if (biometricResult.verified) {
    // Second factor: Time-based OTP or similar mechanism
    const totpResult = await verifyTOTP();
    return totpResult.success;
  }

  return false;
}

主な生物学的認証

  • 二次的な確認
  • (例:SMS __CAPGO_KEEP_0__ または認証アプリ) (e.g., SMS code or an authenticator app)
  • 追加のセキュリティ Capgoを使用してライブアップデートを行っている場合、セキュリティ基準への準拠を確実にするには、エンドツーワンエンド暗号化の機能を利用してください。この機能により、更新中の生物学的認証方法がセキュアで、プラットフォームの要件と一致します。

Capgo __CAPGO_KEEP_0__ __CAPGO_KEEP_0__ [1].

保守ガイド

生体認証システムを安定して動作させるには、速度、バッテリー効率、タイムリーな更新をバランスさせる必要があります。

速度とバッテリーのヒント

生体認証を効率的に実装するための code Snippet を以下に示します。

// Efficient authentication implementation
async function optimizedBiometricCheck() {
  const authResult = await NativeBiometric.isAvailable();

  if (!authResult.isAvailable) {
    return handleFallback();
  }

  // Cache authentication state to avoid unnecessary re-checks
  if (this.cachedAuthState && !this.isAuthExpired()) {
    return this.cachedAuthState;
  }

  return NativeBiometric.verifyIdentity({
    reason: "Verify your identity",
    title: "Authentication Required",
    maxAttempts: 3
  });
}

生体認証システムのパフォーマンスを最大限に引き出すには:

  • バッチ認証: 認証要求が複数回提示されるのを避けるために、認証が必要なアクションを一つのセッションにグループ化します。
  • スマートキャッシュ: 認証状態を安全に保存し、有効期限を設定して、不要な認証を回避します。
  • バックグラウンド最適化: 認証中は非 essenstial タスクを一時停止して、速度を向上させてバッテリーを節約します。
  • イベント駆動アプローチ: 定期ポーリングを削減し、認証状態の監視にイベントリスナーを使用して効率的に管理する。

Updates with Capgo

Capgo Live Update Dashboard Interface

Capgo はアプリの更新を簡素化します。

ここで、Capgo が更新管理のための素晴らしいツールである理由をご紹介します。

  • Instant Deployment: セキュリティの緊急修正や新機能を遅れずに配信する。
  • Staged Rollouts: 一部のユーザーグループにのみ更新をテストし、全員に配信する前にテストする。
  • Version Control: 認証バージョンの管理を改善するために、異なる認証バージョンを追跡する。
  • 緊急ロールバック問題が生じた場合に、以前のバージョンに迅速に戻すことができます。

API の更新

API のバイオメトリック情報を最新の状態に保つことは、セキュリティと機能性のために不可欠です。更新のガイドラインに従って、最新の情報に沿った行動をとりましょう。

更新タイプ監視方法実装スケジュール
セキュリティパッチプラグインリポジトリの警告24 時間
機能更新プラットフォームドキュメント1 週間
変更点リリースノート2-4 週間
ストアポリシーアップデート開発者ポータル提出前に

これらの領域に焦点を当ててください:

  • プラットフォーム変更iOS の LocalAuthentication と Android の BiometricPrompt API の更新を追跡してください。
  • セキュリティ基準最新のバイオメトリックセキュリティ要件に合わせてください。
  • ストアガイドライン: Apple App Store と Google Play のポリシーに準拠することで、提出の問題を回避することができます。

結論

主なポイント

Capacitor アプリにバイオメトリック認証を追加するには、セキュリティ、パフォーマンス、ユーザー体験をバランスさせる必要があります。ここでは、主な要素を簡単にまとめてみました。

コンポーネント実装の焦点主な考慮事項
セキュリティ基準プラットフォームネイティブストレージ(Keychain/Keystore)エンドツーエンド暗号化、クレデンシャル保護
プラグインの選択最新バージョンの互換性複数のバイオメトリックタイプのサポート
更新管理定期的なメンテナンスサイクルセキュリティパッチの迅速な展開
ユーザー体験フォールバック認証オプションユーザーフレンドリーな認証プロンプト

これらのコンポーネントは、成功した統合への道筋を示しています。

バイオメトリック認証の実装手順

以下の手順に従って、バイオメトリック認証をアプリに統合してください。

  • プラグイン統合
    バイオメトリック プラグインを選択してください。 Capacitor のバージョンに合ったものを選びましょう。設定ファイル - 例えば、 AndroidManifest.xmlInfo.plist - を適切に設定してください。セキュリティ上のクレデンシャル ストレージのためには、Keychain または Keystore のようなネイティブ ソリューションに頼りましょう。

  • セキュリティ設定
    ユーザー データを保護するには、すべてのクレデンシャル トランスミッションにエンドツーエンド暗号化を有効にします。必要な場合は、 多要素認証 を追加してセキュリティの追加層を実現しましょう。エラー処理とフォールバックオプションを計画して、失敗の場合でも機能性を維持しましょう。

  • 継続的なメンテナンス
    アプリをセキュアに保つには、セキュリティ パッチの更新を定期的に設定しましょう。プラグインの更新とセキュリティ アドバイザリーを監視してください。 Capgo などのツールを使用すると、このプロセスを簡素化できます。 Capgo は、24 時間以内に 95% のユーザーが更新するという驚くべき 95% のユーザー更新率を誇っています。これは、ツールキットに貴重な追加となるでしょう。 [2].

“ Capgo は、開発者がより生産的になることを望む開発者にとって不可欠なツールです。バグ修正のレビューを避けることは、金の価値です。” - Bessie Cooper [2]

FAQ

::: faq

What are the differences between biometric plugins for Capacitor, and how can I select the best one for my app?

Capacitorアプリ向けのバイオメトリックプラグインを選択する際は、プロジェクトの特定の要件に合致するものを選択することが重要です。考慮すべき要素としては、 プラットフォームの互換性 (iOS、Android、または両方に対応する必要があるか)、統合プロセスの簡素性、そして Face ID指紋認証.

をサポートするかどうかなどがあります。 このガイドでは、Capacitorアプリ向けのバイオメトリック認証の実装について中心に説明していますが、__CAPGO_KEEP_0__ Capgo __CAPGO_KEEP_0__アプリ向けのバイオメトリック認証の実装の重要な側面は、ユーザーのプライバシーとセキュリティを保護することです。

::: faq

biometric 認証を実装した Capacitor アプリがセキュリティ基準とアプリストアのガイドラインを満たしていることを確認するにはどうすればよいですか?

biometric 認証を実装した Capacitor アプリが現在のセキュリティ基準とアプリストアの規則を満たしていることを確認するには、次の重要な実践に従ってください。

  • 信頼できるプラグインを選択する: Capacitor のような信頼できる biometric 認証プラグインを使用して、デバイス間で平滑に動作するアプリを確実に安全に保証します。 @capacitor/biometrics プラットフォームの規則に従う
  • : Apple と Android のガイドラインに従い、ユーザーの同意を取得し、安全なストレージを使用し、PIN またはパスワードなどのバックアップオプションを提供することなどを行ってください。依存関係を最新に保つ
  • : アプリとライブラリを定期的に更新して、脆弱性を修正し、変化する基準に沿ったままにします。ライブアップデートサービスとして

__CAPGO_KEEP_0__ biometric 認証を実装した Capgo アプリがセキュリティ基準とアプリストアのガイドラインを満たしていることを確認するにはどうすればよいですか? このプロセスをスムーズにすることができます。アプリのセキュリティアップデートや改善を即時で、ストアの承認遅延を回避して、アプリをセキュアで、AppleおよびAndroidのポリシーに準拠した最新の状態に保つことができます。 :::

::: faq

Capacitorアプリにバイオメトリック認証を統合する際に開発者が直面する可能性のある課題は何か、それらを乗り越える方法は何かを教えてください。

Capacitorアプリにバイオメトリック認証を実装するには、さまざまなデバイスをサポートするためのプラグインを使用する必要があります。これらのツールは、AndroidおよびiOS両方のプラットフォームをサポートすることで、さまざまなデバイスでアプリが平滑に動作するように支援します。

  • デバイスの互換性アプリが両方のプラットフォームでバイオメトリック機能をサポートするには、プラグインなどのツールを使用してください。 @capacitor-fingerprint-authユーザーの許可

  • ユーザーに明確な情報を提供し、ユーザーが許可を与えない場合にアプリが柔軟に動作するように設計することで、ユーザーの許可を効果的に管理することができます。 データのセキュリティ

  • 認証データを保護することは非常に重要です。暗号化のベストプラクティスに従ってください。 暗号化のベストプラクティスに従ってください。 各プラットフォームから提供されるセキュリティガイドラインに従って、機密情報を安全に保つ。

アプリストアの承認手続きの面倒さを避けて、バイオメトリック機能に関連する更新や問題を解決するには、Capgoなどのツールを使用できます。この機能により、リアルタイムの更新が可能になり、AppleやAndroidのポリシーに準拠しながら、バグを解決したり機能性を向上させたりできます。

Biometric Authentication in Capacitor Appsから続けて

Biometric Authentication in __CAPGO_KEEP_0__ Appsを使用している場合 セキュリティとコンプライアンスを計画するには、Capacitor Appsと接続します。 Encryptionの実装詳細についてはEncryptionを参照してください。 Complianceの実装詳細についてはComplianceを参照してください。 __CAPGO_KEEP_0__ Security Scannerの製品ワークフローについては__CAPGO_KEEP_0__ Security Scannerを参照してください。 各プラットフォームから提供されるセキュリティガイドラインに従って、機密情報を安全に保つ。 アプリストアの承認手続きの面倒さを避けて、バイオメトリック機能に関連する更新や問題を解決するには、__CAPGO_KEEP_0__などのツールを使用できます。この機能により、リアルタイムの更新が可能になり、AppleやAndroidのポリシーに準拠しながら、バグを解決したり機能性を向上させたりできます。 Biometric Authentication in Capgo Appsから続けて Biometric Authentication in Capgo Appsを使用している場合 Capgo セキュリティ Capgo セキュリティの製品ワークフローに Capgo トラスト センター Capgo トラスト センターの製品ワークフローに

Capacitor アプリのライブ更新

Capgoのバグが生じた場合、Capgoを使用して修正を配信し、数日間待つ必要のあるアプリストアの承認を待つのではなく。ユーザーはバックグラウンドで更新を受け取り、ネイティブの変更は通常のレビュー経路に残ります。

Get Started Now

Latest from our Blog

Capgoは、プロフェッショナルなモバイルアプリを作成するために必要な最良の洞察を提供します。