ラベル amr の投稿を表示しています。 すべての投稿を表示
ラベル amr の投稿を表示しています。 すべての投稿を表示

2023年6月29日木曜日

LINEログインの2要素認証の強制とamrクレーム

こんにちは、富士榮です。

ものすごく久しぶりに書いている気がしますが、本当は4月ごろに書きたかったネタです。


簡単にいうと、

「LINEログイン(Webログイン)で2要素認証を要求するかどうかLINEアプリ側で設定できるようになりました。」
という話です。

アナウンス(4月26日付け)

そして、今回は
「LINEログイン(Webログイン)で2要素認証を要求するかどうかを管理者がコンソール側で設定できるようになりました。」
というアナウンスがありました。

アナウンス(6月28日付け)

まぁ、ここまではいいんですが実際2要素認証をした場合としなかった場合でid_token(特にamr=Authentication Method Reference Values。要は認証手段)がどう変わるのか?がアプリケーション開発者側の関心事項だと思うので確認しました。

結果、「2要素認証しても何も値が変わらない」ので非常に残念なんですが一応記録として残しておきます。

設定方法(コンソールで強制する設定)

LINE開発者コンソールからLINEログインを開くと2要素認証を要求する、というトグルスイッチがあります。現在初期値はOFFですが7月下旬ごろから初期値がONになるそうです。

この設定を入れると、Webログインをする際に2要素認証(実際はスマホのLINEアプリ側で画面に表示される4桁の数字を打ち込む)が求められます。

ちなみに、LINEアプリ側でも設定ができるので、先のコンソール側の設定とアプリ側の設定によって挙動が変わります。

ドキュメントにはこのように関係性が整理されています。まぁ、違和感はありません。


で、amrはどうなるのか?

本題ですが、そもそもLINEログインで想定されている認証手段は
  • パスワード
  • QRコード
  • シングルサインオン
  • 自動ログイン(スマホのみ)
の4種類です。

それぞれについてamrの値が以下の通り設定されています。
  • パスワード:pwd
  • QRコード:lineqr
  • シングルサインオン:linesso
  • 自動ログイン(スマホのみ):lineautologin
今回は自動ログイン以外のWebシナリオで2要素認証を強制する機能なのでlineqrとかlinessoがIANAに登録されているのか?(いやされていない)という話は置いておいて、RFC8176的には「mfa」とか素敵な値が返ってくることを期待するんですが、結果何も変わらずpwd/lineqr/linesso(まぁSSOの場合は2要素認証は求められないって仕様なのでいいとして)がそのまま返ってきてしまいました、というオチです。

ということでLINEログイン(Webログイン)を組み込むアプリケーション開発者の皆さんはLINEログイン側で2要素認証が行われているかどうかを判別する手段は今のところ提供されていないので、センシティブな処理を行う場合は独自でセキュリティ強化の対策を行う必要がまだまだありそうです。

ちょっとLINEさんにはフィードバックしておいた方が良さそうかな、と思います。


2019年6月27日木曜日

[LINE Login]どうやってユーザが認証されたのかを判別する

こんにちは、富士榮です。

LINE Loginの最新の更新によりid_tokenにamr(Authentication Method References)が含まれるようになりました。このパラメータはユーザがどのような方式で認証されて来たのか?を判別するためのパラメータで、例えば多要素認証をしたのかどうかをアプリケーション側が把握して追加のセキュリティ対策をするかどうか判断したい、という場合に使われます。

LINEのニュース
https://developers.line.biz/ja/news/2019/06/

詳しくはこちらを、とあるので早速見てみると確かにid_tokenの構成の中にamrの記述が追加されています。

確かに最近LINEは様々なログイン方法をサポートしているのでアプリケーション側でどんな方式でログインして来たのかを把握したいケースも増えてくると思います。
※現状LINEは多要素認証などはサポートしていないので、例えばシングルサインオンでログインして来たら強制的に追加認証を要求する、などのシナリオくらいの使いみちだとは思いますが。今後FIDOのサポートなどが実現してくればもう少し使えると思います。

と、いうことでログインしてみました。
以下はQRを使った場合ですが、確かにamrにログイン方法が出て来ます。便利です!


先に書いた通り、まだまだ使いみちは限定的ですが、今後の多要素認証やFIDOのサポートに期待ですね。