LwAの概要
I:DRSの実装
DRSデバイスをAmazonのバックエンドサービスに接続するために、ユーザーは、自分の代理でアクションが実行されることを許可するとともに、対象デバイスの設定を行う必要があります。DRSデバイスの許可/設定には、主にモバイルコンパニオンアプリケーションを使用する方法と、Webアプリケーションを使用する方法の2つがあります。どちらの方法も、あくまで任意です。以降の各セクションで、実装する必要がある手順について簡単に説明します。
LwAの許可
LwAの許可プロセスを構成する主な要素は次のとおりです。
- DRSデバイス
- モバイル/Webアプリケーション
- LwAセキュリティプロファイル
- LwAバックエンドサービス
- DRSバックエンドサービス
セルフサービスポータルで作成されたすべてのDRSデバイスには、LwAセキュリティプロファイル(ドキュメントによってはLwAアプリケーションと呼ばれることもあります)が必要です。LwAセキュリティプロファイルは、開発者とユーザーの間で橋渡し的な役割を果たします。開発者は、Login with Amazonコンソールでコンパニオンアプリケーションの情報を追加する必要があります。開発者がLwAコンソールでこれらの情報を追加することによって、ユーザーは、DRSデバイスの登録、設定、管理を行うことができます。
LwAとの連携を実装する前に
プロセスの手順1と2が既に実行されていることを確認します。
LwA許可手順
- DRSデバイスをユーザーが登録するための手段 (コンパニオンアプリケーション) を用意する。
- 適切なログインパラメーターを渡してログインをリクエストする。
- アクセストークンと更新トークンをリクエストする。
- アクセストークンと更新トークンを安全に保存する。
- リクエストに応じて、アクセストークンを使ってDRSバックエンドサービスを呼び出す。
ユースケースはそれぞれ異なるので、上記の手順を実装するシステムの設計は個々の開発者に委ねられます。以降の各セクションで、システム設計の2つの例を紹介します。
アーキテクチャ
モバイルアプリケーション
一般的な許可のユースケースとして、DRSデバイスの設定と管理をモバイルアプリケーションで行う方法が挙げられます。DRSデバイスは、情報を交換するためにモバイルアプリケーションと通信する必要があります。LwAやDRSバックエンドとの通信は、そのモバイルアプリケーションを使って行われます。
- DRSデバイスは、デバイスのモデル名(セルフサービスポータル,から得られるデバイスのモデルID)、デバイスのシリアル番号(デバイスの一意のシリアル番号)、コードチャレンジ(コードチャレンジを作成する方法についてはLwAモバイルSDKの概要ページを参照)、そのコードチャレンジの方法(詳細についてはLwAモバイルSDKの概要を参照)を転送する必要があります。
- 受け取ったパラメーターでログインをリクエストします。
- LwAからモバイルアプリケーションに確認パラメーターが返されます(グラントの種類、許可コード、リダイレクトURI、クライアントID、コードベリファイア)。
- 受け取ったパラメーターをDRSデバイスに安全に転送します。
- DRSデバイスが、受け取ったパラメーターを更新トークンとアクセストークンに交換するためのリクエストを送信します。
- LwAから、更新トークンとアクセストークン、トークンの種類のほか、アクセストークンの有効期限が返されます。更新トークンは、有効期限が切れたアクセストークンを更新する際に必要になるので、安全に保存する必要があります。
- この時点で、DRSデバイスはすべてのDRS APIを呼び出すことができます。
Webアプリケーション
DRSデバイスの登録と管理に関して、もう1つよく使われるのは、Webアプリケーションを介してデバイスを許可する方法です。この手法では、DRSデバイスが、インターネットに接続された瞬間から Webアプリケーションと通信できます。
- ユーザーが、そのDRSデバイスの情報をWebアプリケーションに入力します。
- Webアプリケーションが、デバイスのモデルID(セルフサービスポータルから得られるモデルID )とシリアル番号を使ってログインをリクエストします。
- LwAから許可コードが返されます。
- LwAから受け取った許可コードを使ってWebアプリケーションが 更新トークンとアクセストークンをリクエストします。
- すべてのパラメーターが正しい場合、LwAから更新トークンとアクセストークンが返されます。
- DRSデバイスが特定のアクション(補充アクションなど)をリクエストします。
- WebアプリケーションがDRS APIを呼び出します。
次のステップ
次は、コンパニオンアプリとLogin with Amazonを連携する方法について説明します。
作成したいアプリ | ドキュメント |
---|---|
ネイティブAndroidアプリ | AndroidでLogin with Amazon SDKを使用する |
ネイティブiOSアプリ | iOSでLogin with Amazon SDKを使用する |
Webアプリ、およびCordovaのようなハイブリッドアプリ | LwA Web APIの使用 |
すでにLwAを実装している場合、APIの概要にお進みいただけます。
Last updated: Aug 07, 2018