Mobile Hub プロジェクトへのアクセスのコントロール - AWS Mobile Hub 開発者ガイド

Mobile Hub プロジェクトへのアクセスのコントロール

iOS および Android 用の AWS SDK をお探しですか? これらの SDK とそのドキュメントは、AWS Amplify に統合されています。

このページの内容は、AWS Mobile Hub または awsmobile CLI を使用して設定されたアプリにのみ適用されます。v2.8.0 以前の AWS Mobile SDK を使用する既存のアプリについては、移行して、AWS Amplify と最新の SDK を使用することを強くお勧めします。

概要

このセクションでは、Mobile Hub プロジェクトへのアクセスを制御する 2 つの方法について説明します。

または:

  • AWS Organizations を使用してアクセス許可を管理する

    Mobile Hub プロジェクトで、きめ細かなアクセスコントロールとコスト追跡が必要な組織の場合、AWS アカウント管理者は、サブアカウントを作成し、ユーザーに適用されるポリシーを決定できます。

ユーザーにアタッチされている IAM ポリシーを Mobile Hub で使用してユーザーの代わりにサービスを作成し、変更する方法を理解するには、「Mobile Hub プロジェクトのアクセス権限モデル」を参照してください。

AWS Identity and Access Management (IAM) の詳細を理解するには、「Mobile Hub に対する IAM 認証とアクセスコントロール」と「Mobile Hub に対する IAM 認証とアクセスコントロール」を参照してください。

ベストプラクティス: AWS にアクセスする IAM ユーザーを作成する

セキュリティを向上させるには、Mobile Hub へのアクセスに AWS ルートアカウントを使用しないことが推奨されています。代わりに、AWS アカウントで AWS Identity and Access Management (IAM) ユーザーを作成するか、既存の IAM ユーザーを使用して、そのユーザーで Mobile Hub にアクセスします。詳細については、AWS 全般のリファレンスの AWS セキュリティ認証情報を参照してください。

IAM コンソールを使用して IAM ユーザーを作成するか、ユーザーに委任します。まず、IAM 管理者グループを作成し、新しい IAM ユーザーを作成してそのグループに割り当てます。

注記

アカウント内の IAM ユーザーが Mobile Hub プロジェクトを作成するには、先にそのアカウントの管理者権限を持つユーザーが Mobile Hub コンソールに移動して初期プロジェクトを作成する必要があります。このステップで、Mobile Hub がお客様の代わりに AWS サービスを管理できることを確認します。

IAM ユーザーまたはグループへのアクセス権限の割り当ての詳細については、「Mobile Hub に対する IAM 認証とアクセスコントロール」を参照してください。

Mobile Hub プロジェクトへのアクセス許可をユーザーに付与する

グループやユーザーを作成し、Mobile Hub プロジェクトへのアクセスをユーザーに付与するには、次のステップを使用します。

アクセス許可をロールに付与するには、『AWS IAM ユーザーガイド』の「アクセス許可の追加」を参照してください。

アカウントで新しい IAM ユーザーを作成し、Mobile Hub のアクセス許可を付与する

  1. IAM コンソールを開きます。左側にある [ユーザー] を選択してから、[ユーザーの追加] を選択します。

  2. ユーザー名を入力し、[プログラムによるアクセス] および [AWS マネジメントコンソールによるアクセス] のチェックボックスをオンにします。

  3. 必要に応じて、パスワードポリシーを選択します。続いて、[Next: Permissions] を選択します。

  4. [ユーザーをグループに追加] タブで、該当のユーザーに [管理者] グループまたは [Read_Only] グループを選択し、[Next, Review (次へ、レビュー)] を選択します。

    このプロセスでは、ユーザーのパスワードのカスタマイズ、E メールによる新しいアカウントに関するアラートに加え、アクセスキー ID、キー値およびパスワードのダウンロードのオプションが表示されます。

  5. [Create user] を選択します。

  6. ポリシーを適用するには:

    • プロジェクトのアクセス許可を管理するグループを作成した場合は、[ユーザーをグループに追加] を選択してからグループを選択します。次に、[次へ: レビュー]、[ユーザーの作成] の順に選択します。

    または:

    • ユーザーごとのプロジェクトのアクセス許可を管理している場合は、[既存のポリシーを直接アタッチします] を選択後、アタッチするポリシーを選択します。次に、[AdministratorAccess] または [AWSMobileHub_ReadOnly] を選択してから、[ユーザーの作成] を選択します。

