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

アプリストアの規制に適合するためのAPIのトップセキュリティスタンダード

アプリの規制要件に適合し、ユーザーデータを保護するために必要なAPIの基本セキュリティスタンダードを学びましょう。

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

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

コンテンツマーケティング

アプリストアの規制に適合するためのAPIのトップセキュリティスタンダード

アプリの API を保護することは、Apple App Store と Google Play の要件を満たすために不可欠です。このガイドでは、 5 つの重要な API セキュリティ基準 を紹介します。これらの基準を実装することで、プラットフォームの規定に準拠し、ユーザーのデータを保護し、アプリのパフォーマンスを向上させることができます。

重要なポイント:

これらの基準を実装することで、ユーザーのデータを安全に保ちながら、 Capacitor アプリ 承認基準を満たすアプリを確実に作成することができます。さらに詳しく知りたい場合は、ステップごとに説明していきましょう。

Proxyサーバーとユーザー…を使用してフロントエンドアプリ内でセキュアなAPIキーを保存する

1. OAuth 2.0 実装

OAuth 2.0

OAuth 2.0は、ユーザーのリソースにアクセスするために使用される、セキュアな認証プロトコルです。ユーザーの機密情報を公開しないように、第三者アプリがユーザーのリソースにアクセスできるようにします。AppleやGoogleなどのプラットフォームでは、セキュアで基準に適合した認証が必要であり、OAuth 2.0はトークンを使用したセキュアな認証と制御されたAPIアクセスを通じてこれらの要件を満たします。

以下の手順に従って、Capacitor アプリで OAuth 2.0 を設定します:

キー認証フロー

  • PKCE (Proof Key for Code Exchange) を使用した Code 認証 最も安全なフロー、モバイル アプリ向けに最適です。
  • 暗黙のフロー: 古いシステム向けにのみ使用してください。
  • クライアント資格情報: サービス間の通信用に

統合のためのステップ

  1. トークンの管理

    • 安全にトークンを取得する
    • トークンを保存する 暗号化ストレージ 未承認のアクセスを防ぐために。
    • トークンの自動更新を確実にアクセスを維持するために。
    • トークンの署名を検証して正当性を確認する。
  2. セキュリティ対策

    • アクセスを制限するためにスコープを設定する。
    • トークンの有効期限を設定してリスクを減らす。
    • アクセスの制限を適用してアバースを防ぐ。
    • 認証の試行を監視して疑わしい活動を検知する。
  3. App Storeの適合性

    • Appleによって承認されたOAuthプロバイダーを使用する。
    • Google Playのセキュリティガイドラインを満たす。
    • アプリの認証フローを明確にドキュメント化してください。
    • レビューとトラブルシューティングのために、監査ログを保持してください。

追加の保護のために、OAuth 2.0を他の認証方法と組み合わせることを検討してください。このアプローチは、敏感なユーザーデータを保護するだけでなく、APIエンドポイントをセキュアにすることもできます。 これにより、プラットフォームの要件に準拠することが保証されます。 [1][2].

2. OpenID Connect セットアップ

OpenID Connectは、OAuth 2.0にアイデンティティ層を追加することで、ユーザーアUTHENTICATIONをセキュアにすることを目的としたものです。

主な実装手順

  1. アイデンティティトークン設定

    • スコープを定義するには、例えば、 openid, profile, email.
    • を指定します。
    • アクセストークンの有効期限を15~30分に設定してください。
  2. User Authentication Process

    • システムブラウザやデバイスのバイオメトリクスを使用したネイティブの認証を利用してください。
    • 暗号化されたストレージでトークンを安全に保存してください。
    • サーバー側で常にトークンを検証してください。
  3. Claims Management

    • 実際に必要なユーザー情報のみを要求してください。
    • セキュリティを維持するために適切なセッション管理を実装してください。

iOS向けのガイドライン

iOSの場合:

  • ASWebAuthenticationSessionを安全な認証のために使用してください。 For Android: Use Android's built-in authentication features for secure authentication.
  • サポート Appleでサインイン __CAPGO_KEEP_0__
  • キーチェーンを使用してトークンを安全に保存します。
  • 追加の保護のために証明書ピンニングを有効にします。

