認証トークンのセキュアな保存は、モバイルアプリのセキュリティにとって重要です。トークンはユーザーアカウント、敏感なデータ、サービスへのアクセスキーです。トークンが漏洩すると、 身元盗難、金銭的詐欺、データ漏洩につながる可能性があります。. 以下の方法で保護することができます:
重要なポイント:
- プラットフォーム固有のセキュアストレージを使用する: iOS Keychain または Android Keystore など、ハードウェアバックアップされたセキュリティを提供するストレージにトークンを保存する
- リストストレートトークン: Android の または iOS の を使用して、安全な暗号化を実行する
EncryptedSharedPreferencesトークン露出を制限するCryptoKit: 短期間のトークンとリフレッシュトークンを回転させることで、リスクを減らす - セキュアなコミュニケーション: HTTPS を常に使用し、証明書ピンニングを実装して、インターセプトを防ぐ
- Use Platform-Native Secure StorageEncrypt Tokens at Rest
- ライフサイクルを管理する: 侵害から被害を最小限に抑えるために、定期的に有効期限切れ、更新、そしてトークンの削除を行う。
ストレージ方法の比較:
| ストレージ方法 | セキュリティレベル | 使いやすさ | 最適な使用方法 |
|---|---|---|---|
| メモリ内ストレージ | 高 | 低 | 短いセッション、セキュリティが高い |
| ローカルストレージ | 低 | 高 | 非機密データ |
| 安全なCookie | 高 | 中 | サーバーサイドの制御を持つWebアプリ |
| iOS Keychain | 非常に高 | 中 | iOSアプリで機密情報を格納する |
| Android Keystore | 非常に高い | 中 | Androidアプリの安全なストレージ |
| カスタム暗号化 | 変数 | 中 | 高度なセキュリティ要件 |
まず、アプリの現在のトークンストレージ方法を検証し、ユーザーとブランドを保護するためにこれらのベストプラクティスを実装してください。
Faux Disk Encryption Realities of Secure Storage on Mobile Devices - Daniel Mayer & Drew Suarez
安全なトークンストレージの基本ルール
トークンの保護には、複数のセキュリティ対策を組み合わせることで、1 つの対策が失敗しても、他の対策が敏感なデータを保護するために必要です。Capacitorアプリの場合、プラットフォームを横断してトークンセキュリティを維持するために、これらの実践を遵守することは不可欠です。
HTTPS と証明書固定を使用
HTTPS の暗号化は、トークンの盗聴から保護する最初の防御です。アプリとサーバー間のすべてのインタラクションは、データの転送中の暗号化を実行するHTTPSを使用する必要があります。これにより、攻撃者への露出を防ぎます。
さらに強化するには、実装する必要があります 証明書固定. Capacitor アプリの場合、@Capacitor/__CAPGO_KEEP_1__-ssl-pinning は、iOS と Android の CapacitorHttp に対して、組み込まれた証明書で HTTPS 接続を固定します。このテクニックにより、アプリは、偽の証明書を使用しようとする場合でも、信頼されたサーバーとのみ通信します。 @capgo/capacitor-ssl-pinning – OWASP pinning cheat sheet
実際の例: Twitter は、Man-in-the-Middle (MitM) 攻撃を受けた後、モバイル アプリに証明書固定を導入しました。彼らのチームは、サーバーの SSL 証明書の公開鍵をアプリに埋め込みました。ユーザーが接続すると、アプリは固定された証明書と照合し、照合しなかった場合は接続を即座に終了しました。このアプローチにより、MitM 攻撃が大幅に減り、プラットフォームへのユーザーの信頼が高まりました。 [5]
次のいずれかを選択できます [5].
証明書固定 (完全な証明書の検証) 最大限のセキュリティを実現するには (validating the entire certificate) for maximum security or 公開鍵ピンニング (公開鍵のみを検証) 証明書の更新時に柔軟性を高めるために。 OkHttp Android向けの Alamofire iOS向けの [5].
これらのテクニックを実装するには、ツールが必要です。
安全なトークンの送信が確保されたら、次のステップはトークンの露出を最小限に抑えることです。
トークンの露出を最小限に抑える
- トークンの露出を最小限に抑えるには、トークンの有効期間と権限の範囲を制限する必要があります。 短期間のアクセストークンを使用 アクセストークンの有効期間を分単位で測定し、リフレッシュトークンと組み合わせてユーザーセッションを維持することなく、長期間のアクセストークンをデバイスに保持しないようにします。このアプローチでは、盗まれたトークンがすぐに無効になるようにします。
- 最小特権原則を適用してください。 特権の最小化の原則例えば、ユーザープロファイルデータを読み取るために必要なトークンにのみ、会計設定を変更したり、支払い情報にアクセスしたりする権限を付与しないでください。
- リフレッシュトークンを有効にします。 リフレッシュトークンを回転させる新しいアクセストークンを要求するために使用される新しいリフレッシュトークンが発行されるたびに、リフレッシュトークンが盗まれた場合、有効なリフレッシュトークンは、正当なアプリがそれを使用した後、無効になります。これにより、リスクウィンドウが短縮されます。 [4].
トークンの露出を制限することで、トークンが盗まれた場合の損害の可能性を減らすことができます。次に、暗号化により、デバイスが物理的に侵害された場合でも、トークンが安全に保たれます。
リポジトリ内で暗号化
リポジトリ内での暗号化 デバイス上で保存されているトークンを保護するために、リポジトリ内での暗号化が実行されます。デバイスが紛失、盗難、またはマルウェアによって侵害された場合でも、暗号化により、トークンが読み取れません。
現代のモバイルオペレーティングシステムでは、標準的な方法であるSharedPreferences(Android)またはNSUserDefaults(iOS)に比べて、より信頼性の高いハードウェアバックアップストレージオプションが提供されています。 [4].
- Android: 使用
EncryptedSharedPreferences(Android 10 以降で利用可能です)。このツールは暗号化と鍵管理を自動的に処理し、実装を簡素化し、セキュリティを向上させます。たとえば、SecureJWTStorageclass は、複雑なカスタム暗号化 __CAPGO_KEEP_0__ が必要なくても、JWT を安全に保存および取得できます。EncryptedSharedPreferenceswithout requiring complex custom encryption code. - : Keychain は、ハードウェアレベルの暗号化を提供して、安全なトークン ストレージを実現します。開発者は、class を使用して JWT トークンを管理するか、または CryptoKit を使用してトークンを暗号化し、Keychain に保存することで、セキュリティをさらに高めます。
KeychainHelperAndroid と iOS は両方とも、ハードウェアバックの暗号化を利用しています。たとえば、iOS では Secure Enclave、Android では Hardware Security Module を使用します。これらのコンポーネントは、メインオペレーティングシステムから隔離された、トラッキングレジストレスのハードウェアで暗号化鍵を保存します。 最後に、明確なデータ保持ポリシーを確立してください。有効期限切れのトークンを自動的に削除し、必要なくなったときにデバイスから安全に削除するようにします。これらの慣行により、トークンは絶対に必要な限りだけ保存されます。 プラットフォーム固有のトークン ストレージ メソッド [4].
Platform-Specific Token Storage Methods
Platform-Specific Token Storage Methods [6].
Platform-Specific Token Storage Methods
各モバイルプラットフォームは、セキュリティとユーザー体験の両方のニーズを満たすように、独自のツールを提供しています。これらのネイティブオプションは、HTTPS、暗号化、露出の制限などの基本的な実践を基に構築されています。これらの実践は、前回の記事で説明しました。
Android: Keystoreと EncryptedSharedPreferences

