これらのドキュメントの内容は、法的助言を目的としたものではなく、また法的支援に代わるものでもありません。GDPR を理解し、遵守する最終的な責任はお客様にありますが、Auth0 は可能な範囲で GDPR 要件への対応を支援します。
概要
consentGivenプロパティ。値は true/false で、ユーザーが同意した場合は true、していない場合は false を示しますconsentTimestampプロパティ。ユーザーが同意した日時の Unix タイムスタンプを保持します
- 利用規約やプライバシーポリシーの内容を確認できる別ページへのリンクを表示するもの
- サインアップウィジェットにカスタムフィールドを追加するもので、データベース接続で利用できるもの
- ユーザーが同意を行える別ページにリダイレクトするもので、ソーシャル接続で利用できるもの
アプリケーションを設定する
-
Auth0 Dashboard > Applications > Applications に移動し、新しい アプリケーションを作成します。種類には
Single Web Page Applicationsを選択します。 -
設定 に移動し、Allowed Callback URLs に
http://localhost:3000を設定します。 この項目には、ユーザーの認証後に Auth0 がリダイレクトできる URL の一覧を指定します。サンプルアプリはhttp://localhost:3000で実行されるため、この値を設定します。 - Client Id と Domain の値をコピーします。これらは後で使用します。
- Auth0 Dashboard > Authentication > Database に移動し、新しい接続を作成します。Create DB Connection をクリックし、新しい接続名を設定してから、Save をクリックします。また、Auth0 Dashboard > Authentication > Social でソーシャル接続を有効にすることもできます (このチュートリアルでは Google ログインを有効にします) 。
- 接続の アプリケーション タブに移動し、新しく作成したアプリケーションが有効になっていることを確認します。
- JavaScript SPA サンプルをダウンロード。
オプション 1: Terms & Conditions へのリンクを表示する
- Auth0 Dashboard > Branding > Universal Login に移動します。
- Login ビューを選択し、Customize Login Page トグルを有効にします。
-
Default Templates ドロップダウンを見つけて、
Lockを選択します。コードブロックにはあらかじめ内容が入力されています。 -
consentGivenメタデータ用のフィールドを追加するには、mustAcceptTermsオプションを使用します。Terms & Conditions ページやプライバシーポリシーページへのリンクを含めるには、languageDictionaryオプションを使用します。詳しくは、Lock Configuration Options を参照してください。以下の例では、チェック項目の横にI agree to the terms of service and privacy policyという文言 (両方のページへのリンクを含む) を表示します。実際の表示を確認するには、Preview ビューを選択し、Lock が読み込まれたら Sign Up を選択します。 -
このチェック項目により、ユーザーはサインアップ前に規約へ同意する必要がありますが、メタデータは設定されません。ユーザーの選択を
consentGivenメタデータプロパティに保存するには、新しい Action を作成 します。Action にわかりやすい Name (たとえばSet consent flag upon signup) を入力し、Action をログインフローに追加するためLogin / Post Loginトリガーを選択してから、Create を選択します。 -
次の画面は Actions Code Editor です。以下の JavaScript コードをそこにコピーし、Save Draft を選択して変更を保存します。
このコードは、
consentGivenメタデータがまだ設定されていない場合にtrueを設定します (つまり、サインアップ後の初回ログインであることを意味します) 。 - Actions Code Editor のサイドバーから Test (再生アイコン) を選択し、Run を選択してコードをテストします。
- Action を本番環境で有効にする準備ができたら、Deploy を選択します。
オプション 2: データベース接続にカスタムフィールドを追加する
- Auth0 Dashboard > Branding > Universal Login に移動します。
- Login ビューを選択し、Customize Login Page トグルを有効にします。
-
Default Templates ドロップダウンを見つけて、
Lockを選択します。コードブロックにはあらかじめ内容が入力されます。 -
consentGivenメタデータ用のフィールドを追加するには、additionalSignUpFieldsオプションを使用します。詳しくは、Lock Configuration Options を参照してください。以下の例では、type をcheckbox(フラグとして使うため) に、label をI consent to data processingに、デフォルト値をcheckedに設定しています。 - 実際の表示を確認するには、Preview ビューを選択し、Lock の読み込み後に Sign Up を選択します。
consentGiven の値を確認し、追加の consentTimestamp メタデータに現在のタイムスタンプを設定するルールを使って、バックグラウンドでタイムスタンプを設定してください。
オプション 3: 別のページにリダイレクトする
-
新しい Action を作成します。Action にわかりやすい Name を入力し (たとえば
Redirect to consent form) 、Action をログインフローに追加するためLogin / Post Loginトリガーを選択してから、Create を選択します。 -
Actions Code Editor を開き、サイドバーの Secrets (キー) アイコンを選択します。キーと値のペアを作成し、同意フォームの URL を Secret として追加します。
- Key:
CONSENT_FORM_URL - Value:
your-consent-form-url.com(同意フォームにアクセスできる公開 URL を必ず指定してください。)
- Key:
-
次の JavaScript コードを Actions Code Editor にコピーし、Save Draft を選択して変更を保存します。
- Actions Code Editor のサイドバーで Test (再生アイコン) を選択し、Run を選択してコードをテストします。
- Action を有効化する準備ができたら、Deploy を選択します。
設定をテストする
-
アプリケーションをダウンロードしたフォルダーに移動し、実行します。
-
http://localhost:3000にアクセスします。Login をクリックします。Lock が表示されたら、Sign Up をクリックします。 ログインページは、デフォルトではYOUR_DOMAIN/loginで提供されます。独自のドメインを使用する方法については、カスタムドメイン を参照してください。 - 1 つ目の実装オプションに従った場合は、利用規約とプライバシーポリシーへの同意用フラグが表示されます。このフラグをチェックするまで、Sign up ボタンは無効のままであることに注意してください。リンクをたどって、正しく機能することを確認してください。メールアドレスとパスワードを設定し、規約に同意して Sign Up をクリックします。あるいは、ソーシャル接続を使用する場合は、規約に同意して Sign Up with Google を選択します。
-
2 つ目の実装オプションに従った場合は、追加した新しいカスタムフィールドが表示されます。メールアドレスとパスワードを設定し、
I consent to data processingフラグはチェックしたままにします。Sign Up をクリックします。 -
3 つ目の実装オプションに従った場合は、Sign Up with Google を選択します。同意フォームに移動するので、I agree フラグをチェックして Submit をクリックします。
I agree フラグをチェックせずに Submit をクリックすると、
Unauthorized. Check the console for details.というポップアップエラーが表示されます。コンソールには次の JSON が表示されます。なお、ユーザーは作成されますが、ログインすることはできません。ログインしようとすると、再度同意を求められます。 - Auth0 Dashboard > User Management > Users に移動し、新しいユーザーを検索します。
-
User Details に移動し、メタデータ セクションまでスクロールします。user_metadata テキストエリアには、次の内容が表示されるはずです。