モバイルアプリのセキュリティにおいて、認証トークンの安全な保存は重要です。トークンはユーザーアカウント、敏感なデータ、サービスへの鍵となり、漏洩すると 身元盗難、金銭的詐欺、データ漏洩につながる可能性があります. ここでは、保護方法を紹介します:
重要なポイント:
- プラットフォーム固有のセキュアストレージを使用する: iOS Keychain または Android Keystore にトークンを保存して、ハードウェアベースのセキュリティを実現します。
- : トークンを暗号化して、(Android) または (iOS) のようなツールを使用してセキュアな暗号化を実現します。: トークンを短期間に限定し、リフレッシュトークンを回転させることでリスクを軽減します。
EncryptedSharedPreferences: 常に HTTPS を使用し、証明書ピンニングを実装して、インターセプトを防止します。CryptoKit__CAPGO_KEEP_0__ - __CAPGO_KEEP_0____CAPGO_KEEP_0__
- __CAPGO_KEEP_0____CAPGO_KEEP_0__
- トークンライフサイクルを管理する: 侵害の被害を最小限に抑えるために、定期的にトークンを期限切れにし、更新し、取り消す。
ストレージ方法のクイック比較:
| ストレージ方法 | セキュリティレベル | 使いやすさ | 最適な使用シナリオ |
|---|---|---|---|
| メモリ内ストレージ | 高 | 低 | 短いセッション、セキュリティが高く必要な場合 |
| ローカルストレージ | Low | High | 非機密データ |
| セキュア Cookie | High | Medium | サーバーサイドコントロールを持つWebアプリ |
| iOS Keychain | Very High | Medium | iOSアプリで機密情報を保存する |
| Android Keystore | 非常に高い | 中 | Androidアプリの安全なストレージを必要とするもの |
| カスタム暗号化 | 変数 | 中 | 高度なセキュリティ要件 |
__CAPGO_KEEP_0__アプリの場合、さまざまなプラットフォームでトークンセキュリティを維持するために、これらのベストプラクティスを実装し、現在のトークンストレージ方法を検証することから始めましょう。
Daniel Mayer & Drew Suarezによる「Faux Disk Encryption Mobile Device上のSecure Storageの現実」
Secure Token Storageの基本ルール
トークンを保護するには、複数のセキュリティ対策を組み合わせることで、1 つの対策が失敗しても、他の対策が敏感なデータを保護することを保証します。Capacitorアプリの場合、プラットフォームを問わずトークンセキュリティを維持するために、これらのベストプラクティスを遵守することは不可欠です。
HTTPSを使用し、証明書固定を実行してください
HTTPS暗号化は、トークンをキャッチする攻撃からあなたを守る最初の防御です。アプリとサーバー間のすべてのインタラクションはHTTPSを使用して、データを転送中の暗号化を実行し、攻撃者への露出を防ぎます。
このセキュリティを強化するために、実行してください 証明書固定。Capacitorアプリの場合、 @capgo/capacitor-ssl-pinning CapacitorHttpのiOSとAndroidでHTTPS接続をバンドルされた証明書で固定します。このテクニックにより、攻撃者が偽の証明書を使用しようとしても、信頼されたサーバーとアプリのみが通信することを保証します。
「あなたは、リモートホストのアイデンティティを確実に知りたい場合や、敵対的な環境で動作している場合に、固定することが推奨されます。ほとんどの場合、どちらも真実です。したがって、常に固定することをお勧めします」というOWASP固定のチートシート [5]
実際の例: Twitterは、Man-in-the-Middle(MitM)攻撃に遭遇した後、モバイルアプリに証明書固定を導入しました。チームは、サーバーのSSL証明書の公開鍵を直接アプリに埋め込みました。ユーザーが接続すると、アプリは固定された証明書と照合し、照合しない場合は接続を即座に終了しました。このアプローチにより、MitM攻撃が大幅に減り、プラットフォームへのユーザーの信頼が高まりました。 [5].
固定の方法は2つあります 証明書固定(全証明書の検証)を実行してください 最大のセキュリティを実現します 公開鍵ピンニング (公開鍵のみを検証) 証明書更新時に柔軟性を高めるために。 ツール OkHttp Android用 Alamofire [5].
iOS用
これらの技術を実装することを簡素化する
安全なトークン送信が確立されたら、次のステップはトークン漏洩を最小限に抑えることです。
- トークン漏洩を最小限に抑えるには、トークンの有効期間と権限の範囲を制限する必要があります。 短期間の有効期限を持つアクセストークンを使用し、リフレッシュトークンと組み合わせてユーザーセッションを維持することにより、長期間有効なアクセストークンをデバイスに保持しないようにします。 このアプローチにより、盗まれたトークンがすぐに無効になります。
- 最小特権原則を適用します。 例えば、ユーザープロファイルデータのみを読み取るために必要なトークンには、会計設定を変更したり、支払い情報にアクセスしたりする権限を与えないでください。リフレッシュトークン回転を有効にします。
- リフレッシュトークンが盗まれた場合、正当なアプリがそれを使用すると、トークンは無効になります。これにより、リスクウィンドウが短縮されます。 トークンを制限することで、重大な被害から漏れ出る可能性を減らすことができます。次に、暗号化により、デバイスが物理的に侵害された場合でも、トークンが安全に保たれます。リストモードの暗号化 [4].
リストモードの暗号化
デバイス上に保存されているトークンを保護します。デバイスが盗難、紛失、またはマルウェアによって侵害された場合でも、暗号化により、トークンは読み取れません。
Androidの場合 [4].
- Androidの場合: 使用
EncryptedSharedPreferences(Android 10 以降で利用可能です)。 このツールは暗号化と鍵管理を自動的に処理し、実装を簡素化しながらセキュリティを向上させます。 たとえば、SecureJWTStorageクラスは、EncryptedSharedPreferencesを使用してJWTを安全に保存および取得できます。 これにより、複雑なカスタム暗号化を必要とせずに暗号化を実行できます。 code。 - iOS の場合: Keychain は、ハードウェアレベルの暗号化を使用して安全なトークンを保存します。 開発者は、
KeychainHelperクラスを使用してJWTトークンを管理するか、Keychain に保存する前にトークンを暗号化することで、CryptoKit を追加することで、セキュリティをさらに高めることができます。 Android と iOS は両方ともハードウェアバックアップされた暗号化を使用し、iOS ではSecure Enclave、Android ではHardware Security Moduleを使用します。これらのコンポーネントは、メインオペレーティングシステムから隔離された、耐性のあるハードウェアに暗号化キーを保存します。 最後に、明確なデータ保持ポリシーを確立してください。 有効期限切れのトークンを自動的に削除し、必要なくなったときにデバイスから機密データを安全に削除してください。これらの慣行により、トークンは絶対に必要な限りだけ保存されます。 [4].
プラットフォーム固有のトークン保存方法
Platform-Specific Token Storage Methods [6].
Platform-Specific Token Storage Methods
各モバイルプラットフォームは、セキュリティとユーザー体験の両方のニーズを満たすように、独自のツールを提供しています。これらのネイティブオプションは、HTTPS、暗号化、露出の制限など、コアの実践を基に構築されています。これらのトピックは、前回の説明で取り上げられました。
Android: Keystoreと EncryptedSharedPreferences