IAM グループの作成

  1. AWS マネジメントコンソールにサインインし、IAM コンソール (http://console.aws.amazon.com/iam/) を開きます。

  2. ナビゲーションペインで、[グループ]、[新しいグループの作成] の順に選択します。

  3. [グループ名] にグループの名前 (例: Administrators または Read_Only) を入力し、[次のステップ] を選択します。

  4. ポリシーのリストで、[AdministratorAccess] ポリシーの横にあるチェックボックスをオンにし、フルアクセス許可、または [AWSMobileHub_ReadOnly] で読み取りアクセスをグループに付与します。[フィルタ] メニューと [検索] ボックスを使用して、ポリシーのリストをフィルタリングできます。

  5. [次のステップ]、[グループの作成] の順に選択します。新しいグループは、[Group Name] の下に表示されます。

既存のアカウントユーザーに Mobile Hub のアクセス許可を付与する

  1. 左側にある [ポリシー] を選択します。

  2. アタッチする管理ポリシー [AdministratorAccess] または [AWSMobileHub_ReadOnly] のリンクを選択します。

  3. [アタッチされたエンティティ] を選択します。

  4. [アタッチ] を選択します。

  5. アクセス権限を付与するユーザー、ロール、またはグループを選択します。

  6. [Attach Policy] を選択します。

AWS Organizations を使用してアクセス許可を管理する

Mobile Hub プロジェクトへのアクセスを分割する必要のあるグループのアクセス許可を管理するには、AWS Organizations を使用します。たとえば、管理者は、チームの開発者ごとにアカウントを付与できます。各ユーザーは、管理者によって付与されたアクセス許可を自分のアカウント内で使用します。このステップは、次のようになります。

  1. AWS アカウントをお持ちでない場合は、AWS 無料利用枠にサインアップします。

  2. AWS Organizations コンソールで、組織を作成します。

  3. 組織のユーザーごとに、アカウントを作成するか、既存のアカウントを追加します。

  4. ユーザーを招待します。

  5. 開発者の組織単位を作成します。

  6. 組織単位のメンバーのポリシーを有効にして、アタッチします。

    アタッチしたポリシーは、ユーザーの AWS アカウントの範囲内に適用されます。Mobile Hub の使用に不要なサービスや機能へのアクセスを制限できます。たとえば、次のポリシーでは、FullAWSAccess 管理ポリシーで定義されているアクセス許可がすべて付与されますが、Amazon EC2 サービスへのアクセスは除外されます。

    "Statement": [ { "Effect": "Allow", "Action": "*", "Resource": "*" }, { "Effect": “Deny”, "Action": “ec2:*”, "Resource": "*" } ]

手順については、「AWS Organization の作成と管理」のチュートリアルを参照してください。

Mobile Hub プロジェクトへのアクセス用の AWS 管理 (定義済み) ポリシー

AWS Identity and Access Management サービスは AWS のサービスとリソースに対するユーザーのアクセス許可を制御します。AWS Mobile Hub のプロジェクトで設定を表示および変更するには、特定のアクセス権限が必要です。これらのアクセス権限は以下の管理ポリシーにグループ化されており、IAM ユーザー、ロール、グループにアタッチできます。

  • AdministratorAccess

    このポリシーでは、アカウント内の AWS サービスに無制限でアクセスできるようになります。このポリシーには、AWS Mobile Hub プロジェクトへの読み取りと書き込みアクセスが含まれます。このポリシーが IAM ユーザー、ロール、グループにアタッチされているユーザーは、新しいプロジェクトの作成、既存のプロジェクトの設定変更、プロジェクトおよびリソースの削除が許可されます。このポリシーには AWSMobileHub_ReadOnly 管理ポリシーで許可されているすべてのアクセス権限も含まれています。Mobile Hub コンソールにサインインしてプロジェクトを作成すると、以下のリンクを使用してこのポリシーとそこにアタッチされた IAM アイデンティティを確認できます。

  • AWSMobileHub_ReadOnly

    このポリシーは AWS Mobile Hub プロジェクトへの読み取り専用アクセスを提供します。このポリシーが IAM ユーザー、ロール、グループにアタッチされているユーザーは、プロジェクトの設定の表示、および開発者のデスクトップ (例: Android Studio または Xcode) でダウンロードして構築できるサンプルのクイックスタートアプリプロジェクトの生成が許可されます。このポリシーでは、Mobile Hub プロジェクト設定の変更は許可されません。また、AWS Mobile Hub が有効になっていないアカウントでユーザーが使用を有効にすることもできません。Mobile Hub コンソールにサインインしてプロジェクトを作成すると、以下のリンクを使用してこのポリシーとそこにアタッチされた IAM アイデンティティを確認できます。

    IAM ユーザー、ロール、またはグループに、AWS Mobile Hub プロジェクトの使用について読み取り専用アクセス権限が設定されている場合は、コンソールに表示されるプロジェクト情報に Mobile Hub 外で加えられた変更が反映されません。たとえば、API Gateway でクラウドロジック API を削除しても、Mobile Hub プロジェクトのクラウドロジック関数リストに存在したままになります。これは mobilehub:SynchronizeProject 権限を持つユーザーがコンソールにアクセスするまで続きます。[AdminstratorAccess] ポリシーによってコンソールへのアクセスを付与されたユーザーには、このアクセス権限があります。Mobile Hub でアクセス権限を追加する必要がある場合は、管理者に連絡して、[AdminstratorAccess] ポリシーをリクエストしてください。