セキュリティ
KabuLinkは、ユーザー自身のTradingViewアラートと証券口座接続を中継するサービスです。決済情報、証券口座API情報、Webhook secretを不要に露出しない設計を基本方針とします。
1. 決済情報
- サブスクリプション決済はStripe CheckoutおよびStripe Billing Portalで処理します。
- KabuLinkはカード番号、CVC、カード認証情報を取得・保存しません。
- KabuLinkが扱うStripe関連情報は、顧客ID、サブスクリプション状態、プラン、Checkout/Billing Portalのセッション情報です。
- Stripe Webhookは署名検証後に処理します。
2. 通信とアクセス制御
- 本番環境はHTTPSで提供します。
- 管理APIは管理者用Bearer tokenに加え、nginxのIP許可リストでアクセス元を制限します。
- ユーザーAPIはログイン時に発行されるBearer tokenで保護します。
- 認証API、通常API、Webhookにはレート制限を設けます。
- ログイン失敗が続いた場合、10回以下の閾値でアカウントを一時ロックします。
- 新規登録時は登録メールアドレスへ確認リンクを送信し、メール確認を求めます。
- レスポンスにはクリックジャッキングやMIME sniffingを抑制するセキュリティヘッダーを付与します。
3. 秘密情報の保護
- パスワード、API token、Webhook secretはハッシュ化または暗号化して保存します。
- 証券会社APIキー、Gateway bearer token、Webhook secret等は、設定された暗号鍵で暗号化保存します。
- 画面、ログ、監査イベント、サポート問い合わせでは、secretやパスワードの全文を求めない運用とします。
- Webhook secretや証券会社APIキーは、必要に応じて再発行・ローテーションしてください。
4. 監査ログと運用
- 登録、ログイン、接続作成、接続テスト、Webhook処理、注文失敗、Stripe課金イベントを監査ログに記録します。
- パスワード変更、パスワード再設定完了、API token再発行、接続設定変更、Webhook secret再発行などのアカウント変更時は、登録メールアドレスへ通知します。
- 監査ログは障害調査、不正利用調査、注文経路の確認に利用します。
- バックアップ、ヘルスチェック、readinessチェックにより本番設定と稼働状態を確認します。
- VPSにはClamAVを導入し、ウイルス定義更新と日次スキャンを実施します。
- ライブ取引はdry_run、readonly、simulate等で確認した後、明示的な許可がある場合のみ有効化します。
5. 利用者へのお願い
- サポートへパスワード、Stripe Secret Key、証券会社API Secret、Webhook secret全文を送らないでください。
- 不審な注文、ログイン、接続変更、メールを見つけた場合は、速やかに接続を無効化し、サポートへ連絡してください。
- 証券会社側でAPIキーの停止、IP制限、権限変更が必要な場合は、利用者自身で証券会社画面から操作してください。
6. 連絡先
セキュリティ上の問題、意図しない注文、課金に関する問題は、KabuLink画面の問い合わせフォームまたは support@kabulink.xyz へ連絡してください。