Androidデバイスでは、KeystoreシステムとEncryptedSharedPreferencesを使用して、強力なトークン保護を提供しています。 Keystore Keystoreシステムは、暗号化された鍵を保護された環境で安全に保存します。これにより、鍵を抽出することが困難になり、鍵をエクスポートすることもできなくなります。これにより、鍵は安全な操作のみに使用できます。さらに、ユーザー認証を必要とする制限を追加できます。Android 9 (__CAPGO_KEEP_0__ level 28) 以降のデバイスでは、 StrongBox KeyMint. 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, を使用し、有効にするには を使用してください。 FEATURE_STRONGBOX_KEYSTOREand KeyGenParameterSpec.Builder.setIsStrongBoxBacked().
EncryptedSharedPreferences offers a simpler way to securely store key–value pairs. It encrypts data and securely manages keys, supporting API levels 23 and above. Arun, an Android Engineer, highlights its ease of use:
“With just a few lines of code, we can セキュリティを大幅に改善することができます。 を使用することで。
EncryptedSharedPreferencesそれはAndroidアプリで敏感なデータを保護するための強力で使いやすいソリューションです。”
ベストプラクティスとして、エラー処理を実装し、90–180日ごとにキーを回転し、SharedPreferencesに保存しないようにするなど、クレジットカード番号などの高度に敏感なデータをSharedPreferencesに保存しないようにすることをお勧めします。そういったデータは、セキュアなバックエンドで処理する必要があります。
iOS: KeychainとSecure Enclave iOSでは、
Keychain と Secure Enclave は、。Keychainは、パスワードやトークンなどの敏感データをAES-256-GCM暗号化で保護する安全なリポジトリです。Keychainは、メタデータ用の1つのキーと各保存アイテム用のユニークキーを使用するデュアルキーシステムを採用しています。メタデータキーはSecure Enclaveによって保護され、高速な検索のためにキャッシュされます。一方、シークレットキーは追加のセキュリティのためにEnclaveに一回り返す必要があります。Keychainは、同じ開発者が管理するアプリ間でアイテムを安全に共有することもサポートしています。 securityd デーモン。
Secure EnclaveはP256キーと約4MBの安全なストレージを使用して保護を強化しています。さらにセキュリティを高めるには、Face ID、Touch ID、またはパスコード認証を必要とする設定を使用してAccess Control Lists (ACLs)を構成することができます。 kSecAttrAccessibleWhenUnlocked。デバイスに紐付けされたデータを確実に保持することで、不正アクセスのリスクを最小限に抑えることができます。デバイスのリセットやバイオメトリックロックアウトなどのエッジケースを考慮し、定期的にアプリの特権と許可を監査することが重要です。 .whenPasscodeSetThisDeviceOnly Live Update Platform Capacitor Title
CapacitorCapgo Framework Documentation Website

