

# AWS IoT Wireless の Identity and Access Management
<a name="security-iam"></a>

AWS Identity and Access Management (IAM) は、管理者が AWS リソースへのアクセスを安全に制御するために役立つ AWS のサービスです。IAM 管理者は、AWS IoT Wireless リソースの使用を *認証* (サインイン) し、 *認可* (アクセス許可を持つ) できるユーザーを制御します。IAM は、追加費用なしで使用できる AWS のサービスです。

**Topics**
+ [対象者](#security_iam_audience)
+ [アイデンティティによる認証](#security_iam_authentication)
+ [ポリシーを使用したアクセス権の管理](#security_iam_access-manage)
+ [AWS IoT Wireless と IAM の連携方法](security_iam_service-with-iam.md)
+ [AWS IoT Wireless の ID ベースのポリシーの例](security_iam_id-based-policy-examples.md)
+ [AWS の AWS IoT Wireless マネージドポリシー](security-iam-awsmanpol.md)
+ [AWS IoT Wireless の ID とアクセスのトラブルシューティング](security_iam_troubleshoot.md)

## 対象者
<a name="security_iam_audience"></a>

AWS Identity and Access Management (IAM) の使用方法は、AWS IoT Wireless で行う作業によって異なります。

**サービスユーザー** - ジョブを実行するために AWS IoT Wireless サービスを使用する場合は、管理者が必要なアクセス許可と認証情報を用意します。作業を実行するためにさらに多くの AWS IoT Wireless 機能を使用するとき、追加のアクセス許可が必要になる場合があります。アクセスの管理方法を理解すると、管理者から適切な権限をリクエストするのに役に立ちます。AWS IoT Wireless の機能にアクセスできない場合は、[AWS IoT Wireless の ID とアクセスのトラブルシューティング](security_iam_troubleshoot.md) を参照してください。

**サービス管理者** – 社内の AWS IoT Wireless リソースを担当している場合は、おそらく AWS IoT Wireless へのフルアクセスがあります。サービスのユーザーがどの AWS IoT Wireless 機能やリソースにアクセスするかを決めるのは管理者の仕事です。その後、IAM 管理者にリクエストを送信して、サービスユーザーの権限を変更する必要があります。このページの情報を点検して、IAM の基本概念を理解してください。お客様の会社で AWS IoT Wireless で IAM を利用する方法の詳細については、[AWS IoT Wireless と IAM の連携方法](security_iam_service-with-iam.md) を参照してください。

**IAM 管理者** - 管理者は、AWS IoT Wireless へのアクセスを管理するポリシーの作成方法の詳細について確認する場合があります。IAM で使用できる AWS IoT Wireless の ID ベースのポリシーの例を表示するには、[AWS IoT Wireless の ID ベースのポリシーの例](security_iam_id-based-policy-examples.md) を参照してください。

## アイデンティティによる認証
<a name="security_iam_authentication"></a>

認証とは、アイデンティティ認証情報を使用して AWSにサインインする方法です。ユーザーは、AWS アカウントのルートユーザー として、または IAM ロールを引き受けることによって、認証済み (AWS にサインイン済み) である必要があります。

ID ソースから提供された認証情報を使用して、フェデレーティッドアイデンティティとして AWS にサインインできます。 AWS IAM アイデンティティセンターフェデレーティッドアイデンティティの例としては、IAM アイデンティティセンターユーザー、会社のシングルサインオン認証、Google または Facebook の認証情報などがあります。フェデレーティッドアイデンティティとしてサインインする場合、IAM ロールを使用して、前もって管理者により ID フェデレーションが設定されています。フェデレーションを使用して AWSにアクセスする場合、間接的にロールを引き受けることになります。

ユーザーのタイプに応じて、AWS マネジメントコンソール または AWS アクセスポータルにサインインできます。AWS へのサインインの詳細については、『AWS サインイン ユーザーガイド**』の「[AWS アカウント にサインインする方法](https://docs.aws.amazon.com/signin/latest/userguide/how-to-sign-in.html)」を参照してください。

プログラムで AWS にアクセスする場合、AWS は Software Development Kit (SDK) とコマンドラインインターフェイス (CLI) を提供し、認証情報でリクエストに暗号で署名します。AWS ツールを使用しない場合は、リクエストに自分で署名する必要があります。リクエストに署名する推奨方法の使用については、『IAM ユーザーガイド**』の「[AWS API リクエストの署名](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-signing.html)」を参照してください。

使用する認証方法を問わず、追加のセキュリティ情報の提供が求められる場合もあります。例えば、AWS では多要素認証 (MFA) を使用してアカウントのセキュリティを高めることを推奨しています。詳細については、「*AWS IAM アイデンティティセンター ユーザーガイド*」の「[多要素認証](https://docs.aws.amazon.com/singlesignon/latest/userguide/enable-mfa.html)」 および「*IAM ユーザーガイド*」の「[AWS での多要素認証 (MFA) の使用](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa.html)」を参照してください。

### AWS アカウントのルートユーザー
<a name="security_iam_authentication-rootuser"></a>

 AWS アカウント を作成する場合、このアカウントのすべての AWS のサービス とリソースに対して完全なアクセス権を持つ 1 つのサインインアイデンティティから始めます。このアイデンティティは AWS アカウントのルートユーザー**と呼ばれ、アカウントの作成に使用した E メールアドレスとパスワードでサインインすることによってアクセスできます。日常的なタスクには、ルートユーザーを使用しないことを強くお勧めします。ルートユーザーの認証情報を保護し、それらを使用してルートユーザーのみが実行できるタスクを実行してください。ルートユーザーとしてサインインする必要があるタスクの完全なリストについては、「*IAM ユーザーガイド*」の「[ルートユーザー認証情報が必要なタスク](https://docs.aws.amazon.com/IAM/latest/UserGuide/root-user-tasks.html)」を参照してください。

### IAM ユーザーとグループ
<a name="security_iam_authentication-iamuser"></a>

[IAM ユーザー](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html) は、1 人のユーザーまたは 1 つのアプリケーションに対して特定の許可を持つ AWS アカウント 内のアイデンティティです。可能であれば、パスワードやアクセスキーなどの長期的な認証情報を保有する IAM ユーザーを作成する代わりに、一時的な認証情報を使用することをお勧めします。ただし、IAM ユーザーでの長期的な認証情報が必要な特定のユースケースがある場合は、アクセスキーをローテーションすることをお勧めします。詳細については、「*IAM ユーザーガイド*」の「[長期的な認証情報を必要とするユースケースのためにアクセスキーを定期的にローテーションする](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#rotate-credentials)」を参照してください。

[IAM グループ](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html)は、IAM ユーザーの集団を指定するアイデンティティです。グループとしてサインインすることはできません。グループを使用して、複数のユーザーに対して一度に権限を指定できます。多数のユーザーグループがある場合、グループを使用することで権限の管理が容易になります。例えば、IAMAdmins** という名前のグループを設定して、そのグループに IAM リソースを管理する権限を与えることができます。

ユーザーは、ロールとは異なります。ユーザーは 1 人の人または 1 つのアプリケーションに一意に関連付けられますが、ロールはそれを必要とする任意の人が引き受けるようになっています。ユーザーには永続的な長期の認証情報がありますが、ロールでは一時的な認証情報が提供されます。詳細については、「IAM ユーザーガイド**」の「[IAM ユーザー (ロールではなく) の作成が適している場合](https://docs.aws.amazon.com/IAM/latest/UserGuide/id.html#id_which-to-choose)」を参照してください。

### IAM ロール
<a name="security_iam_authentication-iamrole"></a>

**注記**  
AWS IoT Wireless は、サービスロールとサービスにリンクされたロールをサポートしていません。

[IAM ロール](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) は、特定の許可を持つ、AWS アカウント 内のアイデンティティです。これは IAM ユーザーに似ていますが、特定のユーザーには関連付けられていません。[ロールを切り替える](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-console.html)ことにより、AWS マネジメントコンソール で一時的に IAM ロールを引き受けることができます。ロールを引き受けるには、AWS CLI または AWS API オペレーションを呼び出すか、カスタム URL を使用します。ロールを使用する方法の詳細については、「*IAM ユーザーガイド*」の「[IAM ロールの使用](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html)」を参照してください。

IAM ロールと一時的な認証情報は、次のような状況で役立ちます。
+ **フェデレーションユーザーアクセス** – フェデレーティッドアイデンティティに許可を割り当てるには、ロールを作成してそのロールの許可を定義します。フェデレーティッドアイデンティティが認証されると、そのアイデンティティはロールに関連付けられ、ロールで定義されている権限が付与されます。フェデレーションの詳細については、「*IAM ユーザーガイド*」の「[Creating a role for a third-party Identity Provider](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp.html)」(サードパーティーアイデンティティプロバイダー向けロールの作成) を参照してください。IAM Identity Center を使用する場合、許可セットを設定します。アイデンティティが認証後にアクセスできるものを制御するため、IAM アイデンティティセンターは、アクセス許可セットを IAM のロールに関連付けます。アクセス許可セットの詳細については、「*AWS IAM アイデンティティセンター ユーザーガイド*」の「[アクセス許可セット](https://docs.aws.amazon.com/singlesignon/latest/userguide/permissionsetsconcept.html)」を参照してください。
+ **一時的な IAM ユーザー権限** - IAM ユーザーまたはロールは、特定のタスクに対して複数の異なる権限を一時的に IAM ロールで引き受けることができます。
+ **クロスアカウントアクセス** - IAM ロールを使用して、自分のアカウントのリソースへのアクセスを別のアカウントの人物 (信頼できるプリンシパル) に許可できます。クロスアカウントアクセス権を付与する主な方法は、ロールを使用することです。ただし、一部の AWS のサービスでは、(ロールをプロキシとして使用する代わりに) リソースにポリシーを直接アタッチできます。クロスアカウントアクセスにおけるロールとリソースベースのポリシーの違いについては、「*IAM ユーザーガイド*」の「[IAM ロールとリソースベースのポリシーとの相違点](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_compare-resource-policies.html)」を参照してください。
+ **クロスサービスアクセス** - 一部の AWS のサービスでは、他の AWS のサービスの機能を使用します。例えば、あるサービスで呼び出しを行うと、通常そのサービスによって Amazon EC2 でアプリケーションが実行されたり、Amazon S3 にオブジェクトが保存されたりします。サービスでは、呼び出し元プリンシパルの権限、サービスロール、またはサービスリンクロールを使用してこれを行う場合があります。
  + **転送アクセスセッション (FAS)** – IAM ユーザーまたはロールを使用して AWS でアクションを実行するユーザーは、プリンシパルと見なされます。一部のサービスを使用する際に、アクションを実行することで、別のサービスの別のアクションがトリガーされることがあります。FAS は、AWS のサービスを呼び出すプリンシパルの権限を、AWS のサービスのリクエストと合わせて使用し、ダウンストリームのサービスに対してリクエストを行います。FAS リクエストは、サービスが、完了するために他の AWS のサービス またはリソースとのやりとりを必要とするリクエストを受け取ったときにのみ行われます。この場合、両方のアクションを実行するためのアクセス許可が必要です。FAS リクエストを行う際のポリシーの詳細については、「[転送アクセスセッション](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_forward_access_sessions.html)」を参照してください。
  + サービスロール - サービスがユーザーに代わってアクションを実行するために引き受ける [IAM ロール](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)です。IAM 管理者は、IAM 内からサービスロールを作成、変更、削除できます。詳細については、「*IAM ユーザーガイド*」の「[AWS のサービス にアクセス許可を委任するロールの作成](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html)」を参照してください。
  + **サービスにリンクされたロール** - サービスにリンクされたロールは、AWS のサービス にリンクされたサービスロールの一種です。サービスがロールを引き受け、ユーザーに代わってアクションを実行できるようになります。サービスにリンクされたロールは、AWS アカウント に表示され、サービスによって所有されます。IAM 管理者は、サービスにリンクされたロールの許可を表示できますが、編集はできません。
+ **Amazon EC2 で実行されているアプリケーション** - EC2 インスタンスで実行され、AWS CLI または AWS API 要求を行っているアプリケーションの一時的な認証情報を管理するには、IAM ロールを使用できます。これは、EC2 インスタンス内でのアクセスキーの保存に推奨されます。AWS ロールを EC2 インスタンスに割り当て、そのすべてのアプリケーションで使用できるようにするには、インスタンスに添付されたインスタンスプロファイルを作成します。インスタンスプロファイルにはロールが含まれ、EC2 インスタンスで実行されるプログラムは一時的な認証情報を取得できます。詳細については、「*IAM ユーザーガイド*」の「[Amazon EC2 インスタンスで実行されるアプリケーションに IAM ロールを使用して許可を付与する](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2.html)」参照してください。

IAM ロールと IAM ユーザーのどちらを使用するかについては、「*IAM ユーザーガイド*」の「[(IAM ユーザーではなく) IAM ロールをいつ作成したら良いのか?](https://docs.aws.amazon.com/IAM/latest/UserGuide/id.html#id_which-to-choose_role)」を参照してください。

## ポリシーを使用したアクセス権の管理
<a name="security_iam_access-manage"></a>

AWS でアクセスを制御するには、ポリシーを作成して AWS アイデンティティまたはリソースにアタッチします。ポリシーは AWS のオブジェクトであり、アイデンティティやリソースに関連付けて、これらのアクセス許可を定義します。AWS は、プリンシパル (ユーザー、ルートユーザー、またはロールセッション) がリクエストを行うと、これらのポリシーを評価します。ポリシーでの権限により、リクエストが許可されるか拒否されるかが決まります。大半のポリシーは JSON ドキュメントとして AWSに保存されます。JSON ポリシードキュメントの構造と内容の詳細については、「*IAM ユーザーガイド*」の「[JSON ポリシー概要](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#access_policies-json)」を参照してください。

管理者は AWSJSON ポリシーを使用して、だれが何にアクセスできるかを指定できます。つまり、どの**プリンシパル**がどの**リソース**に対してどのような**条件下**で**アクション**を実行できるかということです。

デフォルトでは、ユーザーやロールに権限はありません。IAM 管理者は、リソースで必要なアクションを実行するためのアクセス許可をユーザーに付与するため、IAM ポリシーを作成できます。その後、管理者はロールに IAM ポリシーを追加し、ユーザーはロールを引き継ぐことができます。

IAM ポリシーは、オペレーションの実行方法を問わず、アクションの権限を定義します。例えば、`iam:GetRole` アクションを許可するポリシーがあるとします。このポリシーがあるユーザーは、AWS マネジメントコンソール、AWS CLI、または AWS API からロール情報を取得できます。

### アイデンティティベースポリシー
<a name="security_iam_access-manage-id-based-policies"></a>

アイデンティティベースポリシーは、IAM ユーザー、ユーザーのグループ、ロールなど、アイデンティティにアタッチできる JSON 権限ポリシードキュメントです。これらのポリシーは、ユーザーとロールが実行できるアクション、リソース、および条件を制御します。アイデンティティベースのポリシーを作成する方法については、「*IAM ユーザーガイド*」の「[IAM ポリシーの作成](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html)」を参照してください。

アイデンティティベースのポリシーは、さらに インラインポリシー または マネージドポリシー に分類できます。インラインポリシーは、単一のユーザー、グループ、またはロールに直接埋め込まれます。管理ポリシーは、AWS アカウント 内の複数のユーザー、グループ、およびロールにアタッチできるスタンドアロンポリシーです。マネージドポリシーには、AWS マネージドポリシーとカスタマー管理ポリシーがあります。マネージドポリシーまたはインラインポリシーのいずれかを選択する方法については、「*IAM ユーザーガイド*」の「[マネージドポリシーとインラインポリシーの比較](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#choosing-managed-or-inline)」を参照してください。

### リソースベースのポリシー
<a name="security_iam_access-manage-resource-based-policies"></a>

リソースベースのポリシーは、リソースに添付する JSON ポリシードキュメントです。リソースベースのポリシーには例として、IAM *ロール信頼ポリシー*や Amazon S3 *バケットポリシー*があげられます。リソースベースのポリシーをサポートするサービスでは、サービス管理者はポリシーを使用して特定のリソースへのアクセスを制御できます。ポリシーがアタッチされているリソースの場合、指定されたプリンシパルがそのリソースに対して実行できるアクションと条件は、ポリシーによって定義されます。リソースベースのポリシーでは、[プリンシパルを指定する](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html)必要があります。プリンシパルには、アカウント、ユーザー、ロール、フェデレーションユーザー、または AWS のサービス を含めることができます。

リソースベースのポリシーは、そのサービス内にあるインラインポリシーです。リソースベースのポリシーでは IAM の AWSマネージドポリシーは使用できません。

### アクセスコントロールリスト (ACL)
<a name="security_iam_access-manage-acl"></a>

アクセスコントロールリスト (ACL) は、どのプリンシパル (アカウントメンバー、ユーザー、またはロール) がリソースにアクセスするための許可を持つかを制御します。ACL はリソースベースのポリシーに似ていますが、JSON ポリシードキュメント形式は使用しません。

Amazon S3、AWS WAF、および Amazon VPC は、ACL をサポートするサービスの例です。ACL の詳細については、「*Amazon Simple Storage Service デベロッパーガイド*」の「[アクセスコントロールリスト (ACL) の概要」](https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html)を参照してください。

### その他のポリシータイプ
<a name="security_iam_access-manage-other-policies"></a>

AWS では、他の一般的ではないポリシータイプをサポートしています。これらのポリシータイプでは、より一般的なポリシータイプで付与される最大の許可を設定できます。
+ **権限の境界** - 権限の境界は、アイデンティティベースのポリシーによって IAM エンティティ (IAM ユーザーまたはロール) に付与できる許可の上限を設定する高度な機能です。エンティティに権限の境界を設定できます。結果として得られる権限は、エンティティのアイデンティティベースポリシーとその権限の境界の共通部分になります。`Principal` フィールドでユーザーまたはロールを指定するリソースベースのポリシーでは、権限の境界は制限されません。これらのポリシーのいずれかを明示的に拒否した場合、権限は無効になります。アクセス許可の境界の詳細については、「*IAM ユーザーガイド*」の「[IAM エンティティのアクセス許可の境界](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html)」を参照してください。
+ **サービスコントロールポリシー (SCP)** - SCP は、AWS Organizations で組織や組織単位 (OU) の最大許可を指定する JSON ポリシーです。AWS Organizations は、ユーザーのビジネスが所有する複数の AWS アカウント をグループ化し、一元的に管理するサービスです。組織内のすべての機能を有効にすると、サービスコントロールポリシー (SCP) を一部またはすべてのアカウントに適用できます。SCP はメンバーアカウントのエンティティに対する権限を制限します (各 AWS アカウントのルートユーザー など)。Organizations と SCP の詳細については、「*AWS Organizations ユーザーガイド*」の「[SCP の仕組み](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_about-scps.html)」を参照してください。
+ **セッションポリシー** - セッションポリシーは、ロールまたはフェデレーションユーザーの一時的なセッションをプログラムで作成する際にパラメータとして渡す高度なポリシーです。結果としてセッションの権限の範囲は、ユーザーまたはロールのアイデンティティベースポリシーとセッションポリシーの共通部分になります。また、リソースベースのポリシーから権限が派生する場合もあります。これらのポリシーのいずれかを明示的に拒否した場合、権限は無効になります。詳細については、「*IAM ユーザーガイド*」の「[セッションポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session)」を参照してください。

### 複数のポリシータイプ
<a name="security_iam_access-manage-multiple-policies"></a>

1 つのリクエストに複数のタイプのポリシーが適用されると、結果として作成される権限を理解するのがさらに難しくなります。複数のポリシータイプが関連するとき、リクエストを許可するかどうかを AWS が決定する方法の詳細については、『IAM ユーザーガイド**』の「[ポリシーの評価ロジック](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html)」を参照してください。

# AWS IoT Wireless と IAM の連携方法
<a name="security_iam_service-with-iam"></a>

IAM を使用して AWS IoT Wireless へのアクセスを管理する前に、AWS IoT Wireless で使用できる IAM 機能について理解しておく必要があります。AWS IoT Wireless およびその他の AWS のサービスが IAM と連携する方法の概要を把握するには、*IAM ユーザーガイド*の「[IAM と連携する AWS のサービス](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html)」を参照してください。


**AWS IoT Wireless で使用できる IAM の機能**  

| IAM の機能 | AWS IoT Wireless サポート | 
| --- | --- | 
|  [アイデンティティベースのポリシー](#security_iam_service-with-iam-id-based-policies)  |   あり  | 
|  [リソースベースのポリシー](#security_iam_service-with-iam-resource-based-policies)  |   いいえ   | 
|  [ポリシーアクション](#security_iam_service-with-iam-id-based-policies-actions)  |   あり  | 
|  [ポリシーリソース](#security_iam_service-with-iam-id-based-policies-resources)  |   はい  | 
|  [ポリシー条件キー](#security_iam_service-with-iam-id-based-policies-conditionkeys)  |   はい  | 
|  [ACL](#security_iam_service-with-iam-acls)  |   なし   | 
|  [ABAC (ポリシー内のタグ)](#security_iam_service-with-iam-tags)  |   はい  | 
|  [一時的な認証情報](#security_iam_service-with-iam-roles-tempcreds)  |   あり  | 
|  [プリンシパル権限](#security_iam_service-with-iam-principal-permissions)  |   あり  | 
|  [サービスロール](#security_iam_service-with-iam-roles-service)  |   いいえ   | 
|  [サービスリンクロール](#security_iam_service-with-iam-roles-service-linked)  |   いいえ   | 

**Topics**
+ [AWS IoT Wireless の ID ベースのポリシー](#security_iam_service-with-iam-id-based-policies)
+ [AWS IoT Wireless 内のリソースベースのポリシー](#security_iam_service-with-iam-resource-based-policies)
+ [ポリシーアクション](#security_iam_service-with-iam-id-based-policies-actions)
+ [ポリシーリソース](#security_iam_service-with-iam-id-based-policies-resources)
+ [条件キー](#security_iam_service-with-iam-id-based-policies-conditionkeys)
+ [アクセスコントロールリスト (ACL)](#security_iam_service-with-iam-acls)
+ [AWS IoT Wireless を備えた ABAC](#security_iam_service-with-iam-tags)
+ [AWS IoT Wireless での一時的な認証情報の使用](#security_iam_service-with-iam-roles-tempcreds)
+ [AWS IoT Wireless のクロスサービスプリンシパル権限](#security_iam_service-with-iam-principal-permissions)
+ [サービスロール](#security_iam_service-with-iam-roles-service)
+ [AWS IoT Wireless のサービスにリンクされたロール](#security_iam_service-with-iam-roles-service-linked)

## AWS IoT Wireless の ID ベースのポリシー
<a name="security_iam_service-with-iam-id-based-policies"></a>


|  |  | 
| --- |--- |
|  アイデンティティベースポリシーをサポートする  |   あり  | 

アイデンティティベースのポリシーは、IAM ユーザー、ユーザーグループ、ロールなどのアイデンティティにアタッチできる JSON アクセス許可ポリシードキュメントです。これらのポリシーは、ユーザーとロールが実行できるアクション、リソース、および条件を制御します。アイデンティティベースのポリシーを作成する方法については、「*IAM ユーザーガイド*」の「[IAM ポリシーの作成](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html)」を参照してください。

IAM アイデンティティベースのポリシーでは、許可または拒否するアクションとリソース、およびアクションを許可または拒否する条件を指定できます。プリンシパルは、それがアタッチされているユーザーまたはロールに適用されるため、アイデンティティベースのポリシーでは指定できません。JSON ポリシーで使用できるすべての要素について学ぶには、『IAM ユーザーガイド**』の「[IAM JSON ポリシーの要素のリファレンス](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html)」を参照してください。

### 例
<a name="security_iam_service-with-iam-id-based-policies-examples"></a>



AWS IoT Wireless の ID ベースのポリシーの例を表示するには、[AWS IoT Wireless の ID ベースのポリシーの例](security_iam_id-based-policy-examples.md) を参照してください。

## AWS IoT Wireless 内のリソースベースのポリシー
<a name="security_iam_service-with-iam-resource-based-policies"></a>


|  |  | 
| --- |--- |
|  リソースベースのポリシーのサポート  |   なし   | 

リソースベースのポリシーは、リソースに添付する JSON ポリシードキュメントです。リソースベースのポリシーには例として、IAM *ロール信頼ポリシー*や Amazon S3 *バケットポリシー*があげられます。リソースベースのポリシーをサポートするサービスでは、サービス管理者はポリシーを使用して特定のリソースへのアクセスを制御できます。ポリシーがアタッチされているリソースの場合、指定されたプリンシパルがそのリソースに対して実行できるアクションと条件は、ポリシーによって定義されます。リソースベースのポリシーでは、[プリンシパルを指定する](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html)必要があります。プリンシパルには、アカウント、ユーザー、ロール、フェデレーションユーザー、または AWS のサービス を含めることができます。

クロスアカウントアクセスを有効にするには、全体のアカウント、または別のアカウントの IAM エンティティを、リソースベースのポリシーのプリンシパルとして指定します。リソースベースのポリシーにクロスアカウントのプリンシパルを追加しても、信頼関係は半分しか確立されない点に注意してください。プリンシパルとリソースが異なる AWS アカウント にある場合、信頼できるアカウントの IAM 管理者は、リソースへのアクセス許可をプリンシパルエンティティ (ユーザーまたはロール) に付与する必要もあります。IAM 管理者は、アイデンティティベースのポリシーをエンティティにアタッチすることで権限を付与します。ただし、リソースベースのポリシーで、同じアカウントのプリンシパルへのアクセス権が付与されている場合は、アイデンティティベースのポリシーを追加する必要はありません。詳細については、『IAM ユーザーガイド**』の「[IAM ロールとリソースベースのポリシーとの相違点](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_compare-resource-policies.html)」を参照してください。

## ポリシーアクション
<a name="security_iam_service-with-iam-id-based-policies-actions"></a>


|  |  | 
| --- |--- |
|  ポリシーアクションに対するサポート  |   あり  | 

管理者は AWS JSON ポリシーを使用して、誰が何にアクセスできるかを指定できます。つまり、どの**プリンシパル**がどんな**リソース**にどんな**条件**で**アクション**を実行できるかということです。

JSON ポリシーの`Action`要素には、ポリシー内のアクセスを許可または拒否するために使用できるアクションが記述されます。ポリシーアクションの名前は通常、関連する AWS API オペレーションと同じです。一致する API オペレーションのない権限のみのアクション**など、いくつかの例外があります。また、ポリシーに複数アクションが必要なオペレーションもあります。これらの追加アクションは、依存アクション**と呼ばれます。

このアクションは、関連付けられたオペレーションを実行するための権限を付与するポリシーで使用されます。

AWS IoT Wireless のポリシーアクションは、アクションの前にプレフィックス `iotwireless:` を使用します。例えば、AWS アカウント に登録されているすべてのワイヤレスデバイスを `ListWirelessDevices` APIオペレーションで一覧表示するアクセス許可を誰かに付与するには、ポリシーに `iotwireless:ListWirelessDevices` アクションを含めます。ポリシーステートメントには、`Action` または `NotAction` 要素を含める必要があります。AWS IoT Wireless は、このサービスで実行できるタスクを記述する独自のアクションのセットを定義します。

単一ステートメントに複数アクションを指定するには、次のようにカンマで区切ります:

```
"Action": [
      "iotwireless:ListMulticastGroups",
      "iotwireless:ListFuotaTasks"
   ]
```

ワイルドカード (\$1) を使用して複数アクションを指定できます。例えば、`Get` という単語で始まるすべてのアクションを指定するには、次のアクションを含めます。

```
"Action": "iotwireless:Get*"
```



AWS IoT Wireless アクションのリストを表示するには、*IAM ユーザーガイド*の「[AWS IoT Wireless によって定義されたアクション](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_awsiotwireless.html#awsiotwireless-actions-as-permissions)」を参照してください。

## ポリシーリソース
<a name="security_iam_service-with-iam-id-based-policies-resources"></a>


|  |  | 
| --- |--- |
|  ポリシーリソースに対するサポート  |   あり  | 

管理者は AWS JSON ポリシーを使用して、誰が何にアクセスできるかを指定できます。つまり、どの**プリンシパル**がどんな**リソース**にどんな**条件**で**アクション**を実行できるかということです。

`Resource` JSON ポリシーの要素は、オブジェクトあるいはアクションが適用されるオブジェクトを指定します。ステートメントには、`Resource` または `NotResource` 要素を含める必要があります。ベストプラクティスとしては、[Amazon リソースネーム (ARN)](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) を使用してリソースを指定します。これは、リソースレベルの権限**と呼ばれる特定のリソースタイプをサポートするアクションに対して実行できます。

オペレーションのリスト化など、リソースレベルの権限をサポートしないアクションの場合は、ステートメントがすべてのリソースに適用されることを示すために、ワイルドカード (\$1) を使用します。

```
"Resource": "*"
```



AWS IoT Wireless サービスには次の ARN があります。

```
arn:${Partition}:iotwireless:${Region}:${Account}:${Resource}/${Resource-id}
```

ARN の形式の詳細については、「[Amazon リソースネーム (ARN) と AWS サービスの名前空間](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)」を参照してください。

例えば、ステートメントでネットワークアナライザ設定 `NAConfig1` を指定するには、次の ARN を使用します。

```
"Resource": "arn:aws:iotwireless:us-east-1:123456789012:NetworkAnalyzerConfiguration/NAConfig1"
```

特定のアカウントに属するすべての FUOTA タスクを指定するには、ワイルドカード (\$1) を使用します。

```
"Resource": "arn:aws:iotwireless:us-east-1:123456789012:FuotaTask/*"
```

リソースの一覧表示など、一部の AWS IoT Wireless アクションは、特定のリソースで実行できません。このような場合は、ワイルドカード \$1を使用する必要があります。

```
"Resource": "*"
```

AWS IoT Wireless API アクションの多くが複数のリソースと関連します。例えば、`AssociateWirelessDeviceWithThing` はワイヤレスデバイスを AWS IoT モノに関連付けるため、IAM ユーザーはデバイスと IoT モノを使用するためのアクセス許可を持っている必要があります。複数リソースを単一ステートメントで指定するには、ARN をカンマで区切ります。

```
"Resource": [
      "WirelessDevice",
      "thing"
```

AWS IoT Wireless リソースタイプとその ARN のリストを表示するには、*IAM ユーザーガイド*の「[AWS IoT Wireless で定義されるリソース](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_awsiotwireless.html#awsiotwireless-resources-for-iam-policies)」を参照してください。どのアクションで各リソースの ARN を指定できるかについては、[AWS IoT Wireless で定義されるアクション](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_awsiotwireless.html#awsiotwireless-actions-as-permissions)を参照してください。

## 条件キー
<a name="security_iam_service-with-iam-id-based-policies-conditionkeys"></a>


|  |  | 
| --- |--- |
|  サービス固有のポリシー条件キーのサポート  |   はい  | 

管理者は AWS JSON ポリシーを使用して、誰が何にアクセスできるかを指定できます。つまり、どの**プリンシパル**がどんな**リソース**にどんな**条件**で**アクション**を実行できるかということです。

`Condition` 要素 (または `Condition` ブロック) を使用すると、ステートメントが有効な条件を指定できます。`Condition` 要素はオプションです。equal や less than などの[条件演算子](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html)を使用して条件式を作成することによって、ポリシーの条件とリクエスト内の値を一致させることができます。

1 つのステートメントに複数の `Condition` 要素が指定されている場合、または 1 つの `Condition` 要素に複数のキーが指定されている場合、AWS では `AND` 論理演算子を使用してそれらを評価します。単一の条件キーに複数の値が指定されている場合、AWS では `OR` 論理演算子を使用して条件を評価します。ステートメントの権限が付与される前にすべての条件が満たされる必要があります。

 条件を指定する際にプレースホルダー変数も使用できます。例えば IAM ユーザーに、IAM ユーザー名がタグ付けされている場合のみリソースにアクセスできる許可を付与できます。詳細については、「*IAM ユーザーガイド*」の「‭[‬IAM ポリシーの要素: 変数およびタグ‭](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_variables.html)‬」を参照してください。

AWS はグローバル条件キーとサービス固有の条件キーをサポートしています。すべての AWS グローバル条件キーを確認するには、『*IAM ユーザーガイド*』の「[AWS グローバル条件コンテキストキー](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html)」を参照してください。

AWS IoT Wireless は独自の条件キーを定義し、一部のグローバル条件キーの使用をサポートしています。すべての AWS グローバル条件キーを確認するには、「IAM ユーザーガイド」の「[AWS グローバル条件コンテキストキー](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html)」を参照してください。AWS IoT Wireless 条件キーのリストを表示するには、*IAM ユーザーガイド*の「[AWS IoT Wireless の条件キー](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_awskeymanagementservice.html#awskeymanagementservice-policy-keys)」を参照してください。どのアクションおよびリソースと条件キーを使用できるかについては、「[AWS IoT Wireless で定義されるアクション](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_awsiotwireless.html#awsiotwireless-actions-as-permissions)」を参照してください。



## アクセスコントロールリスト (ACL)
<a name="security_iam_service-with-iam-acls"></a>


|  |  | 
| --- |--- |
|  ACL のサポート  |   なし   | 

アクセスコントロールリスト (ACL) は、どのプリンシパル (アカウントメンバー、ユーザー、またはロール) がリソースにアクセスするための権限を持つかを制御します。ACL はリソースベースのポリシーに似ていますが、JSON ポリシードキュメント形式は使用しません。

## AWS IoT Wireless を備えた ABAC
<a name="security_iam_service-with-iam-tags"></a>


|  |  | 
| --- |--- |
|  ABAC のサポート (ポリシー内のタグ)  |   はい  | 

属性ベースのアクセス制御 (ABAC) は、属性に基づいてアクセス許可を定義するアクセス許可戦略です。AWS では、これらの属性はタグと呼ばれます。**タグは、IAM エンティティ (ユーザーまたはロール)、および多数の AWS リソースにアタッチできます。エンティティとリソースのタグ付けは、ABAC の最初の手順です。次に、プリンシパルのタグがアクセスを試行するリソースのタグと一致したときにオペレーションを許可するよう、ABAC ポリシーを設計します。

ABAC は、急成長する環境やポリシー管理が煩雑になる状況で役立ちます。

タグに基づいてアクセスを制御するには、`aws:ResourceTag/key-name`、`aws:RequestTag/key-name`、または `aws:TagKeys` の条件キーを使用して、ポリシーの [条件要素](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) でタグ情報を提供します。

サービスがすべてのリソースタイプに対して 3 つの条件キーすべてをサポートする場合、そのサービスの値は **Yes** です。サービスが一部のリソースタイプに対してのみ 3 つの条件キーすべてをサポートする場合、値は **Partial** です。

ABAC の詳細については、『IAM ユーザーガイド**』の「[ABAC とは?](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_attribute-based-access-control.html)」を参照してください。ABAC をセットアップするステップを説明するチュートリアルについては、「IAM ユーザーガイド**」の「[属性に基づくアクセスコントロール (ABAC) を使用する](https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_attribute-based-access-control.html)」を参照してください。

AWS IoT Wireless リソースにタグをアタッチすることも、AWS IoT Wireless へのリクエストでタグを渡すこともできます。タグに基づいてアクセスを制御するには、`YOUR-SERVICE-PREFIX:ResourceTag/key-name`、`aws:RequestTag/key-name`、または `aws:TagKeys` の条件キーを使用して、ポリシーの [条件要素](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) でタグ情報を提供します。AWS IoT Wireless リソースのタグ付けの詳細については、「[AWS IoT Wireless リソースのタグ付け](tagging-iotwireless.md)」を参照してください。

## AWS IoT Wireless での一時的な認証情報の使用
<a name="security_iam_service-with-iam-roles-tempcreds"></a>


|  |  | 
| --- |--- |
|  一時的な認証情報のサポート  |   あり  | 

AWS のサービス には、一時的な認証情報を使用してサインインしても機能しないものがあります。一時的な認証情報で機能する AWS のサービスなどの詳細については、「IAM ユーザーガイド**」の「[IAM と連携する AWS のサービス](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html)」を参照してください。

ユーザー名とパスワード以外の方法で AWS マネジメントコンソール にサインインする場合は、一時的な認証情報を使用していることになります。例えば、会社のシングルサインオン (SSO) リンクを使用して AWS にアクセスすると、そのプロセスは自動的に一時的な認証情報を作成します。また、ユーザーとしてコンソールにサインインしてからロールを切り替える場合も、一時的な認証情報が自動的に作成されます。ロールの切り替えに関する詳細については、「IAM ユーザーガイド**」の「[ロールへの切り替え (コンソール)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-console.html)」を参照してください。

一時的な認証情報は、AWS CLI または AWS API を使用して手動で作成できます。作成後、一時的な認証情報を使用して AWS にアクセスできるようになります。AWS は、長期的なアクセスキーを使用する代わりに、一時的な認証情報を動的に生成することをお勧めします。詳細については、「[IAM の一時的セキュリティ認証情報](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html)」を参照してください。

## AWS IoT Wireless のクロスサービスプリンシパル権限
<a name="security_iam_service-with-iam-principal-permissions"></a>


|  |  | 
| --- |--- |
|  フォワードアクセスセッション (FAS) をサポート  |   はい  | 

 IAM ユーザーまたはロールを使用して AWSでアクションを実行するユーザーは、プリンシパルと見なされます。一部のサービスを使用する際に、アクションを実行してから、別のサービスの別のアクションを開始することがあります。FAS は、AWS のサービスを呼び出すプリンシパルの権限を、AWS のサービスのリクエストと合わせて使用し、ダウンストリームのサービスに対してリクエストを行います。FAS リクエストは、サービスが、完了するために他の AWS のサービス またはリソースとのやりとりを必要とするリクエストを受け取ったときにのみ行われます。この場合、両方のアクションを実行するためのアクセス許可が必要です。FAS リクエストを行う際のポリシーの詳細については、「[転送アクセスセッション](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_forward_access_sessions.html)」を参照してください。

## サービスロール
<a name="security_iam_service-with-iam-roles-service"></a>


|  |  | 
| --- |--- |
|  サービスロールのサポート  |   いいえ   | 

 サービスロールとは、サービスがユーザーに代わってアクションを実行するために引き受ける [IAM ロール](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)です。IAM 管理者は、IAM 内からサービスロールを作成、変更、削除できます。詳細については、「**IAM ユーザーガイド」の「[AWS のサービス にアクセス許可を委任するロールの作成](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html)」を参照してください。

## AWS IoT Wireless のサービスにリンクされたロール
<a name="security_iam_service-with-iam-roles-service-linked"></a>


|  |  | 
| --- |--- |
|  サービスにリンクされたロールのサポート  |   いいえ   | 

 サービスにリンクされたロールは、AWS のサービスにリンクされているサービスロールの一種です。サービスがロールを引き受け、ユーザーに代わってアクションを実行できるようになります。サービスにリンクされたロールは、AWS アカウント に表示され、サービスによって所有されます。IAM 管理者は、サービスにリンクされたロールの許可を表示できますが、編集はできません。

# AWS IoT Wireless の ID ベースのポリシーの例
<a name="security_iam_id-based-policy-examples"></a>

デフォルトでは、IAM ユーザーとロールには AWS IoT Wireless リソースを作成または変更するためのアクセス許可はありません。AWS マネジメントコンソール、AWS CLI、または AWS API を使用してタスクを実行することもできません。IAM 管理者は、ユーザーとロールに必要な、指定されたリソースで特定の API オペレーションを実行する権限をユーザーとロールに付与する IAM ポリシーを作成する必要があります。続いて、管理者はそれらの権限が必要な IAM ユーザーまたはグループにそのポリシーをアタッチする必要があります。

JSON ポリシードキュメントのこれらの例を使用して、IAM アイデンティティベースのポリシーを作成する方法については、「*IAM ユーザーガイド*」の「[JSON タブでのポリシーの作成](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html#access_policies_create-json-editor)」を参照してください。

**Topics**
+ [ポリシーのベストプラクティス](#security_iam_service-with-iam-policy-best-practices)
+ [AWS IoT Wireless コンソールの使用](#security_iam_id-based-policy-examples-console)
+ [ユーザーが自分の許可を表示できるようにする](#security_iam_id-based-policy-examples-view-own-permissions)
+ [AWS IoT Wireless ワイヤレスデバイスのアクションを実行するために必要なアクセス許可](#security_iam_id-based-policy-examples-iot-wireless-resources)

## ポリシーのベストプラクティス
<a name="security_iam_service-with-iam-policy-best-practices"></a>

ID ベースのポリシーは、ユーザーのアカウントで誰かが AWS IoT Wireless リソースを作成、アクセス、または削除できるどうかを決定します。これらのアクションを実行すると、AWS アカウント に料金が発生する可能性があります。アイデンティティベースのポリシーを作成したり編集したりする際には、以下のガイドラインと推奨事項に従ってください。
+ **AWS マネージドポリシーを使用して開始し、最小特権の権限に移行する** – ユーザーとワークロードへの権限の付与を開始するには、多くの一般的なユースケースのために権限を付与する AWS マネージドポリシー**を使用します。これらは AWS アカウントで使用できます。ユースケースに応じた AWS カスタマー管理ポリシーを定義することで、許可をさらに減らすことをお勧めします。詳細については、「*IAM ユーザーガイド*」の「[AWS マネージドポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies)」または「[AWS ジョブ機能の管理ポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html)」を参照してください。
+ **最小特権を適用する** - IAM ポリシーで許可を設定するときは、タスクの実行に必要な許可のみを付与します。これを行うには、特定の条件下で特定のリソースに対して実行できるアクションを定義します。これは、最小特権権限**とも呼ばれています。IAM を使用して許可を適用する方法の詳細については、「*IAM ユーザーガイド*」の「[IAM でのポリシーとアクセス許可](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html)」を参照してください。
+ **IAM ポリシーで条件を使用してアクセスをさらに制限する** - ポリシーに条件を追加して、アクションやリソースへのアクセスを制限できます。例えば、ポリシー条件を記述して、すべてのリクエストを SSL を使用して送信するように指定できます。また、AWS のサービス など特定の CloudFormation を介して使用する場合、条件を使用してサービスアクションへのアクセスを許可することもできます。詳細については、「*IAM ユーザーガイド*」の [[IAM JSON policy elements: Condition]](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) (IAM JSON ポリシー要素：条件) を参照してください。
+ **IAM アクセスアナライザーを使用して IAM ポリシーを検証し、安全で機能的な許可を確保する** - IAM アクセスアナライザーは、新規および既存のポリシーを検証して、ポリシーが IAM ポリシー言語 (JSON) および IAM のベストプラクティスに準拠するようにします。IAM アクセスアナライザーは 100 を超えるポリシーチェックと実用的な推奨事項を提供し、安全で機能的なポリシーの作成をサポートします。詳細については、「*IAM ユーザーガイド*」の「[IAM Access Analyzer ポリシーの検証](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-validation.html)」を参照してください。
+ **多要素認証 (MFA) を要求する** - AWS アカウント で IAM ユーザーまたはルートユーザーを要求するシナリオがある場合は、セキュリティを強化するために MFA をオンにします。API オペレーションが呼び出されるときに MFA を必須にするには、ポリシーに MFA 条件を追加します。詳細については、「IAM ユーザーガイド**」の「[MFA 保護 API アクセスの設定](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_configure-api-require.html)」を参照してください。

IAM でのベストプラクティスの詳細については、『IAM ユーザーガイド**』の「[IAM でのセキュリティのベストプラクティス](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html)」を参照してください。

## AWS IoT Wireless コンソールの使用
<a name="security_iam_id-based-policy-examples-console"></a>

AWS IoT Wireless コンソールにアクセスするには、一連の最小限のアクセス許可が必要です。これらのアクセス許可により、AWS アカウントの AWS IoT Wireless リソースの詳細をリストおよび表示できます。最小限必要な許可よりも厳しく制限されたアイデンティティベースポリシーを作成すると、そのポリシーを添付したエンティティ (IAM ユーザーまたはロール) に対してコンソールが意図したとおりに機能しません。

これらのエンティティが AWS IoT Wireless コンソールを使用できるように、エンティティに次の AWS マネージドポリシーもアタッチします。詳細については、*IAM ユーザーガイド*の「[ユーザーへのアクセス許可の追加](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_change-permissions.html#users_change_permissions-add-console)」を参照してください。

```
AWSIoTWirelessFullAccess
```

AWS CLI または AWS API のみを呼び出すユーザーには、最小限のコンソール許可を付与する必要はありません。代わりに、実行しようとしている API オペレーションに一致するアクションのみへのアクセスが許可されます。

## ユーザーが自分の許可を表示できるようにする
<a name="security_iam_id-based-policy-examples-view-own-permissions"></a>

この例では、ユーザーアイデンティティにアタッチされたインラインおよびマネージドポリシーの表示を、IAM ユーザーに許可するポリシーの作成方法を示します。このポリシーには、コンソールで、または AWS CLI か AWS API を使用してプログラム的に、このアクションを完了する権限が含まれています。

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "ViewOwnUserInfo",
            "Effect": "Allow",
            "Action": [
                "iam:GetUserPolicy",
                "iam:ListGroupsForUser",
                "iam:ListAttachedUserPolicies",
                "iam:ListUserPolicies",
                "iam:GetUser"
            ],
            "Resource": ["arn:aws:iam::*:user/${aws:username}"]
        },
        {
            "Sid": "NavigateInConsole",
            "Effect": "Allow",
            "Action": [
                "iam:GetGroupPolicy",
                "iam:GetPolicyVersion",
                "iam:GetPolicy",
                "iam:ListAttachedGroupPolicies",
                "iam:ListGroupPolicies",
                "iam:ListPolicyVersions",
                "iam:ListPolicies",
                "iam:ListUsers"
            ],
            "Resource": "*"
        }
    ]
}
```

## AWS IoT Wireless ワイヤレスデバイスのアクションを実行するために必要なアクセス許可
<a name="security_iam_id-based-policy-examples-iot-wireless-resources"></a>

ID ベースのポリシーの条件を使用して、タグに基づいて AWS IoT Wireless アクションへのアクセスを制御できます。この例では、デバイスを作成して管理できるポリシーを作成する方法を示します。ただし、アクセス許可は、モノタグ `Owner` にそのユーザーのユーザー名の値がある場合のみ、付与されます。このポリシーでは、このアクションをコンソールで実行するために必要なアクセス権限も付与します。

```
{
 "Version": "2012-10-17",
 "Statement": [{
    "Sid": "VisualEditor0",
    "Effect": "Allow",
    "Action": [
              "iotwireless:CreateWirelessDevice",
              "iotwireless:GetWirelessDevice",
              "iotwireless:ListWirelessDevices",
              "iotwireless:UpdateWirelessDevice",
              "iotwireless:DeleteWirelessDevice"             
           ],
    "Resource": "*"
    }
 ]
}
```

このポリシーには、`CreateWirelessDevice`、`GetWirelessDevice`、`ListWirelessDevices`、`UpdateWirelessDevice`、および `DeleteWirelessDevice` アクションを使用するアクセス許可を付与するステートメントが 1 つあります。AWS IoT Wireless はこれらのメソッドを呼び出してワイヤレスデバイスを作成および管理します。

ID ベースのポリシーでアクセス許可を得るプリンシパルを指定していないため、ポリシーでは Principal エレメントを指定していません。ユーザーにポリシーをアタッチすると、そのユーザーが暗黙のプリンシパルになります。IAM ロールにアクセス権限ポリシーをアタッチすると、ロールの信頼ポリシーで識別されたプリンシパルがアクセス権限を得ることになります。

# AWS の AWS IoT Wireless マネージドポリシー
<a name="security-iam-awsmanpol"></a>







ユーザー、グループ、ロールに権限を追加するには、自分でポリシーを作成するよりも、AWS マネージドポリシーを使用する方が簡単です。チームに必要な権限のみを提供する [IAM カスタマーマネージドポリシーを作成する](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create-console.html)には、時間と専門知識が必要です。すぐに使用を開始するために、AWS マネージドポリシーを使用できます。これらのポリシーは、一般的なユースケースをターゲット範囲に含めており、AWS アカウント で利用できます。AWS マネージドポリシーの詳細については、「IAM ユーザーガイド」の[「AWS マネージドポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies)」を参照してください。

AWS のサービスは、AWS マネージドポリシーを維持および更新します。AWS マネージドポリシーの許可を変更することはできません。サービスでは、新しい機能を利用できるようにするために、AWS マネージドポリシーに権限が追加されることがあります。この種類の更新は、ポリシーがアタッチされている、すべてのアイデンティティ (ユーザー、グループおよびロール) に影響を与えます。新しい機能が立ち上げられた場合や、新しいオペレーションが使用可能になった場合に、各サービスが AWS マネージドポリシーを更新する可能性が最も高くなります。サービスは、AWS マネージドポリシーから権限を削除しないため、ポリシーの更新によって既存の権限が破棄されることはありません。

さらに、AWS は、複数のサービスにまたがるジョブ機能の特徴に対するマネージドポリシーもサポートしています。例えば、**ReadOnlyAccess** AWS マネージドポリシーでは、すべての AWS のサービスおよびリソースへの読み取り専用アクセスを許可します。サービスが新しい機能を起動する場合、AWS は、新たなオペレーションとリソース用に、読み取り専用の許可を追加します。ジョブ機能のポリシーの一覧および詳細については、「*IAM ユーザーガイド*」の「[AWS のジョブ機能のマネージドポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html)」を参照してください。









## AWS マネージドポリシー: AWSIoTWirelessDataAccess
<a name="security-iam-awsmanpol-AWSIoTWirelessDataAccess"></a>





`AWSIoTWirelessDataAccess` ポリシーは IAM ID にアタッチできます。



このポリシーは、関連付けられた ID アクセス許可を付与し、`SendDataToWirelessDevice` API を使用して LoRaWAN および Sidewalk デバイスにデータを送信するためのアクセスを許可します。AWS マネジメントコンソール でこのポリシーを表示するには、「[AWSIoTWirelessDataAccess](https://console.aws.amazon.com/iam/home#/policies/arn:aws:iam::aws:policy/AWSIoTWirelessDataAccess$jsonEditor?section=permissions)」を参照してください。



**アクセス許可の詳細**

このポリシーには、以下のアクセス許可が含まれています。




+ `iotwireless` – AWS IoT Wireless データを取得します。



```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "iotwireless:SendDataToWirelessDevice"
            ],
            "Resource": "*"
        }
    ]
}
```

## AWS マネージドポリシー: AWSIoTWirelessFullAccess
<a name="security-iam-awsmanpol-AWSIoTWirelessFullAccess"></a>





`AWSIoTWirelessFullAccess` ポリシーは IAM ID にアタッチできます。



このポリシーは、すべての AWS IoT Wireless オペレーションへのアクセスを許可する、関連付けられた ID のアクセス許可を付与します。AWS マネジメントコンソール でこのポリシーを表示するには、「[AWSIoTWirelessFullAccess](https://console.aws.amazon.com/iam/home#/policies/arn:aws:iam::aws:policy/AWSIoTWirelessFullAccess?section=permissions)」を参照してください。



**アクセス許可の詳細**

このポリシーには、以下のアクセス許可が含まれています。




+ `iotwireless` – AWS IoT Wireless データを取得し、すべての AWS IoT Wireless オペレーションを実行します。



```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "iotwireless:*"
            ],
            "Resource": "*"
        }
    ]
}
```

## AWS マネージドポリシー: AWSIoTWirelessFullPublishAccess
<a name="security-iam-awsmanpol-AWSIoTWirelessFullPublishAccess"></a>





`AWSIoTWirelessFullPublishAccess` ポリシーは IAM ID にアタッチできます。



このポリシーは、ユーザーに代わって AWS IoT ルールにパブリッシュするための制限付きアクセスを許可する、関連付けられた ID のアクセス許可を付与します。AWS マネジメントコンソール のこのポリシーを表示するには、「[https://console.aws.amazon.com/iam/home#/policies/arn:aws:iam::aws:policy/AWSIoTWirelessFullPublishAccess?section=permissions](https://console.aws.amazon.com/iam/home#/policies/arn:aws:iam::aws:policy/AWSIoTWirelessFullPublishAccess?section=permissions)」を参照してください。



**アクセス許可の詳細**

このポリシーには、以下のアクセス許可が含まれています。




+ `iot` – エンドポイント URL を取得し、AWS IoT ルールエンジンにパブリッシュするオペレーションを実行します。



```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "iot:DescribeEndpoint",
                "iot:Publish"
            ],
            "Resource": "*"
        }
    ]
}
```

## AWS マネージドポリシー: AWSIoTWirelessLogging
<a name="security-iam-awsmanpol-AWSIoTWirelessLogging"></a>





`AWSIoTWirelessLogging` ポリシーは IAM ID にアタッチできます。



このポリシーは、Amazon CloudWatch Logs ロググループの作成を許可し、グループにログをストリーミングするための関連付けられた ID のアクセス許可を付与します。このポリシーは CloudWatch ログ記録用のロールにアタッチされます。AWS マネジメントコンソール のこのポリシーを表示するには、「[https://console.aws.amazon.com/iam/home#/policies/arn:aws:iam::aws:policy/AWSIoTWirelessLogging?section=permissions](https://console.aws.amazon.com/iam/home#/policies/arn:aws:iam::aws:policy/AWSIoTWirelessLogging?section=permissions)」を参照してください。



**アクセス許可の詳細**

このポリシーには、以下のアクセス許可が含まれています。




+ `logs` — CloudWatch ログを取得します。また、CloudWatch Logs のグループを作成し、グループにログをストリーミングすることができます。



```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "logs:CreateLogGroup",
                "logs:CreateLogStream",
                "logs:DescribeLogGroups",
                "logs:DescribeLogStreams",
                "logs:PutLogEvents"
            ],
            "Resource": "arn:aws:logs:*:*:log-group:/aws/iotwireless*"
        }
    ]
}
```

## AWS マネージドポリシー: AWSIoTWirelessReadOnlyAccess
<a name="security-iam-awsmanpol-AWSIoTWirelessReadOnlyAccess"></a>





`AWSIoTLogging` ポリシーは IAM ID にアタッチできます。



このポリシーは、すべての AWS IoT Wireless オペレーションへの読み取り専用アクセスを許可する、関連付けられた ID のアクセス許可を付与します。AWS マネジメントコンソール のこのポリシーを表示するには、「[https://console.aws.amazon.com/iam/home#/policies/arn:aws:iam::aws:policy/AWSIoTWirelessReadOnlyAccess?section=permissions](https://console.aws.amazon.com/iam/home#/policies/arn:aws:iam::aws:policy/AWSIoTWirelessReadOnlyAccess?section=permissions)」を参照してください。



**アクセス許可の詳細**

このポリシーには、以下のアクセス許可が含まれています。




+ `logs` – AWS IoT Wireless `List` および `Get` API オペレーションを実行します。



```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "iotwireless:List*",
                "iotwireless:Get*"
            ],
            "Resource": "*"
        }
    ]
}
```

## AWS マネージドポリシー: AWSIoTWirelessGatewayCertManager
<a name="security-iam-awsmanpol-AWSIoTWirelessGatewayCertManager"></a>





`AWSIoTWirelessGatewayCertManager` ポリシーは IAM ID にアタッチできます。



このポリシーは、AWS IoT 証明書を作成、一覧表示、および記述することを許可する関連付けられた ID アクセス許可を付与します。AWS マネジメントコンソール のこのポリシーを表示するには、「[https://console.aws.amazon.com/iam/home#/policies/arn:aws:iam::aws:policy/AWSIoTWirelessGatewayCertManager?section=permissions](https://console.aws.amazon.com/iam/home#/policies/arn:aws:iam::aws:policy/AWSIoTWirelessGatewayCertManager?section=permissions)」を参照してください。



**アクセス許可の詳細**

このポリシーには、以下のアクセス許可が含まれています。




+ `iot` – 証明書を作成、説明、一覧表示するアクションを実行します。



```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "IoTWirelessGatewayCertManager",
            "Effect": "Allow",
            "Action": [
                "iot:CreateKeysAndCertificate",
                "iot:DescribeCertificate",
                "iot:ListCertificates"
            ],
            "Resource": "*"
        }
    ]
}
```

## AWS IoT Wireless: AWS マネージドポリシーへの更新
<a name="security-iam-awsmanpol-updates"></a>



このサービスがこれらの変更の追跡を開始してからの、AWS IoT Wireless の AWS マネージドポリシーの更新に関する詳細を表示します。このページの変更に関する自動通知については、「[AWS IoT Wireless ドキュメン履歴ページ](doc-history.md)」ページで RSS フィードをサブスクライブしてください。




| 変更 | 説明 | 日付 | 
| --- | --- | --- | 
|  AWS IoT Wireless は変更の追跡を開始しました  |  AWS IoT Wireless が AWS マネージドポリシーの変更の追跡を開始しました。  | 2022 年 5 月 18 日 | 

# AWS IoT Wireless の ID とアクセスのトラブルシューティング
<a name="security_iam_troubleshoot"></a>

次の情報は、AWS IoT Wireless と IAM の使用に伴って発生する可能性がある一般的な問題の診断や修復に役立ちます。

**Topics**
+ [AWS IoT Wireless でアクションを実行する権限がない](#security_iam_troubleshoot-no-permissions)
+ [マイアクセスキーを表示したい](#security_iam_troubleshoot-access-keys)
+ [管理者として AWS IoT Wireless へのアクセスを他のユーザーに許可する](#security_iam_troubleshoot-admin-delegate)
+ [自分の AWS アカウント以外のユーザーに AWS IoT Wireless リソースへのアクセスを許可したい](#security_iam_troubleshoot-cross-account-access)

## AWS IoT Wireless でアクションを実行する権限がない
<a name="security_iam_troubleshoot-no-permissions"></a>

AWS マネジメントコンソール から、アクションを実行することが認可されていないと通知された場合、管理者に問い合わせ、サポートを依頼する必要があります。担当の管理者はお客様のユーザー名とパスワードを発行した人です。

以下の例のエラーは、`mateojackson` IAM ユーザーがコンソールを使用して、*ワイヤレスデバイス*の詳細を表示しようとしているが、`YOUR-SERVICE-PREFIX:GetWirelessDevice` アクセス許可がない場合に発生します。

```
User: arn:aws:iam::123456789012:user/mateojackson is not authorized to perform: YOUR-SERVICE-PREFIX:GetWirelessDevice on resource: my-LoRaWAN-device
```

この場合、Mateo は、`YOUR-SERVICE-PREFIX:GetWirelessDevice` アクションを使用して `my-LoRaWAN-device` リソースへのアクセスが許可されるように、管理者にポリシーの更新を依頼します。

## マイアクセスキーを表示したい
<a name="security_iam_troubleshoot-access-keys"></a>

IAM ユーザーアクセスキーを作成した後は、いつでもアクセスキー ID を表示できます。ただし、シークレットアクセスキーを再表示することはできません。シークレットアクセスキーを紛失した場合は、新しいアクセスキーペアを作成する必要があります。

アクセスキーは、アクセスキー ID (例: `AKIAIOSFODNN7EXAMPLE`) とシークレットアクセスキー (例: `wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY`) の 2 つの部分で構成されています。ユーザー名とパスワードと同様に、リクエストを認証するために、アクセスキー ID とシークレットアクセスキーの両方を使用する必要があります。ユーザー名とパスワードと同様に、アクセスキーは安全に管理してください。

**重要**  
[正規のユーザー ID を検索する](https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-identifiers.html#FindCanonicalId)ためであっても、アクセスキーを第三者に提供しないでください。これを行うと、AWS アカウント への永続的なアクセス権が第三者に付与される可能性があります。

アクセスキーペアを作成する場合、アクセスキー ID とシークレットアクセスキーを安全な場所に保存するように求めるプロンプトが表示されます。このシークレットアクセスキーは、作成時にのみ使用できます。シークレットアクセスキーを紛失した場合、IAM ユーザーに新規アクセスキーを追加する必要があります。アクセスキーは最大 2 つまで持つことができます。既に 2 つある場合は、新規キーペアを作成する前に、いずれかを削除する必要があります。手順を表示するには、「[IAM ユーザーガイド](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html#Using_CreateAccessKey)」の「*アクセスキーの管理*」を参照してください。

## 管理者として AWS IoT Wireless へのアクセスを他のユーザーに許可する
<a name="security_iam_troubleshoot-admin-delegate"></a>

AWS IoT Wireless へのアクセスを他のユーザーに許可するには、アクセスを必要とする人またはアプリケーションの IAM エンティティ (ユーザーまたはロール) を作成する必要があります。ユーザーまたはアプリケーションは、そのエンティティの認証情報を使用して AWS にアクセスします。次に、AWS IoT Wireless の適切なアクセス許可を付与するポリシーを、そのエンティティにアタッチする必要があります。

すぐに開始するには、『*IAM ユーザーガイド*』の「[Creating your first IAM delegated user and group (IAM が委任した最初のユーザーおよびグループの作成)](https://docs.aws.amazon.com/IAM/latest/UserGuide/getting-started_create-delegated-user.html)」を参照してください。

## 自分の AWS アカウント以外のユーザーに AWS IoT Wireless リソースへのアクセスを許可したい
<a name="security_iam_troubleshoot-cross-account-access"></a>

他のアカウントのユーザーや組織外の人が、リソースにアクセスするために使用できるロールを作成できます。ロールの引き受けを委託するユーザーを指定できます。リソースベースのポリシーまたはアクセス制御リスト (ACL) をサポートするサービスの場合、それらのポリシーを使用して、リソースへのアクセスを付与できます。

詳細については、以下を参照してください。
+ AWS IoT Wireless がこれらの機能をサポートしているかどうかを確認するには、「[AWS IoT Wireless と IAM の連携方法](security_iam_service-with-iam.md)」を参照してください。
+ 所有している AWS アカウント 全体のリソースへのアクセス権を提供する方法については、『*IAM ユーザーガイド*』の「[所有している別の AWS アカウント アカウントへのアクセス権を IAM ユーザーに提供](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_aws-accounts.html)」を参照してください。
+ サードパーティーの AWS アカウント にリソースへのアクセス権を提供する方法については、「*IAM ユーザーガイド*」の「[サードパーティーが所有する AWS アカウント にアクセス権を提供する](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_third-party.html)」を参照してください。
+ ID フェデレーションを介してアクセスを提供する方法については、「*IAM ユーザーガイド*」の「[外部で認証されたユーザー (ID フェデレーション) へのアクセスの許可](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_federated-users.html)」を参照してください。
+ クロスアカウントアクセスでのロールとリソースベースのポリシーの使用の違いの詳細については、『*IAM ユーザーガイド*』の「[IAM ロールとリソースベースのポリシーとの相違点](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_compare-resource-policies.html)」を参照してください。