2011-06-27 18 views
2

AmazonのSimpleDBサービスを使用するアプリを開発しています。 AmazonのAWS Android SDKを使用しています。私が理解しているように、アプリケーションバイナリ内の文字列を調べることはそれほど難しくないので、私のAmazon資格(アクセスIDと秘密鍵)を自分のアプリケーションにハードコードすることはお勧めしません。私のアプリからSimpleDBに安全にアクセスするにはどうすればいいですか?私はKeyStoreを使うはずだと思うが、どうやってそれをするのか分からない。Android AWS SDKの使用方法を理解できない

私はEclipseを私のIDEとして使用しています(私は、EclipseがこのAmazonの資格情報をもっと簡単にすることができるようにするためにこれを言っています)。

+0

この質問にはなぜアンドロイドタグがありますか? – Gallal

+1

SDKはAndroid搭載端末用です。Java用のSDKはありますが、Androidでサポートされていない特定のJavaライブラリを使用しています。 – kibibyte

+0

申し訳ありませんが、私はこれがAmazonのEclipse用アプリケーションサーバーSDKに関するものだと考えました。私はあなたが質問をミスしたと思った、申し訳ありません! – Gallal

答えて

4

AWSでは、credential management in mobile applicationsに関する詳細情報を提供しています。

説明した2つのパターンがあります:サーバー

  • を通じてリクエストをプロキシ

    1. は、これら2つのオプションの選択は基本的にあなたがしたいかどうかに帰着AWS

    に直接リクエストを作りますアプリケーション・ロジックをモバイル・デバイスまたはサーバー(AWS EC2サーバーなど)に配置します。ロジックをサーバーに配置することに決めた場合、モバイルデバイスにAWS資格情報を入れる心配はありません。しかし、モバイルアプリから直接AWSにアクセスする場合は、この相互作用をどのように管理するかという問題があります。 2つのシナリオが再びあります

    1. お客様は
    2. アプリケーションプロバイダは、あなたは顧客が管理することを可能にするアプリを提供している場合は、最初のシナリオを使用することができる

    彼らのAWSアカウントを使用して、独自のAWSアカウントを使用しています独自のAWSサービスほとんどの顧客向けアプリケーションでは、自分のアカウントを使用します。この2番目のケースに対処するため、現在AWSはIAMを使用してアカウントのユーザープールを管理することをお勧めします。

    このソリューションでは、顧客プールはAWSアカウントでIAMによって管理されます。モバイルアプリケーションのユーザーは、別のサーバー群でホストされているログインページにリダイレクトされます。アプリケーションの認証を管理するサーバーを所有して操作するため、AWSセキュリティ資格情報をモバイルアプリケーションに配布する前に、アプリケーションユーザーのIDを検証できます。

    すべてのアプリケーションユーザーに同じAWS資格情報セットを使用するのではなく、AWSアカウントの下でアプリケーションのユーザーごとに新しいIAMユーザーをプログラムで作成することができます。

    AWS IDおよびアクセス管理(IAM)では、AWSアカウント内で複数のユーザーを作成し、これらの各ユーザーのアクセス許可を管理することができます。ユーザーは、AWSサービスにアクセスするために使用できる固有のセキュリティ資格情報を持つ(AWSアカウント内の)IDです。 IAMを使用すると、顧客、アプリケーション、およびユーザー間でパスワードを共有したり、キーにアクセスする必要がなくなります。必要に応じてユーザーのアクセスを有効または無効にすることが容易になります。 IAMは、セキュリティ資格情報をモバイルアプリケーションに渡す際の柔軟性、制御、セキュリティを強化しています。 http://aws.amazon.com/iam/でIAMの詳細を知ることができます。

  • +0

    +1固体説明。私はIAMを使用します。 –

    関連する問題