Androidの場合:

  • 使用 Chrome Custom Tabs 認証フロー用に
  • Androidキーストアを使用してクレデンシャルを安全に保存します。
  • Integrate Google Sign-In 必要に応じて。
  • __CAPGO_KEEP_0__を有効にする セーフティネット 証明 追加のセキュリティのために。

セキュリティのベストプラクティス

  • セッションを効果的にクリアするためにログアウトプロセスを実装する
  • CSRF攻撃から守るためにステートパラメータを使用する
  • __CAPGO_KEEP_0__を有効にする 安全な接続のためにHTTP Strict Transport Security (HSTS)を使用する 認証試行を監視して疑わしい行動を検出する
  • __CAPGO_KEEP_0__

最後に、すべての認証交換がトランザクション中で保護されていることを確認する必要があります。

3. TLS/SSL セキュリティ

TLS/SSL は、データが送信されている間も暗号化されます。TLS (Transport Layer Security) は、API トラフィックを保護し、傍受または改ざんから守ります。

キーセキュリティプラクティス

  • 使用 TLS v1.2 またはそれ以上のすべての __CAPGO_KEEP_0__ 通信に使用します。このようにすると、OAuth トークンと OpenID のアイデンティティの主張がクライアントとサーバー間でプライベートになります。 for all API communications. This keeps OAuth tokens and OpenID identity assertions private between the client and server.
  • iOS と Android アプリケーション両方に 証明書ピンニング 有効化
  • HTTP Strict Transport Security (HSTS) アクティブ化 On your servers, secure connections are enforced.

Capacitorのセットアップ

CapacitorのHTTPプラグインまたはWKWebView/NSSecureTransportを使用して、無効な証明書をブロックする。ライブアップデートの場合、AppleとGoogleのガイドラインを満たすエンドツーヘンド暗号化を提供するツールとしてCapgoを使用します。 [1].

4. JWT セキュリティ対策

JSON Web Tokens (JWT)は、APIの通信を保護するために不可欠です。特に、App Storeの要件を満たすために、JWTを使用する必要があります。OAuth 2.0とOpenID Connectのセットアップを強化することで、トークンのセキュリティを強化します。

トークン署名ガイドライン

  • 使用 RS256 (RSA-SHA256)を使用してトークンを署名し、90日ごとにプライベートキーをローテートする。 JWTを
  • 暗号化された安全なストレージに保存する 無断アクセスを防ぐために。 to prevent unauthorized access.
  • キー要素を検証するには、 __CAPGO_KEEP_0__, 発行者 (iss), 受信者 (aud)有効期限.
  • ペイロードを最小限に抑える - 必要なクレームのみを含み、ユニークな識別子 (jti) を追加し、機密情報を避ける。

トークンライフサイクル管理

  • リフレッシュトークン 有効期限から5分前 __CAPGO_KEEP_0__
  • サービスを停止せずに 取り消しリスト (例えば、 Redis) を使用して、危険なトークンを即座に無効化する。

エラーハンドリング

エラーが発生した場合、 汎用的なエラーメッセージ を返す invalid_token 検証の詳細を公開しないようにする。

App Storeの規制

アプリストアの要件に適合するように、JWT実装を確認してください:

  • プラットフォームの キーチェーンストレージガイドラインに従っています.
  • トークン関連のすべての操作に対して適切な 監査ログを含めています 5. __CAPGO_KEEP_0__ リクエスト制御

API にアクセスする頻度を管理することは、セキュリティを確保するのと同じくらい重要です。リクエスト制限は、不正使用を防ぎ、DDoS攻撃から保護し、リソースをユーザー間で公平に共有するのに役立ちます。

Managing how often users can access your API is just as important as securing it. Rate limits help prevent misuse, protect against DDoS attacks, and ensure resources are shared fairly among users.

トークンが安全であることを確認した後、各クライアントが実行できるリクエストの数を決定する時が来ます。

リクエスト制限

リクエストをIPアドレスに基づいて制限する

  • リクエスト制限
  • ユーザーごとに API キーに関連付けられたクォータを設定
  • まれなパケットを許可して、トラフィックの急増を処理

