💾

3rd Party Storage が欲しい

2022/08/29に公開2

バックエンドを持つのがだるい問題

ソフトウェア提供の変遷は以下のとおりです。

  • 1 デスクトップアプリ
    • プログラムも、データも、ユーザーのPCにある
  • 2 SaaS
    • プログラムも、データも、サーバー上にある

SaaS は便利ですが、データの保存を開発者が請け負う点がしんどいです。これを何とかしたい。

そこで 3rd Party Storage が使えます。

3rd Party Storage とは

※現時点ではただの構想です

概要

ある SaaS の利用者 A がいるとして、A のデータを「その SaaS の運用者とは別のサービス」が保存する、という形態のことです。

一般的な SaaS は以下のようになってます。SaaS 運用者がデータ部分も担当しています。

しかし 3rd Party Storage では以下のようになります。

SaaS 運用者はデータ部分を持っていません。代わりに、3rd Party Storage 事業者が「Aさんの、その SaaS 用のデータ領域」を提供しており、SaaS はその領域を使う形を取っています。

何が嬉しい?

SaaS 開発者が楽できることです。バックエンドのストレージ部分をつくったり運用したりする必要がありせん。

利用イメージ

  • 1 SaaS S の開発者は、バックエンドのストレージに任せる部分を「3rd Party Storage サービスを使うように」実装しておく
    • (フロントから直接リクエストする形で実装することになる)
  • 2 利用者 U は、事前に S 用領域を、3rd Party Storage サービスでつくっておく
    • アクセスキーなどが発行されるのでメモ
  • 3 U が S にアクセスする
    • まず最初に 2 のアクセスキーなどを入力して認証する
    • 認証したら、以後は普通に使える

実現できるの?

さあ、どうでしょう。

技術的には可能だと思うんですけど。加えて、一大ビジネスにできるポテンシャルもあると思うのですが。

おわりに

3rd Party Storage について紹介してみました。欲しい。誰かつくってください or 無理だろこれという鉄槌を下してほしいです。

GitHubで編集を提案

Discussion

れたれた

diagrams.netは、ログイン機能もなく、ローカルストレージや、gitやOneDriveなどユーザが所有するクラウドストレージに保管されたデータを操作するインターフェースのみを提供しています。
この記事と考え方近いでしょうか。

以下、diagrams.net方式のメリットとデメリットについて

  • メリット
    • ユーザ側
      1. トラッキングを心配する必要が減る(サーバ側のロギングが適切である前提)
      2. ほかの人とデータを共有する手段を自分で選べる
    • サービス提供側
      1. ユーザ用ストレージの費用を考えなくていい
      2. 認証機能の実装が最小限で済む
      3. パスワードなど個人情報漏出の心配はほぼない
      4. 静的コンテンツで配信することが簡単なため、ホスティングのコストは非常に安く、ユーザへも低価格or無料で提供可能
  • デメリット
    • 共通
      1. データがユーザ側にあるため、データフォーマットがユーザの手違いで破損する危険がある
    • ユーザ側
      1. ストレージを自分で用意しなければならない
      2. 比較的にITの知識が要求されがち
      3. データ保護の責任はすべて自分になる
    • サービス提供側
      1. ユーザ側が保管、共有しているデータを画面に表示するため、XSSなどの脆弱性があると攻撃の踏み台にしやすい
      2. ユーザが保管しているデータはどれだけ古いものかわからず、データフォーマットの互換性に細心の注意を払う必要がある
stasta

コメントありがとうございます。
その考え方に近い(本質的には同じ)です。

3rd party storage は、そのdiagrams.netのようなあり方をさらに便利にしたものだと考えてます。

3rd party storage(長いので以下「3ps」)は、diagrams.net と比べて、

  • データ保存まわりがもっとシームレス
    • diagrams.net はファイル名指定してファイル選択ダイアログで場所指定して保存、みたいな操作をする
    • 3ps は、普通にSaaS使ってるときのような使い心地(ファイル保存ダイアログはいちいち出さない)
  • データ保存の責任は、3ps の事業者が担保してくれる
    • (が 3ps 側がフル担保だとさすがにしんどそうで、責任範囲など上手く考える必要はありそうです
      • AWSの責任共有モデルみたいな?
  • ITの知識があまりなくても使える
    • 最近(?)は Twitter や Google アカウントでソーシャルログインできるシチュが多いですが、たとえばそれくらいかんたんにできるイメージ
      • 3ps のアカウントを持っておいて、ログインしておくだけで「3ps対応アプリX」を使うときに初期画面で「X用の領域をつくりますか?」「X用領域としてこんな領域をつくります: ……」みたいなのが出るので、許可すればいいだけ、みたいな
    • ユーザーが勝手にいじって思わぬ破損、というのもなくしたい

などがあるかなと思っています。