Skip to main content
miilink

クリエイターのコンテンツに、エンタープライズ級の管理を

miilink はすべての短縮リンクにエンタープライズ級のコンテンツ管理を組み込んでいます。以下は現在 production で稼働中の監査可能な管理項目です。

透明性へのコミットメント

すべてのセキュリティ修正は公開 GitHub commit としてリリースされます。Pre-launch 段階の全 P0 / P1 課題には対応 PR、ロードマップ文書、レビューがあります。

実装済みセキュリティ管理

2026-05-14 現在

3層アクセス制御

コンテンツ閲覧時、uploadStatus → publishStatus → 期限 → 閲覧回数上限 → 地理 → テイクダウン の順で検証。1層でも失敗すれば拒否。

lib/content/access-check.ts

エンドツーエンド暗号化

AES-GCM-256 をブラウザでローカル暗号化、PBKDF2 100k iterations で鍵を導出。サーバーは平文を見ず、パスワードも DB に保存しません。

lib/crypto/encrypt.ts

地理的制限

クリエイターが許可国ホワイトリストを指定。IP-国マッピングは DB-IP データベースでリアルタイム解決。

Content.allowedCountries

分散レート制限

Token bucket を Redis Lua script として実装。複数 app instance 間で一貫性あり、race condition なし。

lib/rate-limit/limiter-unified.ts

Fail-closed な secret 検証

JWT_SECRET / FINGERPRINT_SECRET / CRON_SECRET / DATABASE_URL のいずれかが欠けると production 起動時に throw。fallback で黙って動作しません。

lib/config/secrets.ts

Content Security Policy

CSP + HSTS + Referrer-Policy + X-Frame-Options を完備。Report-Only ミラーで違反を DB に記録、将来の nonce migration の根拠とします。

lib/security/csp.js

シークレットスキャン CI

Gitleaks が全 PR で自動実行、検出時はインラインコメント + merge ブロック。

.github/workflows/ci.yml

管理者テイクダウンの即時反映

短縮リンクやコンテンツのテイクダウン後、閲覧は即座に拒否され viewer キャッシュも同期失効。race なし。

lib/content/access-check.ts → takedownResponse

管理項目についてご質問は?

セキュリティ監査から逃げません。確認したい詳細をメールでお知らせください。

お問い合わせ
    信頼性とセキュリティ | miilink