Androidデバイスは、KeystoreシステムとEncryptedSharedPreferencesを通じて、強力なトークン保護を提供しています。Keystoreは、暗号化キーの安全な環境で暗号化されたキーの保存を提供し、キーの抽出を困難にし、キーの非エクスポートを保証します。これにより、キーの安全な操作のみに使用できます。さらに、ユーザー認証の要件を追加できます。Android 9 (__CAPGO_KEEP_0__ level 28) 以降のデバイスでは、 StrongBox KeyMint が、標準のTrusted Execution Environment (TEE) と比較して、より高い隔離を提供します。StrongBoxが利用可能かどうかを確認するには、 を使用し、有効にするには. The Keystore securely stores cryptographic keys in a protected environment, making them difficult to extract and ensuring they remain non-exportable. This means the keys can only be used for secure operations. Additionally, you can add restrictions like requiring user authentication. For devices running Android 9 (API level 28) or later, Android: Keystoreと EncryptedSharedPreferences FEATURE_STRONGBOX_KEYSTOREEncryptedSharedPreferences KeyGenParameterSpec.Builder.setIsStrongBoxBacked().
EncryptedSharedPreferencesは、キー–値ペアを安全に保存するためのよりシンプルな方法を提供します。データを暗号化し、キーを安全に管理し、23レベル以上をサポートするため、APIレベルをサポートします。AndroidエンジニアのArunは、その使いやすさを強調しています:
「codeの数行で、安全性を大幅に改善できます。暗号化を使用することで、」。これは、Androidアプリで敏感なデータを保護するための強力で使いやすいソリューションです。 Androidアプリで敏感なデータを保護するためのベストプラクティスとして、エラー処理を実装し、90–180日ごとにキーをローテートし、SharedPreferencesに保存しないようにしてください。クレジットカード番号などの高度に敏感なデータは、SharedPreferencesに保存するのではなく、安全なバックエンドで処理する必要があります。 iOS: KeychainとSecure Enclave
EncryptedSharedPreferencesiOSでは、トークンセキュリティはKeychainとSecure Enclaveに依存しています。
__CAPGO_KEEP_0__
__CAPGO_KEEP_0__ __CAPGO_KEEP_0__
__CAPGO_KEEP_0__ __CAPGO_KEEP_0__ __CAPGO_KEEP_0__ __CAPGO_KEEP_0__。Keychainは、パスワードやトークンなどの機密データをAES-256-GCM暗号化で安全に保存するためのリポジトリです。Keychainは、メタデータ用と各アイテム用の独自のキーを使用する二重キー方式を採用しています。メタデータキーはSecure Enclaveによって保護され、高速な検索のためにキャッシュされます。一方、シークレットキーは追加のセキュリティのためにEnclaveに一回り返す必要があります。Keychainは、同一の開発者から同様のアプリ間でアイテムを安全に共有することもサポートしていますが、これはdaemonによって管理されます。 securityd Secure EnclaveはP256キーと約4MBのセキュアストレージを使用して保護を強化しています。さらにセキュリティを高めるには、Face ID、Touch ID、またはパスコード認証を必要とする設定を使用してAccess Control Lists(ACL)を構成することができます。
オプションを選択すると、データはデバイスに紐付けされ、不正アクセスのリスクが軽減されます。デバイスのリセットやバイオメトリックロックアウトなどのエッジケースを考慮し、定期的にアプリの特権と許可を監査することをお勧めします。 kSecAttrAccessibleWhenUnlockedKeychain .whenPasscodeSetThisDeviceOnly : Secure Storage Plugin
Capacitorクロスプラットフォームアプリ用に、Capgoはセキュアストレージプラグインを提供しています。これにより、トークンセキュリティを簡素化できますが、プラットフォーム固有のCapgoを必要としません。

