毎週 smart home Action must include a mechanism for authenticating users.
認証を使用すると、ユーザーの Google アカウントを認証システムのユーザー アカウントにリンクできます。これにより、フルフィルメントがスマートホーム インテントを受信したときにユーザーを識別できます。Google スマートホームは、認証コードフローを使用した OAuth のみをサポートしています。
OAuth 2.0 を実装すると、OAuth ベースの App Flip を設定することも可能です。これにより、認証システムに登録されているユーザーのアカウントを、そのユーザーの Google アカウントに簡単にリンクできます。
OAuth
smart home の場合は、認証コードフローで OAuth を使用する必要があります。このフローでは、認証エンドポイントとトークン交換エンドポイントの 2 つのエンドポイントが必要です。
ユーザーを認証すると、ユーザーの smart home インテントがフルフィルメントに送信されるときに、ユーザーのサードパーティの OAuth 2.0 アクセス トークンが認証ヘッダーに送信されます。デバイス情報は Google Assistant
with the action.devices.SYNC
intent, which requires account linking. に送信されるため、すべてのユーザーがアカウントのリンクを行う必要があります
smart home アクションは、同じユーザー アカウントに接続する Google ユーザーを複数サポートすることが求められます(たとえば、家族の他のメンバーにアクセス権を付与する場合)。サービスが複数のユーザー接続をサポートできない場合は、アカウントのリンク時にエラーになります。
OAuth 2.0 サーバーの設定方法については、OAuth 2.0 サーバーを実装するをご覧ください。
OAuth ベースのアプリ切り替え
OAuth ベースのアプリ切り替えリンク(アプリ切り替え)を使用すると、ユーザーが認証システム内のアカウントを Google アカウントにすばやく簡単にリンクできます。ユーザーがアカウントのリンク プロセスを開始した際、アプリがユーザーのスマートフォンにインストールされている場合は、ユーザーはシームレスにアプリを切り替えてユーザー認証を取得します。
このアプローチでは、ユーザーが認証のためにユーザー名とパスワードを再入力する必要がなく、より迅速かつ簡単にリンクできます。アプリ切り替えでは、アプリ上のユーザーのアカウントの認証情報を使用します。ユーザーが Google アカウントとアプリをリンクすると、ユーザーは開発した統合を活用できます。
アプリ切り替えは、iOS アプリと Android アプリの両方に設定できます。

要件
アプリ切り替えを実装するには、次の要件を満たす必要があります。
- Android アプリまたは iOS アプリが必要です。
- OAuth 2.0 認証コードフローをサポートする OAuth 2.0 サーバーを所有、管理、保守する必要があります。
OAuth リンクの認証コードフローの詳細については、OAuth 2.0 サーバーを実装するをご覧ください。
アクションの構成方法については、App FlipOAuth ベースです。 App Flip.