0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

モダンなファイル転送アプリの開発(1)

Posted at

ファイル転送アプリを作った経緯とその利用目的

過去、会社の仕事でファイルをメールに直接添付せず、Webへアップロードし、ダウンロードURL化するアプリをPHPで作りお客様へ提供するサービス(以下、ファイル転送アプリ)を作ったことがありました。

ファイル転送アプリの主な利用目的

だいたい以下のような感じだったと記憶しています。
また、お客様にも、こういう目的で使って欲しいと言っていたように思う。
(他にも、利用目的があれば教えてください)

1.メール誤送信対策

ファイルを直接メールに添付せずダウンロードURLを送るようにしておくことで、メール誤送信があったことに気付いたとき、ダウンロードURLを無効化すれば情報漏洩による被害拡大を抑えることができます。

2.大容量ファイル送信

多くのメールサービスでは添付ファイルサイズに制限があり、数十MB程度が一般的です。この制限を超える大容量ファイルを送る際に、ファイル転送アプリが役立ちます。Webの制作会社などが制作した画像ファイルを含んだコンテンツを送る場合や、建設会社やメーカが図面や指示書を送付する際によく使用されます。

3.PPAP対策

PPAP(メールでパスワード付きZIPファイルを送る日本独自の慣習)はセキュリティ的に意味が無い上、生産性を落とす問題があります。その対策として期限付きワンタイムURLを発行し、アクセスログをしっかり取ってセキュリティを向上させる目的で使用されます。

4.USBメモリ利用の禁止

USBメモリ利用が情報漏洩リスクの原因になっており、多くの会社でその利用を制限しています。会社によってはパソコンの設定やアプリでUSBメモリを使えないようにしている場合もあります。そういった場合、安全かつ簡単にファイルを共有出来るファイル転送アプリが選ばれています。

5.テレワーク環境でのセキュアなファイル共有

 TeamsやSlack、Chatworkといったビジネスチャットを導入していない企業や、ファイルの送り先が別のビジネスチャットを使用している場合でも、安全にファイルを共有するために、ファイル転送アプリが利用されています。

6.取引先からの指定

取引先がファイルの授受を特定のファイル転送アプリを指定することもあり、このような要望に応える目的でも利用されています。

次の章では、このようなファイル転送アプリを大規模化する際に生じる課題とその対策について解説します。

ファイル転送アプリを大規模提供する際の課題と対策

ファイル転送アプリは一見すると非常にシンプルなアプリケーションですが、大規模なスケールや一定のパフォーマンスを確保して提供しようとすると、様々な課題が生じてきます。

大規模化に伴う課題

1.ストレージ容量の増加

期限付きワンタイムURL化しても一定期間ファイルを保存しておく必要があるため、サービスの規模が大きくなればなるほど相応のストレージ容量が必要になります。

2.アップロード性能の確保によるサーバー増加

ブラウザからのファイルアップロードの性能を安易に確保しようとすると、単純にサーバーの台数を増やすという解決策を取りがちです。これにより、サーバー管理稼働の増大やコストが増加します。

3.コスト増大の懸念

こうしたレガシーなアーキテクチャや運用管理の複雑化は、サービス提供コストを押し上げる要因になります。結果としてサービスの提供価格にも影響を及ぼす可能性があります。

セキュリティへの対応

サービス規模が大きくなれば、当然ながらセキュリティの対応も重要になってきます。

1.外部攻撃への対応

UTMやWAFといったセキュリティ機器、またはクラウドベースのセキュリティサービスを利用して、外部からの攻撃(Ddos,Dos,SQLインジェクション,クロスサイトスクリプティングなど)に備える必要があります。

2.アプリケーションレベルでの対策

アプリケーション自体のセキュリティを強化するため、ペネトレーション試験の実施や、コードレベルでの脆弱性対策(リファクタリング)が重要です。

3.OSやミドルウェアレベルのセキュリティ対策

OSやミドルウェアのバージョン管理と脆弱性対策(パッチ当てとバージョンUPなどと)、OSなどのEoL(End-of-Life)管理も欠かせません。

4.組織やサービスの公的な認証取得とその維持の負担

ISMS(ISO/IEC 27001、27017)やISMAPなどの外部監査による公的なセキュリティ認証を取得・維持することは、サービスの利用者にとってそのサービスがセキュリティ基準を満たしていることが証明され、の透明性が高まるのでとても良いことですが、サービス運営において大きな負担になることがあります。

5.課題まとめ

ファイル転送アプリをスケールさせて提供するには、単純なサーバー台数の増加に依存せず、効率的でセキュアなシステム構成を検討する必要があります。クラウドサービスの利用、効率的なストレージ管理、セキュリティの自動化といった手法を導入することで、サービス提供コストを抑えながら高いパフォーマンスとセキュリティを実現することが望まれます。

意見

これは個人的な意見です、最近市場でに出回っているファイル転送アプリ(有償)は、ちょっと高くないでしょうか?もちろんユーザによっては、痒いところに手が届くような、独自の機能作り込みがあるので多少価格が高くても問題無い面もあるかと思います。
とは言え、何年か前に有名な無償アプリでセキュリティインシデントが発生して、気軽にファイル転送サービスを使うことが出来なくなっているのも事実です。
このまま古いシステムと古いアーキテクチャでサービスが維持されると、既存の有償サービスはサービス利用料が高止まりする。無料アプリも機能が向上しない。となり、ファイル転送サービスの普及が進まず、依然として日本の一部でPPAPが続くのではないかと懸念しています。
それを避ける為に、最新のアーキテクチャを用いて(モダン化)によって、ユーザ目線の使い勝手を落とさず、どこまで低コスト化出来るのか検証が必要だと考えました。これはファイル転送アプリに限らず、すべてのアプリケーションにおける課題かもしれません。
我々は、今すぐに、こういったアプリを使いたい人、使う必要ある人に気軽に使っていただけるようアーキテクチャだけでなくUI/UXも含めたサービスのモダン化にチャレンジをすることが重要だと考えています。

試供中のファイル転送アプリ

これは会社の仕事とは別で業務時間外・休日を活用し、サービスを開発、無料サービスを提供しています。
順次、機能向上していきます。励まし・ご意見いただけると嬉しいです。

ユーザ登録はこちら
ファイル転送アプリ:https://www.ftenso.com/

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?