時間ベースの制限

  • 固定ウィンドウ: 定期的に (例: 1 分間または 1 時間ごとに) 制限をリセット
  • スライディングウィンドウ: ローリングタイムパーミッド内での使用状況を追跡
  • トークンバケット: リクエストごとにトークンを発行し、一定時間後に補充

実装ガイドライン

ヘッダーとレスポンスコード

制限を適用する際、レスポンスに役立つヘッダーを含める

  • HTTP 429(「多すぎる要求」)を使用して、制限を超えた場合
  • ヘッダを追加して X-RateLimit-Limit, X-RateLimit-RemainingX-RateLimit-Reset を使用して、ユーザーを情報に満ちた状態に保つ
  • を含むヘッダを追加して、ユーザーが何時何時試行できるかを示す Retry-After 監視と警告

__CAPGO_KEEP_0__の使用状況を監視するには、以下の手順に従う

リアルタイムでAPIの使用状況を監視してパターンを発見する

  • Monitor API usage in real time to spot patterns
  • 不審なトラフィックのスパイクに対して警告を設定する
  • 将来の分析のために、レート制限違反をログする
  • __CAPGO_KEEP_0__の使用状況を監視するには、以下の手順に従う

エラーレスポンスの例

クライアントがレート制限を超えた場合、明確なJSONメッセージで応答してください。例えば:

{
  "error": "rate_limit_exceeded",
  "message": "Request quota exceeded",
  "retry_after": "<seconds until reset>"
}

レート制限ストレージ

レート制限を効率的に実施するには、RedisやMemcachedなどの分散キャッシュを使用してください。 これらのシステムは、リクエストカウントを複数のインスタンス間で追跡するのに役立ち、同時に高パフォーマンスを維持します。次: App Store セキュリティ規則

App Store セキュリティ規則

AppleとGoogleのプラットフォームのセキュリティ要件を網羅するために、OAuthトークンやレート制限だけではありません。アプリがプラットフォームの基準を満たしていることを確認するために、ネットワークとストレージのセキュリティ要件を調べましょう。

iOS 要件

App Transport Security (ATS)

  • 有効にする必要があります: __CAPGO_KEEP_0__
    • __CAPGO_KEEP_0__ 1.2 または新しい
    • __CAPGO_KEEP_1__ (PFS)
    • __CAPGO_KEEP_0__ で SHA-256 以降の
  • __CAPGO_KEEP_2__ を使用して敏感なデータを保護します。
  • 安全な通信のために証明書ピンニングを設定します。
  • すべてのローカルデータを暗号化します。

Android の要件

  • 使用 Network Security Config から:
    • 明示的なテキストトラフィックを制限します。
    • 証明書ピンニングのルールを定義します。
    • 必要に応じてカスタムの証明書認証局を指定してください。
  • ファイルを安全に暗号化してください。
  • デバイスの完整性チェックのためにSafetyNetの証明を設定してください。
  • Android Keystoreを使用して安全な鍵管理を設定してください。

Common Platform Rules

両方のプラットフォームは、以下の重要なセキュリティ要件を共有しています:

  • すべての接続にHTTPSを使用してください。
  • 証明書を正しく検証してください。
  • SSL/TLS設定を安全に構成してください。
  • ローカルストレージを暗号化して保護してください。
  • 詳細な監査ログを保持してください。
  • セキュリティ対策のドキュメントを提供してください。

API アクセス制御方法

API エンドポイントを保護することは、プラットフォーム トランスポートとトークンのセキュリティだけに留まってはなりません。 API のセキュリティを確保するには、細かいアクセス制御が重要です。

