パスワードレスなユーザー認証時代を迎えるためにサービス開発者がしなければならないこと accepted

Abstract

概要の概要

ここ最近、「パスワード不要」「より安全」というキーワードと共に、FIDO や WebAuthn などの最新の認証プロトコルを目にする機会が増えました。
一方、そこそこのユーザー規模を持つSNSでは複数サービスで使い回されているパスワードを利用したいわゆる「パスワードリスト攻撃」により特定の商品を宣伝するメッセージが送られるという事案が続いています。
このような状況下において「パスワードレスな世界」への変化は、これまでの「ソーシャルログイン」や「2段階(多要素)認証」が普及した時以上のインパクトをユーザーやプロダクトに与えることになりそうですし、期待も高まっていると思います。

では、このパスワードレスなユーザー認証時代を迎えるために我々サービス開発者は何をする必要があるのでしょうか。
「仕様策定に関わる企業やプロダクトがリファレンス実装などを進め、実用的になった段階で取り入れる」と口で言うのは簡単ですが特にユーザー認証に関わる機能改修はそれほど簡単な話ではないでしょう。
このセッションでは、現在のユーザー認証の現状を振り返るところから、最新の認証プロトコルの概要を紹介し、これから既存/新規サービスで利用するために開発者が何を考えて実践していくべきかをお話しします。

一番話したいこと

新しいユーザー認証方式が登場した時、サービス開発者は簡単にそれを取り入れられるのでしょうか?
特に記憶や知識(Something You Know)から持ち物(Something You Have)や本人の特長(Something You Are)による認証方式への移行に伴い、ユーザー登録/認証時に新たなUXが提供されることになります。
新規サービスはどのようにユーザー登録を始められるか、既に運用中のサービスはどのようにシステム的な移行を開始し、ユーザーを誘導していけば良いのでしょうか?

パスワードレスかどうかに関わらず、ユーザー認証を考える際にはユーザー登録のフローと有事の際のアカウントリカバリーのところまでセットで考える必要があります。
新規サービスの場合、ユーザー登録の際に新しい認証方式に必要な処理をなるべくユーザーの負担にならない方法で実装する必要があるでしょう。
既存サービスの場合はもっと複雑になり、

  • (1)新しい認証方式のサポート
  • (2)ユーザー自身による移行手段の提供
  • (3)パスワード認証の無効化

といった段階的な対応が必要になります。

また、記憶や知識による認証からの移行に伴い、ユーザー認証に必要な"デバイス"もしくは"生体"を「亡くした」「盗まれた」「壊れた」「壊れたのかもよくわからん」と言う状態になる可能性は無視できないものになるでしょう。
新規/既存どちらのサービスにおいても、アカウントリカバリーに対する意識は今まで以上に持つ必要があります。

予定している内容

本セッションの内容は以下のようになる予定です。

  • 現状の振り返り : パスワード認証、2段階認証、ソーシャルログイン など
  • 最新のパスワードレスな認証方式をチラ見せ
  • 設計/実装上の課題と対策などなど

本セッションにより、ユーザー認証周りの新たなベストプラクティスを共有しつつ、今後の変化に柔軟に対応できるようなサービス開発のお手伝いができればと思います。

その他

Qiita にこのテーマについての記事を書いています。
https://qiita.com/ritou/items/93ced12eb38613e048f8

Slides
Session Information
Confirmed confirmed
Material Level Beginner
Starts On 9/7/18, 12:30 PM
Room Multi-Purpose Room 2
Session Duration Regular Session (60min)
Spoken Language Japanese
Interpretation Unavailable
Slide Language Japanese