WWDC
サインイン
Sign in with Apple

今すぐ知りたい「Sign in with Apple」の15の疑問にお答えします

次の記事

Microsoft Power PlatformのアップデートはAIをビジネスユーザーに届ける

米国時間の6月3日に開かれたApple(アップル)のWWDCで、セキュリティー関連の最大のニュースと言えば、他社のサインインシステムが使われるすべての場面でアップルの新しいシングルサインオン・ソリューション「Sign in with Apple」(アップルでサインイン)を使うよう、アプリ開発者に実装を求めたことだ。

そうしたシナリオで「Sign in with Apple」ボタンの提示を要求するという同社の判断は、特に米司法省がアップルを独占禁止法違反と見るか否かの瀬戸際にある今はリスクが高いように思われるが、今回の判断は、よりプライバシーが守られる選択をユーザーに与えたいというアップルの姿勢によるものだ。

セキュリティー上の観点からすれば、セキュリティープライバシーに関する大きな不祥事で苦しんだ過去がある他のソーシャルログインシステムと比較して、ユーザーにとっても開発者にとっても、よりよいオプションをアップルは提供した。

アップルのシステムには、iOSアプリの開発者に恩恵をもたらす機能も数多くある。例えば、2段階認証のサポート、不正検出、ワンタッチのスムーズなアプリの登録方法などだ。

ユーザーにとれば、登録やログインが簡単に行えるという点では他社のサービスと変わりないのだが、これには、そのアプリが自分の情報を信頼できない相手に渡すことがないという安心感がある。

またユーザーは、アプリ開発者にメールアドレスを教えるか否かを選択できる。

ユーザーが、自分の本当のメールアドレスは教えないことを選択すると、アップルはそのアプリが使えるランダムな(しかし本当に使える認証された)メールアドレスを生成し、アプリ側から発信された電子メールは、そのアドレスにルーティングされるようになる。ユーザーは、たとえばスパムが来始めたときなど、いつでもそのアドレスを無効にできる。

使い捨てのメールアドレスの機能は新しいものではない。例えばGmailでも、アドレスに「+」や「.」を追加すれば、怪しいアドレスからのメールをフィルターして削除できる。その他の電子メールサービスでも、同様の機能を提供している。

とは言え、アプリにサインインするためのプライベートなメールアドレスの生成だけでなく、そのアドレスでのメールの配信を止めたいときはいつでも無効にできることを大手ハイテク企業が許すというのは、これが初めてだ。

しかし、その技術の先進性とは裏腹に、このニュースは、新しい「Sign in with Apple」ボタンが、現実に、詳細なレベルでどのように働くのかという疑問を大勢の人たちに抱かせた。私たちは、そうした火急の、そして多くの人に関係する質問に、ここで答えようと思う。ただし、このシステムが実際に稼働するまで、またはApp Storeでの販売許可を得るためにアプリが絶対に外してはならないルールを記したApp Reviewガイドラインをアップルが更新するまでは、お答えできない疑問が数多く残されていることをご了承願いたい。

1.ユーザーがSign in with Appleを選択したとき、デベロッパにはどのような情報が届くのか?

デベロッパが受け取るのは、Apple IDに関連付けられているユーザーの名前、ユーザーが認証したメールアドレス(または、プライバシー保護の目的でルーティングされるランダムなメールアドレス)、そして、アプリ内システムにユーザーのアカウント設定を可能にする一意の安定した識別子のみ。

個人情報を宝の山だとしてアプリ間でやりとりするFacebookとは違い、アップルのサインインには、アクセスを許可する情報を選択せよとユーザーに迫る同意事項やダイヤログボックスはない(アップルは、誕生日、出身地、Facebookの「いいね」、友だちのリスト、その他の個人情報を収集しないため、上記以外に他と共有できる情報を始めから持たない)。

2.新しいiPhoneを手に入れたときやiPadにアプリを引き継いで使いたいときは、登録し直さないといけないのか?

いいえ。エンドユーザーの場合、Sign in with Appleオプションは、FacebookやGoogleでのサインインと同じぐらい簡単にできる。アップル製デバイスを切り替えても、1回タップするだけでアプリが使えるようになる。

