本連載では、スマートフォンとクラウドコンピューティングの技術を組み合わせた際に、アプリ開発を効率化できるToolkitやSDKを取り上げていきます。Services(以後、AWS)などを取り上げ、連載ごとにそれぞれの組み合わせを1つ取り上げ、クラウドベンダから提供されているツールを利用した開発スタイルを紹介していきます。Servicesを採用する場合の開発スタイルの組み合わせは下記のようになります。iOS」を取り上げます。iOSはAWS向けの開発ツールの1つで、主にiPhone/iPadとAWSを組み合わせたアプリを開発する際に、サーバアプリを介さずにiPhone/iPad端末から直接AWSの機能を利用できるようにしてくれるツールです。Androidと同様の機能ラインアップです)。S3へのデータの保存と取得SimpleDBへのデータの保存と取得SQS、SNSを用いたモバイルデバイスとサーバ間およびモバイルデバイス間の通知EC2インスタンスの起動や管理EC2、EBS、ELB、RDSなどのCloudWatchを通じたモニタリングAWSの主なサービスについては、以下を参照してください。iOSを使うと、iPhone/iPadから直接S3やEC2へアクセス可能になります。iPhone端末から画像を直接S3にアップロードするアプリが考えられます。iPhone端末→EC2→S3のような冗長な手順を踏まず、iPhone端末→S3とリクエストを直行できるので、効率良く処理できます。Federation)が提供されており、適切な権限をiPhone端末に付与し、iPhone端末から直接AWSリソースにアクセスさせるアプリをセキュアに作成できます。SDK本体のことです。iOSネイティブアプリ開発用のObjective-Cのライブラリです。サンプルiOSアプリには基本的な動作を確認できる「AWSiOSDemo」を中心に多数のサンプルがあります。AWSのストレージ系サービスへのアクセスの流れまた、iPhone端末からAWSのストレージ系サービスへのアクセスで問題になるのがアクセス権限の管理です。Service」を利用した権限管理用のWebアプリのサンプルもあります。それが「TVMサンプルWebアプリ」です。このサンプルWebアプリから適切な権限のアクセスキーを発行してもらい、iPhone端末内のアプリにアクセスキーを埋め込むことなく、AWSへ直接アクセスできるようになります。図1は、従来のiPhone/iPad端末からAWSのストレージ系サービスへのアクセスのイメージです。従来のAWSサービスへのアクセスWebアプリ内にあらかじめ発行済みのアクセスキーが埋め込まれています。iPhone/iPad端末は、このWebアプリを経由してS3などのストレージサービスへアクセスします。ストレージ以外のEC2などへのアクセスも同様です(図1は、Webアプリやユーザー管理システムがAWS内の図ですが、AWS外に配置されていても同様です)。Serviceを利用した場合のiPhone/iPad端末からAWSサービスへのアクセスのイメージです。Serviceから自分用のアクセスキーを取得します。図2の緑色の鍵がAndroid端末側で保持された状態です。そのアクセスキーを用いて直接S3などのストレージサービスへアクセスします。ストレージ以外のEC2などへのアクセスも同様です(図2では、Webアプリやユーザー管理システムがAWS内になっていますが、AWS外に配置されていても同様です)。iOSが提供するTVMサンプルWebアプリです。Serviceとの連携部分は独自に作り込む必要があります)。Application次ページでは、「AWSiOSDemo」サンプルアプリを動かしてみましょう。メールマガジンをご購読ください。申し込みページへITmediaはアイティメディア株式会社の登録商標です。