暗号化ファイルもフォルダ移動・リネームが可能に — HStorageのファイル整理機能を強化

HStorage の user-managed 暗号化(ブラウザ側でキーを生成し、サーバーには SHA-256 ハッシュのみ保存する方式)には、これまで一つの制限がありました。暗号化ファイルをフォルダ間で移動したり、フォルダ名を変更したりできなかったのです。

今回のアップデートでその制限を解消しました。user-managed 暗号化ファイルも、通常のファイルと同じ感覚でフォルダ整理できます。user-managed 暗号化の概要は「暗号キーはあなたが管理する — HStorageにユーザー管理暗号化を追加」を参照してください。

これまでの課題

user-managed 暗号化では、ファイルの復号に必要な raw SSE-C key を HStorage のサーバーに保存しません。これはセキュリティ上の大きなメリットですが、S3 上のファイルを物理的に移動する操作とは相性がよくありませんでした。

S3 には一般的なファイルシステムのような「名前変更」や「移動」そのものの操作はなく、実際にはオブジェクトを別のキーへコピーし、元のオブジェクトを削除する形で実現します。暗号化されたオブジェクトをコピーするには、復号に必要なキー情報が関係します。しかし user-managed 暗号化では HStorage が raw key を持たないため、サーバー側で安全に物理コピーを実行できませんでした。

そのため、従来は user-managed 暗号化ファイルについて、フォルダ間の移動やフォルダ名変更に伴う S3 側の移動処理をブロックする必要がありました。暗号キーを HStorage に預けない設計を守るためには正しい制限でしたが、ファイルを後から整理したいユーザーにとっては不便な点でもありました。

今回の改善内容

今回の改善では、アップロード時に実際の保存先を示す s3_key をデータベースへ永続化するようにしました。これにより、フォルダ移動やリネームのたびに S3 上のオブジェクトを物理的に動かすのではなく、HStorage のデータベース上の階層情報を更新する DB-only operation として扱えるようになりました。

つまり、ユーザーが Web 上でフォルダを整理しても、暗号化済みの実体ファイルは保存済みの S3 キーを参照し続けます。HStorage が raw key を保持しない user-managed 暗号化の考え方を維持しながら、画面上のファイル管理だけを柔軟に変更できるようになったことがポイントです。

この仕組みは user-managed 暗号化だけでなく、従来の legacy 暗号化ファイルや非暗号化ファイルにも一貫した挙動をもたらします。ファイルの整理操作が暗号化モードごとに大きく変わらないため、日常的な運用で迷いにくくなります。

暗号化ファイルのフォルダ整理イメージ

対応している操作

今回のアップデートで対応した操作は次のとおりです。

  • ファイルを別のフォルダへ移動する操作
  • フォルダ名を変更するリネーム操作
  • フォルダ移動やフォルダ階層の整理に関わる操作
  • フォルダ削除時に「ルートへ移動」を選ぶ move_to_root モード

これらの操作は、S3 上のオブジェクトを毎回移動するのではなく、データベース上のフォルダ階層を更新する形で処理されます。ユーザーにとっては、暗号化ファイルも通常のファイルと同じ感覚で整理しやすくなることが大きなメリットです。

たとえば、アップロード時には一時的なフォルダに置いておき、あとから案件別・顧客別・用途別のフォルダへ整理する、といった運用がしやすくなります。暗号化の設定を理由にフォルダ整理をあきらめる必要が減り、保管後のメンテナンス性が向上します。

SFTP/WebDAVユーザーへの注意事項

SFTP または WebDAV を有効にしているユーザーには、重要な制限があります。SFTP/WebDAV 有効ユーザーでは、Web/API 経由のファイル移動、フォルダ移動、フォルダリネーム、フォルダ削除時の「親フォルダへ移動」操作が制限されます。

これは、SFTP/WebDAV 側では S3 prefix をファイル階層として表示する一方、Web/API 側ではデータベース上の階層情報を使って表示するためです。Web/API だけで DB-only の移動を行うと、SFTP/WebDAV クライアントで見える階層と Web ダッシュボードで見える階層が一致しなくなる可能性があります。

そのため、SFTP/WebDAV を利用している場合、これらの移動・リネーム操作は SFTP/WebDAV クライアント側で行う想定です。HStorage は、複数のアクセス方法を併用してもファイル構成の見え方が破綻しないよう、この制限を設けています。該当するユーザーは、運用ルールとして「SFTP/WebDAV で扱うフォルダ構成は SFTP/WebDAV 側で整理する」ことをおすすめします。

ファイル操作の仕組みイメージ

使い方

Web ダッシュボードからの操作は、これまでのファイル整理と同じ流れで利用できます。

  1. HStorage にログインし、Web ダッシュボードを開きます。
  2. 移動したいファイル、または名前を変更したいフォルダを選択します。
  3. ファイル移動、フォルダリネーム、フォルダ削除時の整理など、目的に応じた操作を実行します。
  4. 操作後、Web ダッシュボード上のフォルダ構成が更新されます。

user-managed 暗号化ファイルであっても、通常のファイル整理に近い感覚で扱えるようになりました。暗号キーの管理方法はこれまでどおりユーザー自身が担い、HStorage は raw key を保存しません。セキュリティの前提を変えずに、日々の整理作業だけをよりスムーズにする改善です。

なお、SFTP/WebDAV を有効にしている場合は前述の制限が適用されます。Web ダッシュボードで操作できない場合は、SFTP/WebDAV クライアント側で移動やリネームを行ってください。

まとめ

user-managed 暗号化ファイルのフォルダ移動・リネームに対応しました。暗号キーを HStorage に預けない設計を維持したまま、ファイル整理の制約を取り除いています。

暗号化ファイルを安全に保管し、あとから整理しやすい状態に保ちたい方は、HStorage を試してください。