基本要件
TLS が必要
すべての API リクエストは HTTPS を使用する必要があります。プレーン HTTP は拒否されます。
認証情報のセキュリティ
API キーやトークンを、クライアントサイドのコード、ログ、リポジトリに公開しないでください。
認証情報の保護
API キーとトークンはアプリの鍵です。安全に保管してください:1
環境変数を使用
認証情報はコードではなく環境変数に保存します。
2
シークレットをコミットしない
認証情報ファイルを
.gitignore に追加します。誤ったコミットを防ぐために git-secrets などのツールを使用してください。3
定期的にローテーション
定期的にキーを再生成し、漏洩が疑われる場合は直ちに行います。
4
最小限の権限を使用
アプリが実際に必要とする OAuth スコープのみをリクエストします。
認証情報が漏洩した場合
- Developer Console で 直ちに再生成
- 古いトークンを無効化 — 再生成すると古い認証情報は自動的に無効になります
- 使用状況を監査 — 不正な API アクティビティがないか確認します
- アプリを更新 — すべての環境に新しい認証情報をデプロイします
アプリケーションのセキュリティ
入力の検証
ユーザー入力を信頼しないでください。使用前にすべてのデータを検証およびサニタイズしてください:出力のエンコーディング
XSS を防ぐために、HTML に表示する前に X API データをエスケープします:防止すべき一般的な脆弱性
OAuth セキュリティ
State パラメータ
CSRF を防ぐために、OAuth フローでは常にstate パラメータを使用してください:
トークンの保管
安全な開発プラクティス
セキュリティ監査
定期的なセキュリティレビューとペネトレーションテストを実施します。
依存関係のスキャン
依存関係を最新に保ちます。脆弱なパッケージを検出するツールを使用します。
ログ記録
セキュリティイベントをログに記録しますが、認証情報や機密データは絶対に記録しないでください。
モニタリング
異常な API 使用パターンに対するアラートを設定します。
セキュリティ問題の報告
X に影響するセキュリティ脆弱性を発見した場合:X Bug Bounty
HackerOne を通じて X のシステムの脆弱性を報告してください。
あなたのアプリのインシデント
X データを使用するアプリで侵害が発生した場合、同じチャネルから報告してください。
コンプライアンスチェックリスト
X API 開発者向けのセキュリティ要件
X API 開発者向けのセキュリティ要件
- すべての API リクエストが TLS/HTTPS を使用
- 認証情報が安全に保管 (コードやログ内ではない)
- ユーザートークンが保存時に暗号化
- すべてのユーザー提供データに対する入力検証
- XSS を防ぐための出力エンコーディング
- OAuth フローでの CSRF 保護
- セキュリティロギングが有効 (機密データなし)
- インシデント対応計画が文書化
- 依存関係が定期的に更新
- 最小限の OAuth スコープがリクエスト
リソース
認証ガイド
OAuth を正しく実装します。
アプリの権限
最小限の必要な権限を設定します。