3.Apple Watch、Apple TV、MacでもSign in with Appleは使えるのか?

Sign in with Appleは、すべてのアップル製デバイス、つまりiOSとiPadOSデバイス(iPhone、iPad、iPod touch)、Mac、Apple TV、Apple Watchだ。

4)Androidでは?ウェブアプリでは?いろいろな場所でアプリを使うのに!

それほどシームレスではないが、対策はある。

アップルのデバイス(例えばiPad)で、あるアプリに登録したとする。そのアプリを、Andorid端末などアップル以外のデバイスで使いたいときは、Webviewに手続きが送られる。

Webview上にSign in with Appleのログイン画面が表示されるので、Apple IDとパスワードを入力すればサインインできる。Sign in with Appleログインのオプションを提示しなければならないウェブアプリでも、同じ方法がとられる。このオプションはJavaScriptベースなので、「Sign in with Apple JS」と呼ばれる。

(アップルは、Android開発者向けのネイティブなSDKは提供しない。正直言って近いうちに提供される気配もない)

5.Sign in with Appleをタップしたとき、すでにそのアプリにメールアドレスを使ってサインインしていたのを忘れていた場合は、どうなる?

Sign in with AppleはiCloudのキーチェーンに統合されるので、アプリはその旨を警告し、現在のメールアドレスでログインするかどうかを尋ねる。アプリは、Apple IDに関連付けられているメールアドレスとの照合ではなく、ドメイン(たとえばUberなど)でその確認を行う。そのアカウントのサインインに別のアドレスを使っている可能性があるからだ。

6.ランダムなメールアドレスを要求すると、アップルは私のメールを読めるようになってしまうのか?

いいえ。ランダムなメールアドレスを希望する人に、アップルはプライベートなメール転送サービスを提供する。つまり、あなたの個人的な受信ボックスにメールをルーティングするだけだ。ホスティングをするわけではない。

アプリ開発者は、ユーザーとの連絡に使用するメールドメインをアップルに登録する必要がある。登録できるのは、ドメインと連絡用メールアドレス10件までだ。

7.Sign in with Appleは、どのようにして2ファクタ認証を行うのか?

アップルのデバイスでは、ユーザー名とパスワードの組み合わせに加えて、タッチIDまたはフェイスIDが2つめの保護レイヤーとなる。

アップル以外のデバイスでは、信頼できるデバイスまたは電話番号にアップルから6桁のコードが送られる。

8.Sign in with Appleでは、ボットでないことをどうやって証明するのか?

アップルのアプリ開発者は、ユーザーが本物の人間かそうでないかを区別するアップルの強力な不正防止技術が使える。これは、iTunesなどのAppl独自のサービスのために何年も前に開発された技術だ。

システムは、デバイス上の機械学習やその他の情報を使い、ユーザーが「本物」だと確認されたときに開発者向けの信号を生成する。これは、いわばイエスかノーかだけを知らせる単純なビット情報だ。

しかし「ノー」は、ユーザーが確実にボットだと断言するものではない。新規のユーザーや新規のデバイスの可能性もある。だが開発者は、たとえばアプリの機能へのアクセスを許可する場合や独自の不正防止対策を施す場合などに、この信号を参考にできる。

9.アプリは、いつSign in with Appleを提示すればよいのか?

FacebookのログインやGoogleなど、サードパーティーのサインイン・オプションが提示される場面では必ずこのボタンを提示するようアップルは求めている。ちなみにアップルは、それらを「ソーシャル」ログインとは呼んでいない。「サードパーティー」と呼んでいる。そのほうが範囲が広いからだ。

この要求は高圧的に感じられるため、ショックを覚える人もいる。

しかしアップルは、ユーザーにはプライベートな選択肢が与えられるべきだと信じている。他社のオプションが示されるときにはアップルのサインインを提示するよう求めるのは、そのためだ。

だが、開発者にはSign in with Appleを使う義務はない。アプリ独自の直接ログインできる方法をとることもできる(お望みなら、独自のログインと Sign in with Appleを併用することも可能だ)。

