[この記事は Laurence Moroney、デベロッパー アドボケート、 Alfonso Gómez Jordana、アソシエイト プロダクト マネージャーによる The Firebase Blog の記事 "Introducing Firebase Authentication" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。]
多くのデベロッパーにとって、アプリ用認証システムの構築は、税金を払うことのように感じるものです。どちらもわかりにくく、行わざるを得ないタスクで、うまく対応しないととんでもない結果になる可能性があります。税金を払うために会社を始める人は誰もいないように、すばらしいログイン システムを作るためだけにアプリを開発する人もいません。どちらも避けることのできない代償であるように見えます。
今なら、少なくとも「認証税」からは逃れることができます。Firebase Authenticationの力を借りれば、認証システムを完全に Firebase にアウトソースし、優れたアプリを構築することに集中できます。ユーザーが簡単にログインできるようになるだけでなく、独自に認証システムを実装する際に求められる、複雑な処理を理解する必要もなくなります。簡単に使い始めることができ、ユーザーができるだけ戸惑わないようなデザインとなっているユーザー エクスペリエンス(UX)コンポーネントもオプションで提供されています。また、オープン スタンダードを基にして構築されており、Google のインフラによって支えられています。
Firebase Authentication の実装は、比較的簡単に早く済みます。広く使われているログイン方法(Facebook、Google、Twitter、メールとパスワードなど)の中から提供したいものを Firebase コンソールから選択し、Firebase SDK をアプリに追加するだけで、アプリはRealtime Database、Firebase Storage、独自のカスタム バックエンドのいずれかと安全に接続できるようになります。すでに認証システムをお持ちの方は、Firebase Authentication を別の Firebase 機能へのブリッジとして使用することもできます。
Firebase Authentication にはオープンソース UI ライブラリも含まれており、ユーザーに優れたエクスペリエンスを提供する際に欠かせない、さまざまな認証フローを効率的に構築できます。Firebase Authentication の UI には、パスワードのリセット機能、アカウントのリンク機能、複数のログイン方法がある場合に認知的負荷を減らすログイン時のヒント機能などがすべて組み込まれています。こうしたフローは、Google や YouTube、Android でログインやサインアップのプロセスを最適化するための長年の UX リサーチに基づいています。Firebase Authentication には、多くのアプリでログイン コンバージョンを大幅に改善することにつながった Android の Smart Lock for Passwordsも含まれています。Firebase UI はオープンソースなので、インターフェースは完全にカスタマイズできます。どんなアプリに組み込んでも自然に見えます。必要に応じて、クライアント API を使って一から独自の UI を作成することもできます。
さらに、Firebase Authentication はオープン性とセキュリティを中核に据えて構築されており、セキュリティ、相互運用性、移植性を持つように設計された業界標準である OAuth 2.0 と OpenID Connect を活用しています。Firebase Authentication チームのメンバーは、このようなプロトコルの設計にも携わっており、その経験を基にして ID トークン、取り消し可能なセッション、ネイティブ アプリの偽装対策といった最新のセキュリティ手法を生み出しています。それによってアプリが使いやすくなるとともに、多くの一般的なセキュリティの問題も回避できます。また、コードは Google Security チームによる独立したレビューを受けており、サービスは Google のインフラで守られています。
Fabulousは、ログイン システムを強化するために Firebase Authentication を使用しています。デューク大学先進後知恵研究センターの研究から生まれたこのアプリは、不適切な行動を慎み、健康的な習慣を身に付けるための取り組みを始め、最終的にはユーザーが健全に幸福な暮らしを送ることを支援することを目的としています。
Fabulous のデベロッパーは、アップデートを最低限に抑え、エンドユーザーの負担を軽くする簡単な初回起動フローを実装したいと考えました。また、サインアップする前にアプリを試せるよう、匿名オプションも設けたいと考えました。さらに、複数のログイン方法をサポートし、ユーザーのログインフローとアプリのルック アンド フィールに一貫性を持たせるオプションも求めていました。
Chu-Day(Androidと iOSに対応)は、カップルが重要な日を忘れないようにするためのアプリケーションです。このアプリは、キャラクター中心のゲーム型ライフスタイル アプリケーションを開発している韓国企業 Malang Studioが作成しました。
一般的に、カウントダウンや記念日関係のアプリはユーザーのログインを要求しません。Malang Studio は、カップルをつないで特別な記念日をともにカウントダウンできるようにすることで、Chu-day を特別なアプリにして差別化を図りたいと考えました。しかしこれにはログイン機能が必要で、ユーザーの脱落を防ぐシームレスなログイン プロセスも必要でした。
Malang Studio は、Facebook や Google のログインを利用することで、 1 日で初回起動フローをアプリに組み込むことができました。サーバー側の開発やデータベースについて考える必要はなく、Firebase User Management Console を活用し、ログイン実装の開発やテスト、ユーザーの管理を行うこともできました。
Firebase Authentication の詳細については、デベロッパー サイトと Google I/O 2016 のセッション「Best practices for a great sign-in experience」をご覧ください。
Posted by Yoshifumi Yamaguchi - Developer Relations Team
Laurence Moroney
デベロッパー アドボケート多くのデベロッパーにとって、アプリ用認証システムの構築は、税金を払うことのように感じるものです。どちらもわかりにくく、行わざるを得ないタスクで、うまく対応しないととんでもない結果になる可能性があります。税金を払うために会社を始める人は誰もいないように、すばらしいログイン システムを作るためだけにアプリを開発する人もいません。どちらも避けることのできない代償であるように見えます。
今なら、少なくとも「認証税」からは逃れることができます。Firebase Authenticationの力を借りれば、認証システムを完全に Firebase にアウトソースし、優れたアプリを構築することに集中できます。ユーザーが簡単にログインできるようになるだけでなく、独自に認証システムを実装する際に求められる、複雑な処理を理解する必要もなくなります。簡単に使い始めることができ、ユーザーができるだけ戸惑わないようなデザインとなっているユーザー エクスペリエンス(UX)コンポーネントもオプションで提供されています。また、オープン スタンダードを基にして構築されており、Google のインフラによって支えられています。
Firebase Authentication の実装は、比較的簡単に早く済みます。広く使われているログイン方法(Facebook、Google、Twitter、メールとパスワードなど)の中から提供したいものを Firebase コンソールから選択し、Firebase SDK をアプリに追加するだけで、アプリはRealtime Database、Firebase Storage、独自のカスタム バックエンドのいずれかと安全に接続できるようになります。すでに認証システムをお持ちの方は、Firebase Authentication を別の Firebase 機能へのブリッジとして使用することもできます。
Firebase Authentication にはオープンソース UI ライブラリも含まれており、ユーザーに優れたエクスペリエンスを提供する際に欠かせない、さまざまな認証フローを効率的に構築できます。Firebase Authentication の UI には、パスワードのリセット機能、アカウントのリンク機能、複数のログイン方法がある場合に認知的負荷を減らすログイン時のヒント機能などがすべて組み込まれています。こうしたフローは、Google や YouTube、Android でログインやサインアップのプロセスを最適化するための長年の UX リサーチに基づいています。Firebase Authentication には、多くのアプリでログイン コンバージョンを大幅に改善することにつながった Android の Smart Lock for Passwordsも含まれています。Firebase UI はオープンソースなので、インターフェースは完全にカスタマイズできます。どんなアプリに組み込んでも自然に見えます。必要に応じて、クライアント API を使って一から独自の UI を作成することもできます。
さらに、Firebase Authentication はオープン性とセキュリティを中核に据えて構築されており、セキュリティ、相互運用性、移植性を持つように設計された業界標準である OAuth 2.0 と OpenID Connect を活用しています。Firebase Authentication チームのメンバーは、このようなプロトコルの設計にも携わっており、その経験を基にして ID トークン、取り消し可能なセッション、ネイティブ アプリの偽装対策といった最新のセキュリティ手法を生み出しています。それによってアプリが使いやすくなるとともに、多くの一般的なセキュリティの問題も回避できます。また、コードは Google Security チームによる独立したレビューを受けており、サービスは Google のインフラで守られています。
Fabulous がログインを短時間で実装するために Firebase Authentication を使用
Fabulousは、ログイン システムを強化するために Firebase Authentication を使用しています。デューク大学先進後知恵研究センターの研究から生まれたこのアプリは、不適切な行動を慎み、健康的な習慣を身に付けるための取り組みを始め、最終的にはユーザーが健全に幸福な暮らしを送ることを支援することを目的としています。
Fabulous のデベロッパーは、アップデートを最低限に抑え、エンドユーザーの負担を軽くする簡単な初回起動フローを実装したいと考えました。また、サインアップする前にアプリを試せるよう、匿名オプションも設けたいと考えました。さらに、複数のログイン方法をサポートし、ユーザーのログインフローとアプリのルック アンド フィールに一貫性を持たせるオプションも求めていました。
「たった半日で認証を実装することができました。以前は、独自のソリューションの作成には何週間もかかり、プロバイダの API に変更が発生するたびにアップデートしなければなりませんでした」- Amine Laadhari, Fabulous CTO
Malang Studio が Firebase Authentication で商品化までの時間を月単位で短縮
Chu-Day(Androidと iOSに対応)は、カップルが重要な日を忘れないようにするためのアプリケーションです。このアプリは、キャラクター中心のゲーム型ライフスタイル アプリケーションを開発している韓国企業 Malang Studioが作成しました。
一般的に、カウントダウンや記念日関係のアプリはユーザーのログインを要求しません。Malang Studio は、カップルをつないで特別な記念日をともにカウントダウンできるようにすることで、Chu-day を特別なアプリにして差別化を図りたいと考えました。しかしこれにはログイン機能が必要で、ユーザーの脱落を防ぐシームレスなログイン プロセスも必要でした。
Malang Studio は、Facebook や Google のログインを利用することで、 1 日で初回起動フローをアプリに組み込むことができました。サーバー側の開発やデータベースについて考える必要はなく、Firebase User Management Console を活用し、ログイン実装の開発やテスト、ユーザーの管理を行うこともできました。
「Firebase Authentication は最低限の設定しか必要としないので、短時間で簡単にソーシャル アカウントへのサインアップが実装できました。コンソールで提供されるユーザー管理機能もすばらしく、簡単に認証システムを実装できました」- Marc Yeongho Kim, Malang Studio CEO 兼 創立者
Firebase Authentication の詳細については、デベロッパー サイトと Google I/O 2016 のセッション「Best practices for a great sign-in experience」をご覧ください。
Posted by Yoshifumi Yamaguchi - Developer Relations Team