Capgoキーの安全性を維持する API keys __CAPGO_KEEP_0__ ユーザーデータの保護とアプリストアの規則の遵守のため、セキュアは重要です。
キーを公開すると、データ漏洩、サービス乱用、またはアカウントの侵害につながる可能性があります。
- Avoid storing keys in code__CAPGO_KEEP_0__ にキーを保存しないようにしましょう。
- : 環境変数または安全なファイルを使用してください。: プラットフォームのツールを使用してください。 : iOSのKeychainとAndroidのEncryptedSharedPreferences.
- API キーを暗号化する: AES-256暗号化を使用してセキュリティの追加層を追加してください。
- : HTTPSを常に使用し、SSL証明書ピンニングを検討してください。__CAPGO_KEEP_0__
- アプリのセキュリティを確保し、AppleとGoogleのガイドラインに準拠し、ユーザーの保護を実現するには、以下の実践を実施する必要があります。キーを定期的にローテーションし、異常な使用をトラッキングする。
キーを監視し、ローテーションする。
Secure API Key Storage Methods
Remove API Keys from Source Code
Including API keys directly in source code can lead to exposure through decompilation or repository leaks. To avoid this, consider these approaches:
- Capgoのキーを直接ソースコードに含めることは、デコンパイルまたはリポジトリの漏洩によって漏洩する可能性があるため、避けるべきです。このようなリスクを回避するには、以下のアプローチを検討してください。 環境変数を使用する。 環境変数を使用してローカル開発を実施する。
- 安全な構成ファイルにキーを格納する。 バージョン管理から除外された安全な構成ファイルにキーを格納する。 __CAPGO_KEEP_0__
- iOSアプリのセキュリティ対策 リモート設定サービスに依存してキーを管理 iOSの場合、XCConfigファイルを使用してコードベースから設定を分離することを検討してください。
Androidでは、Platform Security Toolsを使用してキーを管理できます。 プラットフォーム固有のツールを使用してキーを安全に保存することでセキュリティを強化できます。 iOSでは、Keychain Servicesを使用して安全な保存: gradle.properties:
# Store in ~/.gradle/gradle.properties
API_KEY=your_key_here
# Reference in build.gradle
buildConfigField "String", "API_KEY", "\"${project.API_KEY}\""
Androidでは、
Take advantage of platform-specific tools to enhance security when storing API keys.
Platform Security Tools __CAPGO_KEEP_0__ __CAPGO_KEEP_0__
let query: [String: Any] = [
kSecClass as String: kSecClassGenericPassword,
kSecAttrAccount as String: "APIKey",
kSecValueData as String: apiKey.data(using: .utf8)!
]
let status = SecItemAdd(query as CFDictionary, nil)
__CAPGO_KEEP_0__ 暗号化されたSharedPreferences 安全なキー保存のために:
val masterKey = MasterKey.Builder(context)
.setKeyScheme(MasterKey.KeyScheme.AES256_GCM)
.build()
val sharedPreferences = EncryptedSharedPreferences.create(
context,
"secret_shared_prefs",
masterKey,
EncryptedSharedPreferences.PrefKeyEncryptionScheme.AES256_SIV,
EncryptedSharedPreferences.PrefValueEncryptionScheme.AES256_GCM
)
環境を分離する
開発、ステージング、および生産環境用に異なるAPIキーを使用する。各環境には
- 一意のキー回転スケジュール
- 使用状況の監視
- 厳格なアクセス制御
環境固有のキーを 安全なCI/CD変数 設定ファイルではなく保存する。キーは自動ビルドプロセスをサポートする間も保護され、キーが送信される際に保護された送信メカニズムが用意されていることを確認する。
高度なモバイルiOSセキュリティ – ランタイム攻撃 & API キー…
API Key Transport Security
API の安全な輸送
__CAPGO_KEEP_0__ の安全な輸送は、ユーザーのデータを保護し、アプリストアの要件を満たすために不可欠です。強力な輸送安全対策は、攻撃のリスクを軽減し、不正アクセスを防ぐのに役立ちます。
API 通信の安全性を確保するには、常に HTTP トラフィックを HTTPS にリダイレクトしてください。TLS 1.3 またはそれ以降を使用し、信頼できる証明機関から SSL 証明書を取得してください。
__CAPGO_KEEP_0__ 通信の安全性を確保するには、常に HTTP トラフィックを HTTPS にリダイレクトしてください。TLS 1.3 またはそれ以降を使用し、信頼できる証明機関から SSL 証明書を取得してください。 __CAPGO_KEEP_0__ 通信の安全性を確保するには、常に HTTP トラフィックを HTTPS にリダイレクトしてください。TLS 1.3 またはそれ以降を使用し、信頼できる証明機関から SSL 証明書を取得してください。 __CAPGO_KEEP_0__ の HTTPS を強制する方法の例
const express = require('express');
const app = express();
// Redirect HTTP to HTTPS
app.use((req, res, next) => {
if (!req.secure) {
return res.redirect('https://' + req.headers.host + req.url);
}
next();
});
__CAPGO_KEEP_0__ の HTTPS を強制する方法の例
__CAPGO_KEEP_0__ の HTTPS を強制する方法の例
__CAPGO_KEEP_0__ の HTTPS を強制する方法の例
__CAPGO_KEEP_0__ の HTTPS を強制する方法の例 URLSession__CAPGO_KEEP_0__ の HTTPS を強制する方法の例
class APIManager: NSObject, URLSessionDelegate {
func urlSession(_ session: URLSession, didReceive challenge: URLAuthenticationChallenge, completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) {
guard let serverTrust = challenge.protectionSpace.serverTrust,
let certificate = SecTrustGetCertificateAtIndex(serverTrust, 0) else {
completionHandler(.cancelAuthenticationChallenge, nil)
return
}
// Compare certificate with pinned certificate
if validateCertificate(certificate) {
completionHandler(.useCredential, URLCredential(trust: serverTrust))
} else {
completionHandler(.cancelAuthenticationChallenge, nil)
}
}
}
transportを保護するだけでなく、APIキーをアプリケーションレベルで暗号化する必要があります。
APIキー暗号化
APIキーを暗号化する 暗号化により、さらにセキュリティの層が追加されます。Capgoは、例えば、端末間で暗号化されたアップデートを使用します。
“完全な端末間暗号化を実現する唯一のソリューションは、他のソリューションはアップデートを署名するだけ” - Capgo [1]
APIキーを暗号化するには、信頼できる暗号化アルゴリズムを使用します。以下は、Node.jsでAES-256-GCMを使用してAPIキーを暗号化する例です。
const crypto = require('crypto');
function encryptAPIKey(apiKey, encryptionKey) {
const iv = crypto.randomBytes(16);
const cipher = crypto.createCipheriv('aes-256-gcm', encryptionKey, iv);
let encrypted = cipher.update(apiKey, 'utf8', 'hex');
encrypted += cipher.final('hex');
return {
encrypted: encrypted,
iv: iv.toString('hex'),
tag: cipher.getAuthTag().toString('hex')
};
}
HTTPS、証明書固定、暗号化を組み合わせると、APIキーを保護する強力な防御を実現できます。
APIキー管理
APIキーを効果的に管理することは、使用状況を監視し、定期的にローテーションし、厳格なアクセス制御を実施することです。これにより、機密データを保護し、アプリストアの要件に準拠することができます。
使用状況の監視
APIキー使用状況を監視することは、異常な活動を発見するために不可欠です。リアルタイムの分析を使用して、以下を監視します。
- リクエストパターンとボリューム
- アクセス地理情報
- エラー率と種類
- 認証失敗
Node.jsの例:
const apiMetrics = {
trackRequest: (apiKey, endpoint) => {
// Log request details
const requestData = {
timestamp: new Date().toISOString(),
endpoint,
apiKey: hashKey(apiKey),
geoLocation: getRequestLocation(),
responseTime: calculateResponseTime()
};
// Alert on suspicious patterns
if (isAnomalous(requestData)) {
notifySecurityTeam(requestData);
}
}
};
キー回転スケジュール
キー回転を定期的に行うことで、利用状況を把握した後、App Storeの要件に準拠することができます。自動化された回転プロセスは、キー回転のための戦略を提供します。
- 緊急回転: キーを不正侵入の疑いがある場合に即時無効化します。
- 定期回転: 4か月ごとに生産環境のキーを更新します。
- 開発環境回転: 1か月ごとにテスト環境のキーを更新します。
対象言語
const keyRotation = {
oldKey: process.env.OLD_API_KEY,
newKey: process.env.NEW_API_KEY,
transitionPeriod: 7 * 24 * 60 * 60 * 1000, // 7 days
startDate: new Date()
};
日本
ページパス
const accessControl = {
validateAccess: (apiKey, requestedOperation) => {
const keyPermissions = getKeyPermissions(apiKey);
const environmentType = getCurrentEnvironment();
return isOperationAllowed(keyPermissions, requestedOperation, environmentType);
}
};
/ja/blog/api-key-security-for-app-store-compliance/
Capgo [

Capgo strengthens app security by combining secure storage and transport methods with advanced features built into its platform.
Capgo Security Architecture
Capgo’s system has successfully delivered over 23.5 million code API、SDK、CLI、npm、bun [1]APIキー end-to-end暗号化、認証されたユーザーしかアップデートを復号できないようにするため、
const capgoSecurity = {
encryptionType: 'end-to-end',
keyStorage: {
separate: true,
encrypted: true,
environment: process.env.NODE_ENV
},
updateVerification: async (update) => {
const isValid = await verifySignature(update);
const isAuthorized = await checkUserPermissions(update.userId);
return isValid && isAuthorized;
}
};
This design not only safeguards API keys but also simplifies compliance with app store requirements.
アプリストアの要件に準拠した
Capgo ensures updates are delivered quickly and securely, achieving an 82% global success rate, with 95% of active users receiving updates within 24 hours [1]Capgo
- Capgo
- アプリストアガイドラインの準拠
- Capgo
Capgo
Capgo works seamlessly with CI/CD platforms to enhance API key protection. Here’s an example of its integration:
capgo_deployment:
environment:
- CAPGO_API_KEY: ${SECURED_API_KEY}
- APP_ENV: production
security:
- signature_verification: true
- key_rotation: enabled
- access_control: role_based
| セキュリティ機能 | 実装 |
|---|---|
| 鍵暗号化 | ビルドとデプロイメントの間のエンドツーヘンド暗号化 |
| アクセス制御 | デプロイトリガーのロールベースのパーミッション |
| 監査ログ | すべてのデプロイメントアクティビティの包括的なログ |
| バージョン管理 | デプロイされたアップデートの安全な追跡 |
「エンドツーヘンド暗号化。ユーザーのみがアップデートを復号化できる、誰もが復号化できない。」 [1] - Capgo
概要
アプリストアの要件を満たすために、API キーを安全に保管することは、ユーザーデータの保護にとって非常に重要です。ここでは、重要な実践と次のステップについて簡単に説明します。
セキュリティチェックリスト
以下の表は、AppleとGoogleの標準に沿って、API キーを保護するために重要なステップを強調しています。
| セキュリティ対策 | 実装要件 | 適合性の影響 |
|---|---|---|
| ストレージセキュリティ | エンドツーエンド暗号化と分離された環境を使用する | Apple/Googleのデータ保護規則に準拠 |
| トランスポート層 | HTTPSを強制し、SSL証明書ピンニングを使用する | データの送信中のセキュリティを確保します。 |
| アクセス制御 | ロールベースのパーミッションを適用し、ログを追跡します。 アクセスログ | 未承認のアクセスをブロックします。 |
| キー管理 | 自動でキーをローテートし、環境固有のキーを使用します。 | 強力な、継続的なセキュリティを維持します。 |
このチェックリストを API キーのセキュリティを確保するためのガイドとして参照してください。
次のステップ
-
現在の実装を検証します。
既存のキー保存と輸送方法の脆弱性を確認し、特に暗号化とソース code の露出を重点的に検討します。
-
セキュリティ対策を実施する
リスクを軽減し、アプリストアの要件を満たすために、エンドツーエンド暗号化を適用する。
-
監視システムを確立する
自動警告を設定し、定期的な監査を実施して、セキュリティが継続することを確認する。
「アプリストアの規制に適合している」 - Capgo [1]
API キー セキュリティからアプリストアの規制に適合するまで続ける
Capacitorを使用している場合 Capacitorのセキュリティと規制の計画に使用するAPI キー セキュリティ Capacitorをセキュリティと規制の計画に使用する場合、__CAPGO_KEEP_0__ キー セキュリティを接続する 暗号化 暗号化の実装詳細 規制 APIキー セキュリティの実装詳細については、 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.