アクセス制御の重要な方法

  • API キー検証
    有効期限が設定された暗号化キーの使用を推奨します。 90 日ごとにキーのローテーションを自動化し、キーの使用回数と使用回数の制限を設定し、キーの使用を監査するためにログを記録するようにしてください。この方法は、サービス間の呼び出し用に OAuth 2.0 と組み合わせて使用すると効果的です。

  • OAuth スコープの強制
    API の権限に特定のスコープを割り当て、リクエストごとにスコープを検証します。スコープが不足しているリクエストを拒否し、スコープの要件をアプリストアのレビューに明確に記載し、スコープと JWT のクレームを組み合わせることで、さらにアクセスの制限を実現できます。

  • ロールベースのアクセス制御 (RBAC)
    ロールに正確な権限を定義し、認証システムを通じてロールを割り当てます。 API の呼び出しごとにロールの権限を確認し、暗号化されたストレージにロールの割り当てを安全に保存するようにしてください。

  • トークンイントロスペクション &amp; 取り消し
    リアルタイムでトークンを検証し、不正確なトークンの中央管理黒リストを維持します。即時取り消しを許可し、不審なトークン活動を検出するための監視を設定するようにしてください。

プラットフォームの準拠

For approval on platforms like Apple’s App Store or Google Play:

  • セキュリティレビューの際にアクセス制御方法を明確に記録すること。
  • 不正アクセスを検知した場合に適切なエラーレスポンスを返す。
  • アクセスログを詳細に記録すること。
  • セキュリティインシデントに対処するために迅速に監視する機能を有効にする。

これらの対策は、AppleのセキュリティガイドラインとGoogleのセキュリティガイドラインに沿ったものであり、APIが彼らの基準を満たしていることを保証します。

API Security Tools for Capacitor

アクセス制御を設定した後、次のステップは、Capacitor ワークフローにこれらの安全対策を無問題に実装するツールを統合することです。OAuth、TLS、JWTプロトコルをサポートするツールは、Capacitor アプリをセキュアに保ち、スムーズな更新を保証するために不可欠です。

セキュリティ上の重要な機能

Capacitor に対する効果的なセキュリティツールには、以下の機能が含まれるべきです。

  • エンドツーエンドの暗号化 データを保護し、即時更新を可能にするために。
  • __CAPGO_KEEP_0__とエラー追跡 __CAPGO_KEEP_0__のパフォーマンスと問題を監視する
  • __CAPGO_KEEP_0__の機能 __CAPGO_KEEP_0__の迅速な修正
  • __CAPGO_KEEP_0__と柔軟なホスティングオプション __CAPGO_KEEP_0__の要件を満たす
  • __CAPGO_KEEP_0__の制御された更新 __CAPGO_KEEP_0__の重大問題に対する即時バージョンへの復元
  • __CAPGO_KEEP_0__ __CAPGO_KEEP_0__
  • __CAPGO_KEEP_0__ __CAPGO_KEEP_0__
  • ターゲットユーザー制御 個別の更新用に

Top Pick: Capgo

Capgo Live Update ダッシュボード インターフェイス

Capgoは、AppleおよびGoogleのガイドラインに準拠しながら、Capacitorアプリのライブ更新を管理する際に優れたツールです。 82%のグローバル更新成功率と、感嘆符の高い434msの平均API応答時間を誇ります。 [1].

パフォーマンスメトリック

Capgoは、迅速かつ効果的な更新を保証します:

  • 95%のユーザー 24時間以内に更新を受け取る
  • 信頼されている __CAPGO_KEEP_0__は、1,900を超える実稼動アプリを支援しています 世界中 [1]

監視と分析

アプリのパフォーマンスと法的遵守を維持するには、次のメトリックを追跡することに焦点を当てましょう:

  • アップデート成功率: 最新バージョンを実行しているユーザーの割合
  • API レスポンス時間: アップデートの配信速度を示す重要な指標

これらのメトリックを定期的に確認することで、アプリがアプリストアの要件を満たし、ユーザーにSmoothなエクスペリエンスを提供できるようにすることができます。
[1] Capgo 使用状況統計

すべてをまとめる

5つの重要な基準がどのように一致するかを理解するには、以下のとおりです。 セキュアな認証 (OAuth 2.0 with PKCE, OpenID Connect), 強化された暗号化 (TLS 1.2+ と適切な JWT の使用), と API のアプリケーションで Apple と Google のアプリストアの要件を満たすために必要な Capacitor

