2013年1月9日水曜日

もくもくAWS:AWS SDK for Androidを触ってみた(AnonymousTVM編)

前回に引き続きのAWSです。
今回はAnonymousTVMを利用したサンプルデモアプリの動作確認。
前回まではアプリ内にキーを埋め込んでてアレだなーといった感じでしたが、

■参考にするスライドとか記事とか

イカでげそ。

AWS SDK for Android and iOS
http://www.slideshare.net/AmazonWebServicesJapan/aws-sdk-for-android-and-ios

@ITスマホ×クラウド連載 第2回 AWS×Android:補足記事(2)Token Vending MachineとSecurity Token Service
http://dev.classmethod.jp/cloud/atmarkit_smartphone_cloud_02_supplement_02/

二つ目の記事はまさにそのままの手順で実行しているので、基本このとおり確認します。

■TVMの用意

とにかく記事どおり、進めていく。

・TVM ZIPファイルのダウンロード
・TVM用のIAMユーザーを作成する
・AWS Elastic Beanstalkアプリケーションの作成

AWS Management Consoleを開き、(一番左の)Elastic Beanstalkタブを開く。
「Launch Application」ボタンをクリックする。すでにBeanstalkアプリがある場合は、右上の「Create New Application」ボタンで開始する。

とあるけど、刷新されたのかそんな画面はない。

image

一番右のCustomizeを選択して「Start」を押す。
あとはそのまま進める。

この際、「Environment URL」を「http://xxx-xxxxtvm.elasticbeanstalk.com」といった形式にしたら「Response contains invalid JSON」が発生して作成できなかった。長すぎるか、ハイフンが悪いのかなということで短め・ハイフンなしにしたところ通りました。真相は不明ですが。誰かおせーて?

image

この後、「Environment URL」にアクセスしたらこうなった。

image

「SSL」はおいといて、「is not properly configured」?

この文字列を吐き出しているJSPでは、

  1: 		<% if( Utilities.isEmpty(Configuration.AWS_ACCESS_KEY_ID) || Utilities.isEmpty(Configuration.AWS_SECRET_KEY) ) {%>
  2: 		<p class="warning">Warning: Your Token Vending Machine is not properly configured.</p>
  3: 		<%} %>
  4: 

となっていて、判定値であるConfigurationクラスは

  1: 	/**
  2: 	 * The AWS Access Key Id for the AWS account from which to generate sessions.
  3: 	 */
  4: 	public static final String AWS_ACCESS_KEY_ID = System.getProperty( "AWS_ACCESS_KEY_ID" );
  5: 	
  6: 	/**
  7: 	 * The AWS Secret Key for the AWS account from which to generate sessions.
  8: 	 */
  9: 	public static final String AWS_SECRET_KEY = System.getProperty( "AWS_SECRET_KEY" );
 10: 

となっていた。
取得できてないのはわかるけど、どこで設定するんだーとTVMをDownloadしたサイトみてたらちゃんとかいてあった。(よく読め。



Token Vending Machine for Anonymous Registration - Sample Java Web Application
http://aws.amazon.com/code/8872061742402990
「Configure the TVM for your application」のあたり


 


image


できた!


・TVM Androidデモアプリケーションを実行する


device-2013-01-09-043213


登録されたデバイス情報


image






動いたっぽいですね。


■とりあえずのまとめ


サンプル実行しただけですが、SSL周りほったらかしですが。
これでようやくアプリに認証キーを保管せずにアクセスできるようになりました。
やったー。次は念願のIdentityTVMです。

もうちょっとだけ続くんじゃよ。

0 件のコメント:

コメントを投稿