メインコンテンツへスキップ
ユーザーがどのようにサインアップするかは、早い段階で決めておくべき重要な事項です。ここでの判断は、以降に必要となる多くの判断に影響します。Auth0 では、ユーザーをシステムに追加する方法には一般的ないくつかのパターンがあることがわかっており、ワークフロー設計を検討する際に留意すべき点もあります。
Auth0 はさまざまなワークフローをサポートしていますが、サインアップには Auth0 の Universal Login を使用する Web ベースのワークフローが、機能性とセキュリティの両面で最適であるため、業界および Auth0 のベストプラクティスとされています。
Auth0 では、複数の IDプロバイダー を通じたユーザーのサインアップをサポートしています。サインアップ時に、Auth0 はユーザープロファイルをプロビジョニングし、ユーザーのアカウント情報を含めます。機能とワークフローを検討する際には、いくつか考慮すべき点があります。
  • Auth0 を IDストアとして使用すべきですか?
  • 独自の (レガシー) IDストアを Auth0 と組み合わせて使用できますか?
  • IDストアから Auth0 にユーザー ID をどのように移行しますか?
  • ユーザーは Google や Facebook などの既存のソーシャルアカウントを使ってサインアップできますか?
Auth0 には、ユーザー認証情報を安全に保存するための ID ストレージ機能が標準で用意されています。詳細は セルフサインアップ を参照してください。すでにレガシー IDストアがあり、その管理を切り離したい場合は、ユーザー移行 機能により、いくつかの方法を利用できます。 一方、レガシー IDストアを維持しなければならない場合もあります。たとえば、まだ移行の準備ができていないアプリケーションや、移行できないアプリケーションがある場合です。そのような場合は、IDストアプロキシ 機能を使用できます。また、顧客が「独自の ID を持ち込む」ことを許可するのも魅力的な選択肢です。多くの顧客は当初これを採用しませんが、ソーシャルサインアップ 機能を使って提供できます。

ユーザー移行

Auth0 は、ユーザープロファイルをホストするだけでなく、独自のレガシー ID ストアをプロキシしつつ、安全な Auth0 ホスト型の代替を提供することもできます。これらはいずれも、Auth0 のデータベース接続を使用してサポートされます。Auth0 をレガシー ID ストアの代替として使用する場合は、ユーザーを移行する方法として、一括移行ですべてを一度に移行することも、自動移行で段階的に移行することもできます。
多くのお客様は、ユーザー移行に 2 段階のアプローチを採用しています。まず自動移行を使用して可能な限り多くのユーザーを移行し、その後、残ったユーザーに対して一括移行を使用します。詳細については、ユーザー移行シナリオを参照してください。
自動移行を推奨します。ユーザーを 1 人ずつ移行でき、ほとんどの場合は既存のパスワードも保持できるためです。一括移行では、ごく単純なケースを除き、User Import/Export extensionではなく、Management APIの使用を推奨します。のほうが、より高い柔軟性と制御性を提供できるためです。 一括移行では通常、移行の完了後にユーザーが 1 度パスワードをリセットする必要があります。ただし、レガシー ID ストア内のパスワードが bcrypt を使用してハッシュ化された状態で保存されている場合 (または bcrypt 形式で生成できる場合) は例外です。この場合、bcrypt アルゴリズムと使用している salt ラウンド数によっては、一括移行を使用して、プロセスの一環としてユーザーのパスワードを保持できる可能性があります。詳細については、Bulk Import Database Schema Examplesを参照してください。
Management API の呼び出しは、Auth0 のレート制限ポリシーの対象です。この点を考慮する必要があります。そのため、Auth0 では通常、API を直接呼び出すのではなく、開発環境に適したAuth0 SDKを使用することを推奨しています。

IDストアのプロキシ

Auth0 の Database Connection タイプは、既存の (レガシー) IDストアをプロキシするように設定することもできます。独自のレガシーストアで管理しているユーザーアイデンティティを維持する必要がある場合、たとえば Auth0 に移行できない業務上重要なアプリケーションが 1 つ以上あり、それらが引き続きこれらのアイデンティティにアクセスする必要がある場合でも、Auth0 と簡単に統合できます。詳細については、Authenticate Users Using Your Database を参照してください。

セルフサインアップ

セルフサインアップでは、サインアップ処理中に新規ユーザーから収集したユーザー ID、パスワード、 (任意の) ユーザー名などの識別情報を保存するために、Auth0 のデータベース接続を利用します。ユーザー名の最小文字数パスワードの強度と複雑さなどを定めるデータベース接続ポリシーは、 で設定できます。
Auth0 のUniversal LoginLock などの Auth0 ウィジェットは、データベース接続と統合されており、すぐに利用できる包括的なサインアップ用ユーザーインターフェイス機能を提供します。これらの UI コンポーネントは完全にリアクティブで、豊富な設定機能と幅広いカスタマイズにより、ユーザーのセルフサインアップだけでなくログイン機能も実装できます。

ソーシャルサインアップ

ソーシャルサインアップは、ソーシャル認証によるサインインと同じ意味です。ここでは 厳密に言えば 両者に違いはなく、ユーザーのプロフィールは初回のソーシャルログイン時に自動的に作成されます。

プロジェクト計画ガイド

推奨戦略の詳細を確認できるよう、ダウンロードして参照可能な PDF 形式の計画ガイドを提供しています。 B2C IAM プロジェクト計画ガイド