2週間前、Apple社が新しい認証機能”Sign In with Apple”のリリースをアナウンスしました。Apple社によると、Sign In with AppleはAppleユーザーにメールアドレスを非表示にするような高度なプライバシー設定や、Appleデバイスやウェブをまたいだスムーズな体験など、いくつかのメリットをもたらします。このアナウンスに関して様々な反応があり、特にアプリ開発者からはサードパーティー(Google、Twitter、Facebookなど)の認証を提供しているApp Store上のアプリは、Sign In with Appleのサポートが必須になるのではないかという懸念の声があがりました。標準プロトコルに完全に準拠していない可能性がある新しいIDプロバイダーを実装することは簡単ではないからです。

このニュースについて弊社ブログで最初に取り上げた際に、Auth0のようなIDマネジメントサービスを利用することで、新しいIDプロパイダーを統合するために必要な労力を大幅に削減できますと言及させていただきましたが、その後フォローアップ記事では、Auth0のCustom Social Connections機能を活用することにより、お客様のアプリケーションコードを一行も変えることなく、シンプルなスクリプトを弊社サーバー側で実行するだけでSign In with Appleを統合できることを示しました。

改めまして、本日Sign In with Appleの統合サポートベータ版の提供開始をアナウンスできることを非常に嬉しく思います。これまで他の記事でご紹介してきた実装方法よりもはるかに簡単になったSign In with Appleの統合サポートベータ版を、お客様のアプリケーションで体験いただけます。Sign In with Appleの実装のためにApple Developerアカウントをお作りいただく必要はありません — ただスイッチをフリップするだけです。ぜひお試しください!

Sign In with Appleをアプリに追加する

すでにAuth0,をお使いの方は、とても簡単にSign In with Appleを追加することができます。以下設定方法です。

  • 最も簡単な設定方法は、 Auth0のダッシュボードで”Universal Login”を選択し、”New”をクリックします。
    • Classic Universal Loginをご利用の場合、”Login”タブを選択し、"Customize Login Page"をオンにします。次にお客様のHTML内からLockのスクリプトを実行する行をお探しいただき、Lockのバージョン 11.16を参照するようにアップデートします。
      <script src="https://cdn.auth0.com/js/lock/11.16/lock.min.js"></script>
  • 変更を保存し、“Connections” > “Social”と選択します: Auth0 Dashboard - Social Connections with Sign In with Apple included
  • Appleアイコンをクリックし、 Sign In with Appleのコネクションをオンにします。Auth0の開発者クレデンシャルですぐにテストするには、フィールドを空白のままにします。Apple Developerアカウントでより詳細にテストするには、以下のステップに従ってください。
    • Client IDは、Apple Developerポータル内でServices IDの登録完了後にお客様が選択された識別子です。
    • 自身のドメインがサービス設定の一部としてAppleによって確認済みである必要があります。
    • Client Secret Signing KeyはApple Developerポータルで新しいキーを登録する際にダウンロードすることができます。そのKey IDはこの手順後利用可能となります。
    • Team IDこちらから確認できます。 Auth0 Dashboard Sign In with Apple provider settings
  • “Save”をクリックし、ウインドウから出る前に“Applications”タブをクリックし、どのAuth0アプリでSign In with Appleのオプションを利用するかを選択します。”Save”をもう一度クリックします。
  • アプリのログインページへいき、変更が反映されているかを確認します。 Auth0 Sign In with Apple identity provider Login form preview

注釈: Apple DeveloperアカウントでSign In with Appleをテストするにはカスタムドメインが必須です。Appleとドメインのオーナーシップに関して確認が必要になります。

Appleからのベータ機能はまだまだ初期の段階で、現在の実装はいくつか必要な機能が欠けてる状態です。このブログを投稿している時点では、Appleはサイン済みのユーザーの名前とメールアドレスを返しませんし、完全版リリースまでにいくつか変更がある可能性があるという点も認識する必要があります。このベータ版でお見せしている統合レベルが常に利用可能になることを保証ではできませんが、Sign In with Appleがプロダクション利用できるようになったときに皆さんの環境も整っているように、弊社では必要な変更を追い、できることはすべて行います。

Auth0で始めるには

もしまだAuth0をご利用でない場合でも、非常に簡単に始めることができます。

  • Auth0アカウントへ登録します。
  • QuickStartを活用し、ご自身のアプリケーションにあったものを選択します。もしくは、一からつくり、すぐに安全なアプリケーションをデプロイします。
  • “Connections” > “Social”をクリック、Sign In with Appleを追加し、Auth0の開発者クレデンシャルでテストします。

What’s Next

Sign In with Appleは、スイッチをフリップしてお客様のアプリケーションに追加できるIDプロバイダーの一つに過ぎません。また、ソーシャルログイン機能の追加も同様に、Auth0の数ある機能のうちの一つです。私たちはSign In with Appleに関するApple社からの要件事項について引き続き学び理解を深め、私たちが提供しているビルトイン統合のサポートをメンテナンスしていきますし、どのようにAuth0の先進的な機能(アカウント連携など)がお客様のサービスユーザーに最適なサインインエクスペリエンスを提供することをご支援しているかシェアしていきたいと思います。