見出し画像

アナタはアナタ自身ということを証明できますか?【本人認証】についてのおさらい。


はじめに

フクロウラボの情報システム担当をしております、高島です。
WebサイトやSaaS、PCのログインなど、サービスを利用するにあたって「本人認証」を行うことは当然の作業となっていると考えます。
今回は、その「本人認証」について少し話を掘り下げてみたいと思います。

本人認証といえば「パスワード」

「本人認証」を行うとなった場合、真っ先に思いつくのが、ID+パスワードの組み合わせかと思います。
とくにメールアドレスがID、パスワードは個人が設定したものという構成が多いのではないでしょうか。

ただ、パスワードの管理って正直めんどうですよね。

情報セキュリティ的な推奨事項としては
一意のパスワード:各サービスごとに異なるパスワードを設定することが重要。同じパスワードを複数のサービスで共有すると、1つのサービスが侵害された際に他のサービスも危険にさらされる可能性がある。
長さと複雑さ:十分な長さ(通常は8文字以上)と複雑さ(大文字、小文字、数字、特殊文字の組み合わせ)を持つパスワードを選択すること。
定期的な変更:定期的にパスワードを変更すること(通常、3〜6ヶ月ごとにパスワードを変更)

があげられますが、パスワードマネージャーを利用してない限り、並の人間の脳では管理しきれないと思います…

そんなわけで、覚えやすいパスワードを、複数のサービスで使い回ししているケースが多いのではないのでしょうか。

パスワードだけでは危ない!じゃあ「2段階認証」だ!

2段階認証とはWebサイトやSaaSなどにログインする際、2回に渡る確認や操作が必要な仕組みのことです。
認証回数を複数回設定することにより、セキュリティ対策を強化するという狙いがあります。
2段階認証が一躍有名になったのは2019年7月4日のセブン&アイの緊急記者会見でした。

「事前にセキュリティー審査を繰り返し、脆弱性は指摘されなかった」と説明していたが、この時点で「7iD」に2段階認証やパスワード変更の通知機能が導入されていないことなど、認証システムに問題があると指摘されており、記者から2段階認証に関する質問を受けた際にも、それに社長は答えられなかった

Wikipedia

そもそもお金を扱う決済サービスのセキュリティにおいてパスワードのみの認証システムだったことが問題ですが、社長が2段階認証について知らないということで余計に炎上してしまいましたね…

2段階認証は安全なのか?

ではその2段階認証はセキュリティ対策として十分なのでしょうか。
ここでいう認証が
①ID+パスワード
②生年月日や合言葉

という組み合わせで行われていた場合、答えは「No」です。

しかし、
①ID+パスワード
②指紋認証

という組み合わせで行われていた場合、答えは「Yes」となります。

なぜでしょうか。その鍵は認証の要素にあります。
前者はユーザーが記憶している「知識情報」による認証の繰り返しですが、
後者はユーザーが記憶している「知識情報」と「生体情報」の組み合わせによる認証であり、必然的に2段階認証となります。※これを多要素認証と言います
つまりは認証の回数(=段階)ではなく、認証の要素が複数あるかが重要なのです。

多要素認証になる要素と身近な実装例

前述したように、認証の要素が複数あるか否かで2段階認証なのか、多要素認証なのかに分類されます。
認証の要素にはおおまかに分けて3種類あります。
①知識情報
 └本人しか知り得ない情報のこと。例)パスワード、秘密の質問と答え
②所持情報
 └本人だけが所有している情報のこと。例)本人名義のクレジットカードや運転免許証、本人のスマホに直接発行されるワンタイムパスワードなど
③生体情報
 └一人一人違う身体の特徴に関する情報。例)顔、虹彩、声紋、指紋

この要素を組み合わせた認証を多段階行うことで、「多要素認証」となります。
同一の要素による認証を多段階行うことでは「2段階認証」となってしまいます。

多要素認証というとユーザー負荷かかり、めんどうな作業のイメージがある方もいらっしゃるかと思います。
私も最近までそう感じていました。
しかし、上手な多要素認証を実現している例を知ってから、いかにして実装するかでユーザービリティとセキュリティの両方を担保できるのだなと考えるようになりました。

上手に多要素認証を実現している例で、皆さんに馴染みがあるものが
「銀行ATM」です。
ここでの認証では、
①本人だけが所有している本人名義の「キャッシュカード」(所持情報)
②本人しか知り得ない4桁の「PINコード」(知識情報)
を組み合わせているため多要素認証となります。

この認証に対して、利便性にストレスを感じている方は少ないのではないでしょうか。

弊社が取り組んでいるアイデンティティ管理の際の認証方法

昨今SaaSの普及が著しく、サービスをいかにうまく自社業務フローに組み込むことができるかが企業競争を生き抜く上でも重要となっています。
弊社も多くのSaaSを利用しており、その認証の強化を図っております。
そのためのソリューションとして「IDaaS」を導入しました。

IDaaSとは、複数のサービス(Webサービスやアプリケーションなど)に登録されているIDやパスワードを一元的に管理できるクラウドサービスを指します。インターネット上でサービスを提供する「SaaS」の一種であり、日本語では「クラウド型ID管理サービス」と翻訳可能です

NTTコミュニケーションズ

複数サービスのログインを一元管理するため、このIDaaSに対する認証は強固である必要があります。
もちろん、多要素認証を導入しましたが、当初は
①ID+パスワード
②スマホに対してのプッシュ通知(orワンタイムパスワード)
による多要素認証でした。
この方式では、ユーザーは認証のたびにPCでIDとパスワードを入力しその後、スマートフォンにおいてプッシュ通知かワンタイムパスワードを受け取り認証するという作業工数がかかってしまっていました。

これでは日々の業務における認証動作に対してストレスを感じてしまいますよね…
そこで2024年の初めから実装した認証方式では、
①PC端末に認証アプリをインストールさせ起動する
②その認証アプリにおいて、生体認証を行う

①においては端末を使用していることによる「所持情報」が担保され、
②においてはWindowsであれば顔認証のWindows Hello/Macであれば指紋認証のTouchIDを行い生体認証が担保されます。

これにより、ユーザーは単独の端末操作により多要素認証を行うことができ、さらにはパスワードの入力作業から解放されることになりました!

こうして従業員の皆様の認証作業に負荷をかけることなく、セキュリティの強化をはかることができました。

さいごに

いかがでしたでしょうか。
サービスが「アナタをアナタ自身と認識する」本人認証においてはIDとパスワードだけでは安全とは言えません。
また、2段階認証と多要素認証は混同しやすいものでしたね。
パスワードのみの認証を、より強固にしようとすると多要素認証が必要となりますが、ユーザービリティが下がってしまうというデメリットもあります。
しかしながら、要素の組み合わせと認証方法をどのように組み合わせるかを創意工夫することでユーザービリティを損なわずに実装できるということを実例を挙げてお話しさせていただきました。

普段当たり前のように行なっている本人確認の認証について、少しでも参考になれば幸甚です!
以上、お読みいただきありがとうございました!


いいなと思ったら応援しよう!