Skip to content

Latest commit

 

History

History
42 lines (29 loc) · 1.92 KB

case-2.md

File metadata and controls

42 lines (29 loc) · 1.92 KB

ケース2: Wishlist

Wishlistは、ユーザが欲しい物をリストにしておき、他の人に買ってもらう仕組みです。 購入者と配送先が異なるという特徴があります。

登場人物

購入者

商品を購入する人。

対象者

商品を贈ってもらう人。

ECサイト

ケース1と同じ。 対象者 の永続的トークン発行権を持つ

配送業者

ケース1と同じ。

ポイント

Wishlistのケースでは、購入者と配送先が違うので、自動的にトークンが発行される仕組み が必要です。 そのため、 Wishlistを作る 対象者ECサイト に対し、永続的な住所トークン発行権を認可する必要があります。

シーケンス

  1. 対象者ECサイト にアカウントを登録します。
  2. 対象者 はWishlistを作成します。
  3. ECサイト対象者 にOAuth画面を提示し、永続的な 住所トークン発行権を認可してもらいます。
  4. 購入者対象者 のWhishlistから商品を購入します。
  5. ECサイト対象者 の住所トークン発行権を使い、トークンを生成します。
  6. 以降のフローは通常とおなじです。

懸念点

この方式だと、ECサイトは住所トークンを発行し放題なので、攻撃により不正にトークンが生成される可能性があります。 そのため、本物の住所トークン を不正に取得しても、実際には利用できないようにする必要があります。 例えば、住所トークンには 発行者 を記録しておき、発行者と配送依頼者が同一でない場合、 実住所の取得が失敗するようにします。

ただし、ECサイト自身が不正にトークンを利用し、例えば送りつけ詐欺などをすることを防ぐことはできません。