10.アプリは、GoogleまたはFacebookのログイン・オプションが提示される場合にのみSign in with Appleを提示すればいいのか?Twitter、Instagram、Snapchatは対象になるのか?

アップルでは、Facebook、Google、あるいは「ソーシャル」のログインが提示されるアプリだけに適用されるとは明言していない。単にサードパーティーのサインイン・システムと言っているだけだ。FacebookとGoogleが、アプリにサードパーティーのサインイン・サービスを提供している最大手であることは明白だが、Twitter、InstagramSnapchatといった他の企業も、独自のサインイン・オプションを開発している。

これらもサードパーティーであるから、新しいデベロッパ向け要請の範囲に含まれるはずだ。

11.アプリではSign in with Appleボタンをいちばん上に表示しなければならないのか? そうしなければApp Storeから拒絶されるのか?

アップルでは、ボタンがよく目立つようにと提言している。

現在、アップルでは、デザインのガイドラインのみをアプリ開発者に提示している。App Storeの掲載の可否を定めたガイドラインは、秋まで待たなければ更新はない。

デザインのためのガイドラインでは、アップルボタンはサードパーティーのサインイン・ボタンの上に配置するよう指示していると、つい先日、伝えられた

デザイン・ガイドラインではさらに、ボタンのサイズは他社のボタンと同じか、それより大きくすることと書かれている。また、画面をスクロールしなければアップルのボタンが現れないようでは困るとのことだ。

しかしハッキリ言って、これはあくまでアップルからのデザインパターンの提案であり、義務ではない。アップルがこのデザインの提案を義務化しなかったのは、独自のアプリを作るには、また、ユーザーに最高の体験を提供するためには、デベロッパにはある程度の柔軟性が必要であることを理解しているからだ。

12.ユーザーの電話番号かメールアドレスだけで登録するアプリにも、Sign in with Appleボタンは必要なのか?

今は必要とされないが、デベロッパが望めばボタンを提示することができる。

13.Sign in with Appleでサインインした後に、アプリから送られるリンクのクリックをユーザーに求め、メールアドレスを聞くことはあるか?

いいえ。アップルはあなたを認証しているので、メールアドレスを後から教える必要はない。

14.例えば、Google DriveやDocsなどのGoogleのサービスを使って機能するアプリで、アプリ開発者からGoogleでのサインインを求められた場合はどうするのか?

そうしたユーザーエクスペリエンスは好ましくないが、アップルでサインインしたなら、Googleで第2認証を1回だけ行うことになる。

今回の要請に関する例外リストのようなものはまだ提示されておらず、アプリ開発者が例外を申請できる方法も定かではないので、この状況にアップルがどう対処するかは不明だ。我々はアップルに直接問い合わせたが、まだ返答がない。

これは、対処法が一般に公開されるというより、それぞれの開発者との個別の交渉によって決められる問題となるのだろう。または、例外は一切認めないという可能性もある。規制当局がアップルの要請には問題があると指摘したときは、内容が変わることもあるだろう。時が経てば判明することだ。

15.現在、Facebookでサインインしているが、Sign in with Appleに切り替えたいときは、どうすればよいのか?

アップルは、ユーザーが直接、Facebookやその他のサインイン・オプションからApple IDに切り替えられる方法を提供していない。その代わり、アップルは、開発者に移行を任せる形になっている。あくまで、ユーザーが望めばいつでもソーシャル・ログインを停止できる方法を開発者が提供できる、または提供すべきというのが、アップルのスタンスだ。

以前、開発者は、サードパーティーのログインを使うサインイン方法はユーザーに提供できず、メールアドレスを使う方法しか使えなかった。これは、たとえばユーザーがFacebookのアカウントを抹消したときや、アプリのFacebook情報へのアクセスを拒否したときなどには役に立つ。

Apple IDを使ったこのサインイン方式が始まれば、アプリ開発者は、同じようにしてサードパーティーのログインからSign in with Appleに切り替える方法をユーザーに提供できるようになる。

この他にアップルに質問がある方は、こちらへメールでお知らせください。sarahp@techcrunch.com

[原文へ]

(翻訳:金井哲夫)