ショップ更新: 出品者に連絡 & 安全なデジタルダウンロード
2026年9月10日
本日、コミュニティから要望の多かった2つの主要なショップ機能をリリースします: 購入前に購入者が出品者に質問できる機能と、ダウンロード可能な製品向けの安全なデジタルファイル配信です。
出品者に連絡 — 購入前に質問
購入前に商品について出品者に質問したいと思ったことはありませんか?今、それが可能です。
ショップの各商品カードに**「出品者に連絡」**ボタンが追加されました。クリックして、質問(最大1024文字)を入力し、送信します。出品者は Server-Sent Events (SSE) を通じてリアルタイム通知を即座に受け取ります — ページの再読み込みは不要です。出品者はショップオーナーダッシュボードから直接返信でき、返信があった際には通知が届きます。
仕組み
- 購入者が任意の商品の「出品者に連絡」をクリック
- 質問を入力(最大1024文字)
- 出品者がメッセージのプレビュー付きの即時SSEトースト通知を受信
- 出品者がダッシュボードの問い合わせセクションを開いて返信
- 購入者が出品者から返信があったというSSE通知を受信
レート制限
スパムを防ぐため、各購入者は商品ごとに24時間あたり最大5件のオープンな問い合わせを持つことができます。これにより出品者にとってシステムが管理しやすくなり、購入者にはフォローアップの質問をする十分な余地が与えられます。
23言語で利用可能
連絡機能のすべてのUIテキストは、サポートされている23言語すべてに翻訳されています: アラビア語、ベンガル語、ドイツ語、英語、スペイン語、ペルシャ語、フランス語、ヒンディー語、インドネシア語、イタリア語、日本語、韓国語、ポーランド語、ポルトガル語、ロシア語、スワヒリ語、タイ語、タガログ語、トルコ語、ウルドゥー語、ベトナム語、中国語(簡体字)、中国語(繁体字)。
安全なデジタルダウンロード — ウイルススキャン済みファイル配信
ショップオーナーはデジタル製品にダウンロード可能なファイル(PDF、画像、音声、動画、EPUB)をアップロードできるようになりました。購入者が支払いを完了すると、ショップの「マイダウンロード」セクションにファイルが表示されます。
多層セキュリティ(多層防御)
この機能を構築する際、セキュリティが最優先事項でした。マルウェアがプレイヤーに届かないようにするため、9層の保護を実装しました:
| # | 層 | 機能 |
|---|---|---|
| 1 | ファイルタイプ許可リスト | 安全なドキュメント/メディアタイプのみ受け付けます: PDF、PNG、JPG、GIF、WebP、TXT、Markdown、MP3、MP4、WebM、OGG、EPUB。実行可能ファイル、スクリプト、またはスクリプトを含むアーカイブは受け付けません。 |
| 2 | マジックバイト検証 | ファイルの実際のコンテンツが拡張子と一致する必要があります。photo.pngという名前のファイルは実際にPNGマジックバイトで始まる必要があります。malware.exeをmalware.pdfに名前変更しても機能しません。 |
| 3 | 50 MBサイズ制限 | アップロードサイズのハードキャップにより、大きなファイルによるサービス拒否を防ぎます。 |
| 4 | ClamAVウイルススキャン | すべてのファイルはClamAV(Dockerサイドカーとして実行)によりINSTREAMプロトコルを使用してスキャンされます。ClamAVが脅威を検出した場合、アップロードは拒否されます。本番環境でClamAVに到達できない場合もアップロードは拒否されます — スキャンされていないファイルは保存しません。 |
| 5 | SHA-256ハッシュ | 保存されたすべてのファイルはハッシュ化され、ハッシュはデータベースに記録されます。これにより整合性の検証と監査性が提供されます。 |
| 6 | 二重拡張子ブロック | document.pdf.exeのようなファイルは拒否されます。単一拡張子のみ許可されます。 |
| 7 | 直接的なWebアクセスなし | ダウンロードファイルはWebルートの外に保存されます。直接配信するnginxパスはありません。ファイルにアクセスする唯一の方法は、認証済みダウンロードハンドラを通すことです。 |
| 8 | 認証済みダウンロードハンドラ | ダウンロードエンドポイントは、要求ユーザーが注文を所有していること、注文が支払われていること、ダウンロードファイルがその注文の商品に属していることを検証します。注文がない場合、アクセスできません。 |
| 9 | ダウンロードカウント | 各ファイルは注文あたり最大10回ダウンロードできます。これにより、ダウンロードリンクが漏洩した場合の悪用を防ぎます。 |
ショップオーナー向けの仕組み
- 商品の作成または編集時に**「デジタル」**としてマーク
- 商品の新しい**「ダウンロード」**ボタンをクリック
- ファイルをアップロード(最大50 MB、許可されたタイプのみ)
- ファイルはClamAVにより自動的にスキャンされます
- スキャンに合格すると緑色の「スキャン済み」バッジが表示されます
- 検証用にSHA-256ハッシュが表示されます
購入者向けの仕組み
- デジタル製品を購入して支払いを完了
- ショップサイドバーに**「マイダウンロード」**セクションが表示
- ダウンロードをクリック — ファイルは安全なBlobダウンロードとして提供されます
- ダウンロードカウンターに残りのダウンロード回数(ファイルあたり10回)が表示されます
既存のFragment/CTTC配信については?
既存のFragment PiecesおよびCTTC Piecesの自動配信は、以前と全く同じように機能し続けます。新しいダウンロードシステムは、ショップオーナーが商品に添付したいその他のデジタルファイル向けの追加配信メカニズムです。
技術詳細
- バックエンド: PostgreSQLを使用するGo game-service。新しいデータベーステーブルが購入者-出品者間のメッセージとファイルメタデータ/アクセス権限を処理します。
- ClamAV: game-serviceと共にDockerサイドカーコンテナとして実行。INSTREAMプロトコルを使用したTCP通信。
- SSE: リアルタイム通知は既存のServer-Sent Eventsインフラを使用。新しいイベントで出品者に着信問い合わせを、購入者に返信を通知します。
- フロントエンド: i18n付きのバニラJavaScript。25の言語ファイルに28の新しい翻訳キー。
- ストレージ: ダウンロードファイルはWebルートの外に保存され、認証済みAPIを通じてのみアクセス可能です。
次は何でしょう?
これらの機能は現在、テストのためにMAASステージングサーバーに展開中です。検証完了後、すべての本番リージョンにデプロイされます。
ショップオーナーの皆様は、販売したいデジタル製品について検討を始めてください — PDF、アートワーク、音楽、動画など、ショップはエンタープライズグレードのマルウェア保護を備えた安全な配信をサポートするようになりました。
フィードバックがありますか?新しい「出品者に連絡」機能を使って当社のチームショップにお問い合わせください!