For cross-platform apps, Capacitor offers secure storage plugins that simplify token security without requiring platform-specific code. @capgo/capacitor-data-storage-sqlite __CAPGO_KEEP_0__ @capgo/capacitor-persistent-account 再インストール時にも認証データを保存します。iOSでは、データは暗号化されたシステムKeychainに保存されます。Androidでは、データはAES-GCMモードで暗号化され、Android Keystoreによって生成されたキーを使用してSharedPreferencesに保存されます。Web環境では、デバッグ用途のみに非暗号化 localStorage - ただし、デバッグ用途のみです。
In February 2025, martinkasa updated the capacitor-secure-storage-plugin to support Capacitor v7, ensuring secure storage of string values across iOS and Android. These plugins are ideal for storing login credentials and JSON data. However, they may lack the granular control offered by native solutions. For enterprise-level apps with advanced security needs, native options like iOS Keychain Services and Android Keystore APIs - or enhanced tools like Ionic’s Identity Vault - などの強化されたツールが必要になる可能性があります。Capacitorの公式ドキュメントでは、敏感なデータの保存にはネイティブセキュアストレージを使用することを推奨しています。
Capacitor Capgo Capgo
などのサービスは、トークンセキュリティを強化することができます。__CAPGO_KEEP_0__のエンドツーヘンド暗号化により、セキュリティパッチやトークン管理の改善を含むアップデートが、安全に配信され、セキュリティフレームワークの完整性が維持されます。トークンライフサイクルとセキュリティの管理
トークンを効果的に管理するには、その作成、期限切れ、取り消しを管理する必要があります。開発者は、強力なセキュリティ対策とユーザー体験の平衡を達成するシステムを設計する必要があります。以下では、トークンの期限切れ、取り消し、オーバー・ザ・エア(OTA)更新の戦略について説明します。これにより、トークン管理アプローチの包括的な方法を構築できます。
トークン期限切れとリフレッシュ方法
短期間のアクセストークンと長期間のリフレッシュトークンを組み合わせることは、安全なトークンハンドリングの重要な実践です。アクセストークンは、5~15分以内に期限切れにすることで、漏洩した場合の不正利用リスクを軽減できます。一方、リフレッシュトークンは、ユーザーが頻繁な再認証を必要とせずにセッションを維持できるように、日単位または週単位で有効にできます。
トークン期限切れは、APIのセキュリティと効率性を維持する上で重要な役割を果たします。 [7]トークンローテーション(以前発行されたトークンを無効化する)を組み合わせることで、さらに保護の層が追加されます。この方法は、漏洩したリフレッシュトークンの被害を最小限に抑え、不正使用の兆候を特定するのに役立ちます。
When designing refresh mechanisms, ensure tokens are rigorously validated during the refresh process. Employ rate limiting to guard against brute force attacks and use automated monitoring to detect anomalies, such as refresh requests from multiple locations at the same time. Balancing security and performance is key to protecting user sessions without impacting the overall experience.
トークンを取り消し、無効化する
While token expiration is crucial, token revocation adds another layer of security, especially in scenarios like user logout, lost devices, or suspected security breaches. Although stateless JWT access tokens remain valid until they expire, managing refresh tokens effectively can block the issuance of new access tokens.
トークンを取り消すと、非正当なアクセスを防ぐために敏感なリソースにアクセスすることができなくなります。 [8]To invalidate tokens immediately, consider implementing a server-side blacklist that tracks revoked tokens and checks them during API requests. Additionally, Single Logout (SLO) functionality allows users to terminate multiple authentication sessions in one action, ensuring all related refresh tokens across connected services are revoked.
即時でトークンを無効化するには、サーバー側のブラックリストを実装し、取り消されたトークンを追跡し、__CAPGO_KEEP_0__ リクエスト中にチェックすることを検討してください。さらに、Single Logout (SLO) 機能は、複数の認証セッションを 1 つのアクションで終了し、接続済みサービス全体で関連するリフレッシュトークンを取り消すことを可能にします。
It’s also important to have clear protocols in place for handling compromised tokens. These protocols should include immediate token revocation, automated security alerts, timely notifications to affected users, and the termination of all active sessions tied to the compromised token.」
脆弱性が進化するにつれて、トークンのセキュリティを維持するために、オーバー・ザー・エア(OTA)アップデートは、強力なトークンライフサイクルと削除策を確立した後、不可欠です。 OTAシステムは、迅速にセキュリティパッチを展開し、API キーを回転する、証明書を更新し、検証ロジックを微調整するなど、ユーザーから手動でアップデートする必要がなくなるため、セキュリティを高めることができます。
Capacitor を使用する開発者向けに、Capgo などのツールは、Apple と Android のガイドラインに準拠したエンドツーヘンド暗号化を備えた、OTAのコンプライアントソリューションを提供します。このようなシステムは、緊急のセキュリティ脆弱性に対処するのに特に役立ちます。
トークンのセキュリティをさらに高めるには、エッジの技術を活用して、脅威が発生する前に、脅威を監視する必要があります。 OTAシステムを使用して、実行時防御やその他の高度な対策を展開して、疑わしいユーザーやデバイスを即座にブロックし、正当なユーザーにサービスを提供し続けることができます。
トークンストレージの比較: セキュリティ vs. ユーザー体験の容易さ
トークンを安全に保存する方法を決める際は、セキュリティとユーザー体験のバランスをとることが重要です。選択した方法は、攻撃に脆弱なアプリの脆弱性や、ユーザー体験に影響を与える可能性があります。ここでは、異なる保存方法のトレードオフを分析します。
メモリ内ストレージ vs. 持続的なストレージ
メモリ内ストレージ トークンをアプリケーションメモリまたはJavaScript変数に保持するため、非常に安全なオプションです。トークンは、 持続的なストレージ攻撃者が従来の XSS 攻撃を使用する場合、メモリ上のトークンにアクセスする機会が少なくなります。
ただし、ユーザーがページをリフレッシュしたり、新しいタブを開いたりすると、メモリ上のストレージからトークンが消えます。このため、ユーザーがシームレスなブラウジング エクスペリエンスを期待するウェブ アプリケーションでは、メモリ上のストレージは実用性が低くなります。
一方で 持続的ストレージ - ローカル ストレージ、セッション ストレージ、またはクッキーなどの方法 - は、よりスムーズなエクスペリエンスを提供します。トークンを持続的に保存すると、ユーザーがブラウザーを閉じて後で戻り、前の状態から再開することができます。再度ログインする必要がなくなります。 [9].
ただし、この利便性はセキュリティ上のリスクとともに来ます。持続的ストレージは、ローカルまたはセッション ストレージからトークンを盗むXSS攻撃に脆弱です。 [4]クッキーは、適切なフラグで保護されていない場合、CSRF攻撃にも対象となります。
Capacitorを使用するモバイル アプリケーションでは Web Workers は、セキュリティを高めながら、ユーザビリティを維持するのにメモリ上のストレージよりも効果的です。 [9]Web Workersが利用できない場合、JavaScript クロージャーはプライベート メソッドをシミュレートして、追加の保護層を追加できます。 [9]モバイル デベロッパーは、ネイティブ セキュア ストレージとカスタム エンコードの利点と欠点を比較検討する必要があります。
Keychain/Keystore vs. Custom Encryption
モバイルアプリケーションでは プラットフォームネイティブの安全なストレージ iOS KeychainやAndroid Keystoreなどのソリューションは、ハードウェアバックアップされたセキュリティを提供し、トークンを抽出することがとても難しくなります。
これらのネイティブツールの美しさは、シンプルさにある。オペレーティングシステムに組み込まれているため、開発者はそれらを実装するために、長い code を書く必要がありません。また、 生体認証 と、集中管理されたクレデンシャル管理などの機能をサポートしています。これにより、セキュリティとユーザーコンビニエンスが向上します。 [10].
カスタム暗号化は、開発者により多くの制御を提供しますが、重大な課題が伴います。セキュリティは、暗号化がどれだけよく実装されているか、キーがどれだけ安全に管理されているかによって決まります。 [10]多くの開発者は、セキュアなシステムを作成するのが複雑であると考えすぎています。これにより、脆弱性が生じる可能性があります。加えて、暗号学の標準は進化し続けているため、カスタムソリューションには継続的な更新とメンテナンスが必要です。これにより、リソースが多く必要になります。ただし、チームがこの分野で深い専門知識を持っている場合、リソースが多く必要になることはありません。
セキュリティ対比表
| ストレージ方法 | セキュリティ レベル | 使いやすさ | 実装の複雑さ | ベスト ユース ケース |
|---|---|---|---|---|
| メモリ内ストレージ | 高 | リフレッシュ時に失われる (低) | 低 | 高セキュリティ、短いセッション |
| ローカル ストレージ | 低 | 高 | 低 | 非機密データのみ |
| セッション ストレージ | 中 | 高 | 低 | 一時的なセッション データ |
| セキュア クッキー | 高 (適切なフラグとともに) | 中 | 中 | サーバーをサポートするWeb アプリケーション |
| iOS Keychain | 非常に高い | 中 | 低 | iOSネイティブ/ハイブリッドアプリ |
| Android Keystore | 非常に高い | 中 | 低 | Androidネイティブ/ハイブリッドアプリ |
| カスタム暗号化 | 可変 | Japanese | Medium | High |
Specialized security requirements
For Capacitor developers, using secure storage plugins to access these native solutions is a smart move. It combines the hardware-backed security of Keychain and Keystore with the cross-platform flexibility that Capacitor offers.
For __CAPGO_KEEP_0__ developers, using secure storage plugins to access these native solutions is a smart move. It combines the hardware-backed security of Keychain and Keystore with the cross-platform flexibility that __CAPGO_KEEP_1__ offers.
Ultimately, your choice of token storage should align with your app’s threat model and user expectations. Applications handling sensitive data, like healthcare or financial apps, should prioritize security above all else. In contrast, consumer-facing apps might accept slightly higher risks to deliver a smoother user experience. By understanding these trade-offs, you can choose the storage method that best fits your needs.
Key Takeaways Protecting user data through secure token storage is not just a technical best practice - it’s a necessity for maintaining your app’s integrity. With [12]81% of confirmed breaches in 2022 linked to weak, reused, or stolen passwords
mobile developers need to prioritize robust token security measures.
Best Practices Summary: An effective token security plan relies on multiple layers of protection. Start by using platform-native secure storageiOS KeychainやAndroid Keystoreなどのハードウェアバックのセキュリティを提供するストレージオプションを利用する
LocalStorageやIndexedDBなどの方法はXSS攻撃に脆弱です。 [2]開発者がCapacitorを使用している場合、セキュアなストレージプラグインは、クロスプラットフォーム機能を維持しながら、ネイティブの保護にアクセスする方法を提供します
トークンのライフサイクル管理はもう一つの重要な側面です。アクセストークンが要求されたときに毎回新しいリフレッシュトークンを生成し、リフレッシュトークンの有効期限を定期的に切断する [3]短いリフレッシュトークンの有効期限は、盗難の場合の不正使用のリスクを減らします
署名キーを秘密に保ち、必須サービスにのみ共有する [1]トークンをログに記録したり、URLに埋め込んだりすることは危険です [11]これらのステップを組み合わせると、トークン管理戦略を強化できます
開発者向けの次のステップ
これらのベストプラクティスに従って、アプリのトークンセキュリティを向上させる方法については、以下のとおりです
-
トークンストレージ方法を検証する 非安全なソリューションであるLocalStorageを使用している場合は、プラットフォーム固有の安全なストレージに移行することを優先してください。Capacitorアプリでは、ネイティブの保護を効果的に利用するために安全なストレージプラグインを採用する必要があります。
-
層化された認証を実装する。 __CAPGO_KEEP_0__アプリでは、低リスクのアクション用にシンプルな方法を使用しますが、敏感なオペレーションでは多要素認証(MFA)またはバイオメトリクスを要求します。Microsoftによると、MFAは99.9%の自動化されたサイバー攻撃をブロックできます。 しかし、ユーザー体験を考慮する必要があります。研究によると、MFAの不便さのため、約1/3のユーザーがMFAを避けることがあります。 OTA(オーバー・ザ・エア)更新システムを使用して、安全で即時的なロールアウトを実行します。__CAPGO_KEEP_0__のようなツールは、__CAPGO_KEEP_1__アプリの暗号化されたライブ更新を可能にし、更新中のトークン安全性を損なうことなくセキュリティ修正をユーザーに届けます。 [12]トークンライフサイクル管理に焦点を当てます。 [12].
-
定期的な期限切れ、更新、削除のプロトコルは不可欠です。セキュリティリスクを制限するために、実装がこれらの原則を反映していることを確認してください。 for secure and immediate rollouts. Tools like Capgo enable encrypted live updates for Capacitor apps, ensuring that security fixes reach users without compromising token safety during updates.
-
異常な活動を監視し、進化する脅威に基づいてセキュリティ対策を調整することです。 Implement layered authentication.
-
Use simpler methods for low-risk actions, but require multi-factor authentication [13].開発プロセスの定期的なルーチンとして、セキュリティの検査は必須です。
モバイルセキュリティは進化を続けているが、基本的な原則は変わりません:ネイティブのセキュアストレージを使用し、トークンライフサイクルを効果的に管理し、暗号化は妥協することのできないものであることを保証することです。 2022年時点で、81%のスマートフォンがバイオメトリクスを搭載している 開発者は、セキュリティとユーザー体験の両方を向上させる強力なツールを手に入れました。 [12]ユーザーはあなたにデータを信頼しています - あなたのトークンストレージの実践が、最高のセキュリティの標準を満たしていることを確認してください。
FAQs
::: faq
モバイル開発者は、iOS KeychainとAndroid Keystoreを使用した安全なトークンストレージの利点をなぜ利用するべきか?
プラットフォームネイティブのセキュアストレージ、たとえばiOS KeychainとAndroid Keystoreを使用することは、モバイルアプリ内で敏感なデータを保護する上で重要な役割を果たします。これらのツールは
組み込み暗号化 を備えており、トークンが不正アクセスから保護されます。さらに、トークンライフサイクルを効果的に管理する機能も備えています。これらのツールを使用することで、開発者はセキュリティとユーザー体験の両方を向上させることができます。 ユーザー認証,ユーザーが保存データにアクセスする前に、自分のアイデンティティを確認する必要があるため、追加のセキュリティ層が必要になります。
彼らの目立つ特徴の1つは、暗号化キーが 非エクスポート可能であることです。つまり、これらのキーはデバイスから削除できず、重大なリスクが軽減されます。 これらのシステムは、開発者が複雑な暗号化プロセスを手動で処理する手間を避けることができるように、各プラットフォームと組み込みやすく設計されています。 これらのツールを利用することで、開発者はアプリのセキュリティを強化するだけでなく、 現代のセキュリティ基準 を満たすだけでなく、 業界の推奨事項. :::
を遵守することもできます。
::: faq
モバイルアプリでトークンライフサイクルを安全に管理するためのベストプラクティスは何ですか? モバイルアプリでトークンライフサイクルを安全に管理するには、開発者はいくつかの基本的な実践に従う必要があります。まず、使用するトークンを、15分以内の有効期限を持つものは、トークンが漏洩された場合の悪用の窓口を最小限に抑える。ユーザーの便利さを維持しながらセキュリティを犠牲にしないように、 refresh tokensを実装する。新しいトークンを発行することを可能にする。これにより、ユーザーが再びログインする必要がなくなる。
トークンの適切な保存は、不正アクセスを防ぐために重要です。常にプラットフォーム固有の安全な保存ソリューションに頼りましょう。 Keychain はiOS用、 Android KeystoreはAndroid用に特に設計されています。敏感なデータを保護するために。ハードコーディングされたトークンや、トークンをアプリ内で平文で保存することは避けるべきです。これにより、潜在的な脅威にさらされる可能性があります。
これらの実践を組み込むことで、開発者はモバイルアプリケーションのトークン管理のセキュリティを向上させ、ユーザーを潜在的な脆弱性から守ることができます。 :::
::: faq
カスタム暗号化を使用したトークン保存の潜在的な課題は何でしょうか。また、ネイティブソリューションよりもカスタムソリューションを使用すべき状況は何でしょうか。
トークンをモバイルアプリケーションに保存する場合、カスタム暗号化を使用すると二重の刃になる可能性があります。カスタムソリューションは、より制御が可能のように思えるかもしれませんが、通常、追加の複雑さ、潜在的なセキュリティの欠陥、最新の脅威に対する継続的なメンテナンスが必要になります。プラットフォームから提供される組み込み暗号化ツールとは異なり、カスタムソリューションは、広範なテスト、詳細なドキュメント、強力な開発者コミュニティのバックアップが欠けていることが多く、デバッグと統合がより大きなハードルになる可能性があります。
That said, there are situations where custom encryption becomes unavoidable - like when you’re dealing with extremely sensitive data or trying to meet strict regulatory requirements that standard tools just can’t handle. best practices to ensure their encryption methods are not only secure but also reliable and compliant with industry standards.
Carefully consider the trade-offs before diving into a custom encryption approach.
Keep going from Secure Token Storage: Best Practices for Mobile Developers If you are using Secure Token Storage: Best Practices for Mobile Developers to plan security and compliance, connect it with Encryption for the implementation detail in Encryption, Compliance 実装詳細についての Compliance について Capgo セキュリティ スキャナー Capgo セキュリティ スキャナーの製品ワークフローについて Capgo セキュリティ Capgo セキュリティの製品ワークフローについて、 Capgo トラスト センター Capgo トラスト センターの製品ワークフローについて。