の重要な要素です。 アップデートの配信に成功した実際の例があり、CI/CD Pipelinesとロールバック機能を組み込んだステージドロールアウト、, 継続的な監視、, エンドツーエンド暗号化の維持、 ベータチャンネルを通じて CI/CD Pipelinesとロールバック機能を組み込んだステージドロールアウト、 継続的な監視、 [1].

FAQs

::: faq

アプリストアのセキュリティ基準を満たすために、Capacitor アプリにOAuth 2.0を実装する方法はありますか?

実装するには OAuth 2.0 Capacitor アプリにOAuth 2.0を実装し、アプリストアのセキュリティ基準に準拠するには、以下の手順を実行する必要があります。

  1. OAuth プロバイダーを設定するOAuth プロバイダーにアプリを登録し (例: Google、Apple、または別のサービス)、必要なクレデンシャル (Client ID および Client Secret) を取得する必要があります。
  2. OAuth ライブラリを統合するライブラリとして @capacitor-community/oauth2 Capacitor アプリと統合するために使用します。このライブラリは、認証フローとトークン管理を管理するのに役立ちます。
  3. リダイレクト URIを構成する: アプリのリダイレクト URI を適切に設定して、安全に認証コールバックを処理するように OAuth プロバイダーの設定を確認してください。
  4. 認証トークンを安全に管理する: セキュアなストレージ (例: Capacitor のセキュア ストレージ プラグイン) を使用してアクセス トークンとリフレッシュ トークンを保存し、エンドツーエンド暗号化を確実に行ってください。

これらの手順を実行することで、アプリがセキュリティ基準を満たしながら、Smooth な認証体験を提供できるようになります。 Apple と Google の要件に準拠するために、 Capgo を使用することで、アプリの更新プロセスを強化できます。 Apple と Google の要件に準拠しながら、リアルタイムで更新をユーザーに提供できます。 :::

::: faq

Apple と Google のアプリ ストアの要件に準拠するために、API をどのように設定することができますか?

Apple と Google のセキュリティ基準に準拠するために、API を設定するには、強力なセキュリティ慣行を実施する必要があります。 これには、エンドツーエンド暗号化、セキュアな認証方法、データプライバシー対策などが含まれます。これらは、要件を満たすために不可欠です。 Capgo アプリを開発している場合、__CAPGO_KEEP_1__ のようなツールを使用することで、要件を満たすことが簡単になります。 __CAPGO_KEEP_2__ を使用することで、即時でアップデート、修正、機能をユーザーに提供できます。 Apple と Android のガイドラインに準拠しながら、セキュリティ基準を満たすことができます。:::

If you’re developing Capacitor apps, tools like Capgo can simplify compliance. Capgo allows you to instantly push updates, fixes, and features without needing app store approvals, all while adhering to Apple and Android guidelines. This ensures your app stays secure and up-to-date effortlessly. :::

::: faq

What are the best tools and practices for monitoring and managing API security in my app?

API セキュリティの効果的な管理には、リアルタイムの更新、暗号化、開発ワークフローとのシームレスな統合を可能にするツールを検討してください。 Capgo Capacitor

Capgo エンドツーエンドの暗号化、CI/CD Pipelinesとの統合、特定のユーザーグループにアップデートを割り当てる機能など、セキュリティだけでなくアップデートプロセスを簡素化し、アップルとGoogleのアプリストアの要件に準拠することが容易になります。 :::アプリストアの準拠に必要なトップレベルの__CAPGO_KEEP_0__ セキュリティ基準から始めてください。

アプリストアの準拠に必要なトップレベルのAPI セキュリティ基準を使用してセキュリティと準拠を計画している場合、接続してください。

Top __CAPGO_KEEP_0__ Security Standards for App Store Compliance Top API Security Standards for App Store Compliance Top __CAPGO_KEEP_0__ Security Standards for App Store Compliance 暗号化 暗号化の実装詳細のために 法的適合性 法的適合性の実装詳細のために Capgo セキュリティ スキャナー Capgo セキュリティ スキャナーの製品ワークフロー Capgo セキュリティ Capgo セキュリティの製品ワークフロー Capgo トラスト センター Capgo トラスト センターの製品ワークフロー

Capacitorアプリのリアルタイム更新

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

始める

ブログの最新記事

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