概要

認証サービスのiDaaSは普及してきています。ログイン認証が複雑化しており、最近ではスマートフォンのみならずIoTと言った様々な機器との連携が必要になりました。
そこで、今回はiDaaSのFirebase AuthenticationとAuth0の比較をしていきます。
目次
認証サービスiDaaSについて思うこと


認証サービスiDaaSについて
iDaaSとは
IDaaSは「Identity as a Service」の略です。読み方は「アイディーアース」または「アイダース」と呼びます。シングルサインオン(SSO)等のID認証をクラウド経由で提供するサービスです。最近はWebサービスやスマートフォン以外の機器が増えてきました。それぞれ、ID認証する必要が出てきており複雑化してきています。
代表的な認証サービス
よく使われている認証サービスです。
- Auth0
- Firebase Authentication
- Amazon Cognito
認証サービスiDaaSの比較対象
比較対象を3種類にするとボリュームが多くなるので今回はAmazon Cognitoは省略します。
Firebase Authentication
Firebase Authenticationはほとんどのアプリで必要となるユーザー認証を簡単に実装することができます。パスワード認証や、Google、Facebook、TwitterなどのフェデレーションIDプロバイダを使用した認証を行うことができます。また、電話認証もできます。
利用方法はFirebaseUI を使用するか、Firebase Authentication SDKを使ってログイン方法を手動でアプリに統合することで、ユーザーをFirebaseアプリにログインさせることができます。
Auth0
Firebase Authenticationと穂同じ機能で、モバイルアプリや Web アプリに認証基盤を提供し、専用の SDK を利用して新規登録やログインなどといった API を呼び出すことが出来ます。
ID管理をDBで行う
ID管理をDBで実施するのはセキュリティ設計を厳しく作成すれば問題ありません。近頃のセキュリティレベルが高いので設計段階で難しいです。
iDaaSを利用すればセキュリティはしっかりしているので検討不要になるので設計と実装の手間が大幅に減らせます。
現在と過去のログイン機能比較
過去のログイン
データベースのUserテーブルにログインIDとパスワード、その他情報が含まれており、ログインIDとパスワードが一致していれば認証ということをやっています。まだ、大多数のシステムがこの方式を採用しています。
もちろんJWTを使った認証やSNS認証といった技術は多少進んでいます。
現在のログイン
最近の認証はWebやスマートフォンのみではなくIoTも認証する必要が出てきて認証だけでも複雑になってきています。認証機能を実装するのも管理するのも時間が必要になってきます。
そこで高いセキュリティを確保しているFirebase Authentication、Auth0を利用することでセキュリティを確保しますし様々なデバイスの認証にも対応することができるので事業に集中することができます。
認証サービスiDaaSの今後の発展
大規模システムには必要不可欠な技術です。小規模システムでは今まで通りの認証で問題ありませんがITが進化してきているので今後必要になってきます。
その他セキュリティ用語集
Idp |
Identity Providerの略称です。SAML認証での認証情報の提供者のことです。 |
JWT |
JSON Web Tokenの略称です。属性情報をJSONデータ構造で表現したトークンの仕様です。 |
SAML |
Security Assertion Markup Languageの略称であり、OASISによって策定された異なるインターネットドメイン間でユーザー認証を行うための XML をベースにした標準規格です。 |
まとめ
今後は大規模のプロジェクトだけでなく中小規模のシステム開発でも必要となってくる可能性があります。新しい技術に興味がある方はフリーランスエンジニアは企業常駐の案件に参加すると挑戦できる可能性があります。
最近の技術であるマイクロサービスアーキテクチャやクリーンアーキテクチャと言った新しい開発手法を挑戦することができます。
フォスターフリーランス 自由な仕事を選び、自由な働き方のフリーランスITエンジニアの案件
FREE-DA フリーランスITエンジニア・クリエイターのための求人・案件情報・仕事サイト