ウェブサービスを作る上で欠かせないログイン機能、事業のコアではないことが多いため、なるべくコストをかけずに実装したいと考えている方が多いのではないでしょうか。
ですが、ログイン周りの仕組みをまだPoCフェーズだからといって適当に作ってしまうと、ここから一気に成長というフェーズで重い足かせになってしまいます。
というのも、ログイン周りのしくみは日々進化しており、とても一人のプログラマが片手間にできるものではないからです。現在のベストプラクティスは数年のバッドプラクティスになってしまう可能性もあります。例えば、数年前まではウェブサービスのログインにパスワードを入力するのは当たり前でしたが、今はログインしようとすると携帯に通知が来てそれをクリックするだけでログインできる方式が普及しています。こういった体験が当たり前になってしまうと、古いやり方をしているサービスに対し、ユーザーは不満を感じてしまうものです。
また、コンシューマー向けのサービスにおいては、突如ユーザー数が数倍〜数百倍になるということがあります。認証というデジタルサービスの根幹をなす部分が不安定にならない仕組みを用意するのはスタートアプにとって大きな投資です。
そのニーズに応えるのが IDaaS で、複雑なログイン周りの機能をまとめてサービスとして提供しています。
具体例を挙げると、例えば作りたいサービスがマルチテナント型SaaSだとした場合、以下のようなログイン周りの機能を作る必要がでてくるでしょう:
– 組織の追加
– ユーザーの追加
– 組織にユーザーの招待
– 組織ごとの認証方法変更
– ユーザーを組織の管理者に変更
– 組織が利用できる機能の追加
– etc…
こういった機能のコアを提供してくれるのが IDaaS です。
では IDaaS を使う側はなにをすればいいかというと、IDaaS の提供するAPIやSDKを利用し独自のログイン画面やセルフサインアップフローを作ることになります。
ここでは簡単にウェブサービスにAuth0を導入する手順をご紹介します。
目次
ステップ 1. Auth0にアカウントを登録する
以下のURLから登録できます。
https://auth0.com/signup
登録が完了すると専用のAuth0テナントが作られます。
Auth0のテナントは、開発環境、本番環境のような単位で作られるものという理解で大丈夫です。
多くのスタートアップの場合、本番環境用テナントが1つあれば十分でしょう。
気になる料金形態ですが、Auth0ではテナント単位に料金が発生します(※)。最小限の機能であれば無料ですが、ユーザー数や使いたい機能によって有料プランを購入する必要があります。開発規模が大きくなったときには、エンタープライズプランのご契約をご検討することをおすすめします。
※ エンタープライズプランの場合には複数テナントまとめた料金形態になりますので料金の最適化が可能になります。エンタープライズプランへの切り替えは弊社担当者までご連絡ください。
詳細な料金プランは以下のURLから確認できます。
https://auth0.com/pricing
ステップ 2. アプリケーションを追加する
アプリケーションのタイプに応じて適切な初期値の設定されたアプリケーションが作成されます。
ステップ 3. アプリケーションを実装する
アプリケーションのテンプレートが用意されていますので、あとは手順に従い実装します。
以下のように主要ライブラリに特化した手順を選ぶことができます。
Sigle-Page Appを選択した場合の例)
この後は詳細な手順や説明がでてきますので、そのとおりに進めばローカル環境でログイン画面が表示できるようになります。
ここまできたら、自前アプリケーションへのログイン画面の追加方法は理解できているはずです。
ステップ 4. ログイン画面をカスタマイズする
メニュー > “Branding” > “Universal Login” からロゴや見た目を変えられます。
また、Mangement API 経由でログイン画面の文章もカスタマイズ可能です。
これでプロダクションレディーなログイン画面の完成です。
実際に開発を進めていくと、こんなシンプルにはいかないケースが多々でてきます。
現実の要件は、IDaaS側だけで完結するものではなくサービス全体を含めて考えなければなりません。
TC3のソリューションは、紹介したようなID管理のみならず、より複雑な要件をベストプラクティスに沿った形でシステムに落とし込み、事業のスケールアップを見越した要件整理、UIUXデザイン、実装、運用を得意としております。
Written by Yuki Sanada