For cross-platform apps, Capacitor offers secure storage plugins that simplify token security without requiring platform-specific code. @capgo/capacitor-data-storage-sqlite は、データをローカルに保存し、オプションで暗号化します。 @capgo/capacitor-persistent-account iOSとAndroidの両方で文字列値の安全な保存を保証するために、Capacitor v7をサポートするように__CAPGO_KEEP_0__-secure-storage-pluginが2025年2月に更新されました。これらのプラグインは、ログインクレデンシャルやJSONデータの保存に適しています。ただし、ネイティブソリューションでは提供されないより細かい制御が必要な場合は、ネイティブオプションであるiOS Keychain ServicesやAndroid Keystore APIs、または高度なツールであるIonicのIdentity Vaultなどが適しています。 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 Capgoアプリのライブアップデートを展開する際、Capgoのサービスはさらにトークンのセキュリティを強化することができます。’s Identity Vault - might be better suited. Capacitor’s official documentation also advises using native secure storage for sensitive data, such as encryption keys or session tokens.
When deploying live updates for Capacitor apps, services like Capgo can further bolster token security. Capgo’s end-to-end encryption ensures that updates - including those containing security patches or token management improvements - are delivered securely, maintaining the integrity of your app’s security framework.
Capgo
安全なトークン管理のベストプラクティス
トークン有効期限とリフレッシュ方法
短期間のアクセストークンと長期間のリフレッシュトークンの組み合わせは、安全なトークンハンドリングの重要な実践です。
アクセストークンは、5~15分以内に有効期限を切る必要があります。これにより、トークンが漏洩した場合のリスクを軽減できます。 [7]リフレッシュトークンは、数日または数週間有効期限を切ることができます。これにより、ユーザーは頻繁な再認証を必要とせずにセッションを維持できます。
リフレッシュメカニズムを設計する際は、リフレッシュプロセス中にトークンを厳密に検証することを保証し、強制攻撃から守るためにリクエスト数制限を実施し、リクエストが同時に複数の場所から発生する異常を自動監視して検出する。セキュリティとパフォーマンスのバランスを取ることが、ユーザーセッションを保護することと、全体的なエクスペリエンスに影響を与えないようにする鍵です。
トークンの削除と無効化
トークンが期限切れになることは重要ですが、トークンの削除は、ユーザーログアウト、紛失したデバイス、または疑わしいセキュリティ上の脅威などのシナリオでは、セキュリティの別の層を追加します。ステートレスJWTアクセストークンは期限切れになるまで有効ですが、リフレッシュトークンの効果的な管理によって、新しいアクセストークンの発行をブロックできます。
トークンの削除は、敏感なリソースへの不正アクセスを防ぎます。 [8]. API リクエストの際に、削除されたトークンを追跡するサーバーサイドブラックリストを実装し、ブラックリストに記載されたトークンをチェックすることで、トークンを即座に無効化できます。さらに、Single Logout (SLO) 機能は、ユーザーが 1 つのアクションで複数の認証セッションを終了できるようにし、接続されたサービス全体のリフレッシュトークンを削除します。
トークンが不正確になっている場合、トークンの削除、自動セキュリティアラート、影響を受けたユーザーへのタイムリーな通知、そしてトークンに関連付けられたすべてのアクティブセッションの終了を含む、明確なプロトコルを用意することも重要です。
OTA システムを用いたセキュアなトークン更新
脆弱性が進化するにつれて、トークンの安全性を維持するために、安全なオーバー・ザ・エア(OTA)アップデートは不可欠になります。OTAシステムは、迅速にセキュリティパッチを展開し、API キーを回転する、証明書を更新し、検証ロジックを微調整することができます。これらの作業は、ユーザーからの手動アップデートを必要とせずに実行できます。
For developers using Capacitor, tools like Capgo provide a compliant OTA solution with end-to-end encryption. This ensures that security updates are delivered safely to devices while adhering to Apple and Android guidelines. Such systems are particularly useful for addressing urgent security vulnerabilities.
トークンの安全性をさらに高めるには、エッジで脅威を監視し、実行時防御やその他の高度な対策を実行して、不正ユーザーやデバイスを即座にブロックすることができます。同時に、正当なユーザーにサービスを提供することを保証します。
トークンストレージの比較: セキュリティと使いやすさ
トークンを安全に保存する方法を選ぶ際は、セキュリティと使いやすさのバランスを取ることが重要です。選択した方法は、攻撃に脆弱なアプリの脆弱性や、ユーザー体験に影響を与える可能性があります。ここでは、異なる保存方法のトレードオフを分析します。
メモリ内ストレージと持続可能なストレージ
メモリ内ストレージ メモリ内ストレージは、トークンをアプリケーションメモリまたはJavaScript変数に保存するため、非常に安全なオプションです。トークンは持続可能なストレージに書き込まれず、 persistent storage、従来のXSS攻撃を使用する攻撃者は、トークンにアクセスする機会が少なくなります。
しかし、トークンをメモリに保存すると、ユーザーがページをリフレッシュしたり、新しいタブを開いたりすると、メモリ上のトークンは消えます。このため、ユーザーがシームレスなブラウジング体験を期待するWebアプリケーションでは、メモリ上のストレージは実用的ではありません。
一方で 持続的ストレージ 持続的ストレージの方法、例えばローカルストレージ、セッションストレージ、またはクッキー - により、より滑らかな体験が得られます。トークンを持続的に保存すると、ユーザーはブラウザを閉じて、後で戻り、再びログインすることなく、前の状態から再開できます。 [9].
しかし、この利便性はセキュリティ上のリスクとともに来ます。持続的ストレージは、ローカルまたはセッションストレージからトークンを盗むXSS攻撃に脆弱です。 [4]クッキーは、適切なフラグで保護されていない場合、CSRF攻撃も対象となります。
モバイルアプリケーションでCapacitorを使用する場合 Webワーカー は、セキュリティを高めながら、メモリ上のストレージよりもユーザビリティが高い中間地を提供します。 [9]Webワーカーが利用できない場合は、JavaScriptクロージャーを使用して、プライベートメソッドをシミュレートして、追加の保護層を追加できます。 [9]モバイル開発者は、ネイティブセキュアストレージとカスタム暗号化の利点と欠点を比較検討する必要があります。
Keychain/Keystore vs. Custom Encryption
モバイルアプリケーション向け プラットフォーム固有の安全なストレージ iOS KeychainやAndroid Keystoreなどのプラットフォーム固有の安全なストレージは、ハードウェアバックのセキュリティを提供し、トークンの抽出を困難にします。
これらのネイティブツールの美しさは、シンプルさにある。オペレーティングシステムに組み込まれているため、開発者はそれらを実装するために、長い code を書く必要がありません。また、 指紋認証 と、集中管理されたクレデンシャル管理をサポートするため、セキュリティとユーザー体験の両方を向上させます。 [10].
カスタム暗号化は開発者に制御の余地を与えますが、重大な課題も伴います。セキュリティは暗号化の実装の良し悪しと、キー管理のセキュリティに依存します。 [10]多くの開発者は、安全なシステムを作成する複雑さを過小評価し、脆弱性につながる可能性があります。加えて、暗号化の標準は進化し続け、カスタムソリューションには継続的な更新とメンテナンスが必要です。これは、チームがこの分野で深い専門知識を持っていない場合、リソースを大量に消費することになります。
セキュリティ対ユーザー体験比較表
| 保存方法 | セキュリティレベル | 使いやすさ | 実装の複雑さ | ベストケース |
|---|---|---|---|---|
| メモリ内ストレージ | 高 | リフレッシュ時に失われる (低) | 低 | 高セキュリティ、短いセッション |
| ローカルストレージ | 低 | 高 | 低 | 非機密データのみ |
| セッション ストレージ | 中 | 高 | 低 | 一時的なセッション データ |
| セキュア クッキー | 高 (適切なフラグとともに) | 中 | 中 | サーバーをサポートするウェブ アプリケーション |
| iOS Keychain | 非常に高い | 中 | 低 | iOSネイティブ/ハイブリッドアプリ |
| Android Keystore | 非常に高い | 中 | 低 | Androidネイティブ/ハイブリッドアプリ |
| カスタム暗号化 | 変数 | Medium | High | 特殊セキュリティ要件 |
プラットフォームネイティブのストレージオプションであるKeychainとKeystoreは、セキュリティと実装の容易さの強力な組み合わせを提供し、モバイルアプリケーションに適したものです。KeychainとKeystoreのハードウェアバックアップされたセキュリティと、__CAPGO_KEEP_1__が提供するクロスプラットフォームの柔軟性を組み合わせることで、開発者は暗号化をマスターする必要なく、堅固な保護を提供できます。
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.
Key Takeaways
ユーザーデータを保護するためのセキュアなトークンストレージは、モバイルアプリケーションの完整性を維持するための技術的ベストプラクティスではありません。2022年の確認された侵害の81%は、弱い、再利用された、または盗まれたパスワードに由来しているため、モバイル開発者は堅固なトークンセキュリティ対策を優先する必要があります。
Best Practices Summary 効果的なトークンセキュリティ計画は、複数の保護層に依存します。まず、 [12]81%の2022年の確認された侵害は、弱い、再利用された、または盗まれたパスワードに由来している
Best Practices Summary
効果的なトークンセキュリティ計画は、複数の保護層に依存します。まず、 プラットフォーム固有のセキュアストレージ例えば、iOS KeychainとAndroid Keystoreなど、ハードウェアバックのセキュリティを提供するものがあります。
トークンをLocalStorageまたはIndexedDBに保存しないようにしましょう。 [2]これらの方法はXSS攻撃に脆弱です。代わりに、オペレーティングシステムに組み込まれたセキュアストレージオプションに頼り、制限されたアクセスを保証しましょう。Capacitorを使用する開発者には、セキュアストレージプラグインが提供されます。これにより、ネイティブの保護を利用しながらクロスプラットフォーム機能を維持できます。
トークンライフサイクル管理はもう一つの重要な側面です。定期的にトークンを期限切れにし、リフレッシュトークンを回転させ、リフレッシュトークンを生成するたびにアクセストークンを要求するたびに新しいリフレッシュトークンを生成します。 [3]. リフレッシュトークンの寿命が短いと、盗難の場合の不正使用のリスクが減ります。
署名キーを秘密に保ち、必須サービスのみに共有しましょう。 [1]. ログにトークンを記録したり、URLに埋め込んだりしないようにしましょう。 [11]. これらのステップを組み合わせると、トークン管理戦略を強化できます。
開発者向けの次のステップ
コンテキスト: Capgo Builder / ネイティブクラウドビルド製品ページ。役割: 短いUIラベルまたはナビゲーションアイテム。メッセージキー `native_build_builder_credit_next` (ネイティブビルドビルダークレジット次)
-
これらのベストプラクティスに従って、トークンセキュリティを強化するためにアプリを改善する方法についてはこちらです。 If you’re using insecure solutions like LocalStorage, prioritize migrating to platform-native secure storage. For Capacitor apps, adopt secure storage plugins to utilize native protections effectively.
-
層化された認証を実装する。 低リスクのアクションでは、より単純な方法を使用しますが、敏感な操作では多要素認証(MFA)またはバイオメトリクスを要求します。Microsoftによると、MFAは99.9%の自動化されたサイバー攻撃をブロックできます。ただし、ユーザー体験を考慮する必要があります。研究によると、MFAを避けるユーザーは約1/3です。 多要素認証 バイオメトリクス [12]MFAは99.9%の自動化されたサイバー攻撃をブロックできます。 [12].
-
MFAを避けるユーザーは約1/3です。 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.
-
トークンライフサイクル管理に焦点を当てます。 定期的な期限切れ、更新、削除のプロトコルは不可欠です。実装がこれらの原則を反映していることを確認して、リスクを制限します。
-
認証パターンを監視する。 異常な活動を監視し、進化する脅威に応じてセキュリティ対策を調整することです。 [13].開発プロセスの定期的なルーティーンとして、セキュリティの検査を実施する必要があります。
モバイルセキュリティは進化を続けているものの、基本的な原則は変わりません:ネイティブのセキュアストレージを使用し、トークンのライフサイクルを効果的に管理し、暗号化は妥協することなく行うことが重要です。 2022年時点で、81%のスマートフォンにバイオメトリクス機能が搭載されている これにより、開発者は、セキュリティとユーザー体験の両方を向上させる強力なツールを手に入れました。 [12]ユーザーはあなたにデータを預けているので、トークンストレージの実践が、最高のセキュリティの基準を満たしていることを確認する必要があります。
FAQs
::: faq
iOS KeychainとAndroid Keystoreを使用して、セキュアなトークンストレージを実施する必要がある理由は何ですか?
iOS KeychainとAndroid Keystoreなどのプラットフォームネイティブのセキュアストレージを使用することは、モバイルアプリケーション内の敏感データを保護する上で重要な役割を果たします。
これらのツールには、暗号化が組み込まれており、トークンが不正アクセスから保護されます。 さらに、, ensuring that tokens remain protected from unauthorized access. On top of that, they incorporate ユーザー認証ユーザーがデータをアクセスする前に、自分のアイデンティティを確認する必要があるため、追加のセキュリティ層が必要です。
1 つの重要な機能は、暗号化キーが 非エクスポート可能であることです。つまり、これらのキーは、デバイスから削除できず、重大なリスクが低減されます。 これらのシステムは、各プラットフォームと組み込みが容易で、複雑な暗号化プロセスを手動で管理する手間を避けることができるため、開発者はそれらを簡単に実装できます。 これらのツールを利用することで、モバイルアプリのセキュリティが強化され、開発者は現代のセキュリティ基準と業界の推奨事項を遵守することができます。 現代のセキュリティ基準 と 業界の推奨事項. :::
を遵守する
FAQ
モバイルアプリでトークンライフサイクルを安全に管理するためのベストプラクティスは何ですか? モバイルアプリでトークンライフサイクルを安全に管理するには、開発者はいくつかの基本的な実践に従う必要があります。まず、、15分以内の有効期限を持つものなど、 これにより、トークンが漏洩した場合の悪用の窓口を最小限に抑えることができます。ユーザーの便利さを維持しながら、セキュリティを犠牲にしないようにするには、
refresh tokens を実装する必要があります。これにより、新しいトークンを取得することなく、ユーザーは再度ログインする必要がなくなります。 トークンの適切な保存は、不正アクセスを防ぐために不可欠です。常に、 Keychain(iOS用)または
Android Keystore
(Android用)などのプラットフォーム固有のセキュアストレージソリューションに依存してください。これらは、敏感なデータを保護するために特に設計されています。また、トークンをハードコードするか、またはアプリ内でプレーンテキストで保持するのではなく、
を避けることも重要です。これにより、潜在的な脅威にさらされる可能性があります。
これらの慣行を統合することで、開発者はモバイルアプリケーションのトークン管理のセキュリティを向上させ、ユーザーを潜在的な脆弱性から保護できます。
その場合、標準ツールでは対応できない厳格な規制要件を満たす必要がある場合や、非常に敏感なデータを扱う場合など、カスタム暗号化が避けられない状況もある。 これらの場合、開発者は標準ツールでは対応できない厳格な規制要件を満たす必要がある場合や、非常に敏感なデータを扱う場合など、カスタム暗号化が避けられない状況もある。 最適なセキュアなトークンストレージの実践 彼らが保証するために 暗号化方法 暗号化アプローチに進む前に、業界標準に準拠し、信頼性の高いものであるかどうかを慎重に検討する必要があります。
セキュアなトークンストレージ:モバイル開発者向けベストプラクティス
Capgoを使用している場合、セキュアなトークンストレージのベストプラクティスを理解することが重要です。 セキュアなトークンストレージ:モバイル開発者向けのベストプラクティス セキュリティとコンプライアンスを計画するには、接続する 暗号化 暗号化の実装詳細のために 法的合規性 for the implementation detail in Compliance, Capgo Security Scanner for the product workflow in Capgo Security Scanner, Capgo Security for the product workflow in Capgo Security, and Capgo Trust Center for the product workflow in Capgo Trust Center.