翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS IoT ID ベースのポリシーの例
デフォルトでは、IAMユーザーとロールには AWS IoT リソースを作成または変更するアクセス許可がありません。また、 AWS Management Console、 AWS CLI、または を使用してタスクを実行することはできません AWS API。IAM 管理者は、ユーザーとロールに必要な特定のリソースに対して特定のAPIオペレーションを実行するアクセス許可を付与するIAMポリシーを作成する必要があります。続いて、管理者はそれらのアクセス許可が必要なユーザーまたはグループにそのポリシーをアタッチします。
これらのポリシードキュメント例を使用して IAM ID ベースのJSONポリシーを作成する方法については、IAM「 ユーザーガイド」のJSON「 タブでのポリシーの作成」を参照してください。
トピック
ポリシーのベストプラクティス
ID ベースのポリシーは、誰かがアカウント内の AWS IoT リソースを作成、アクセス、または削除できるかどうかを決定します。これらのアクションを実行すると、 AWS アカウントに料金が発生する可能性があります。アイデンティティベースポリシーを作成したり編集したりする際には、以下のガイドラインと推奨事項に従ってください:
-
AWS マネージドポリシーを開始し、最小権限のアクセス許可に移行 – ユーザーとワークロードへのアクセス許可の付与を開始するには、多くの一般的なユースケースのアクセス許可を付与するAWS マネージドポリシーを使用します。これらは で使用できます AWS アカウント。ユースケースに固有の AWS カスタマー管理ポリシーを定義することで、アクセス許可をさらに減らすことをお勧めします。詳細については、「 ユーザーガイド」の「 管理AWS ポリシー」または「 ジョブ機能の 管理ポリシー」を参照してください。 AWS IAM
-
最小権限のアクセス許可を適用する - IAMポリシーでアクセス許可を設定する場合、タスクの実行に必要なアクセス許可のみを付与します。これを行うには、特定の条件下で特定のリソースに対して実行できるアクションを定義します。これは、最小特権アクセス許可とも呼ばれています。IAM を使用してアクセス許可を適用する方法の詳細については、IAM「 ユーザーガイド」の「 のポリシーとアクセス許可IAM」を参照してください。
-
IAM ポリシーの条件を使用してアクセスをさらに制限する – ポリシーに条件を追加して、アクションとリソースへのアクセスを制限できます。例えば、ポリシー条件を記述して、すべてのリクエストを を使用して送信する必要があることを指定できますSSL。また、 などの特定の を通じてサービスアクションが使用されている場合 AWS のサービス、 条件を使用してサービスアクションへのアクセスを許可することもできます AWS CloudFormation。詳細については、「 ユーザーガイド」のIAMJSON「ポリシー要素: 条件」を参照してください。 IAM
-
IAM Access Analyzer を使用してIAMポリシーを検証し、安全で機能的なアクセス許可を確保する – IAM Access Analyzer は、ポリシーがポリシー言語 (JSON) とIAMベストプラクティスに準拠するように、新規および既存のIAMポリシーを検証します。IAM Access Analyzer には、安全で機能的なポリシーの作成に役立つ 100 を超えるポリシーチェックと実用的なレコメンデーションが用意されています。詳細については、IAM「 ユーザーガイド」のIAM「Access Analyzer ポリシーの検証」を参照してください。
-
多要素認証が必要 (MFA) – でIAMユーザーまたはルートユーザーを必要とするシナリオがある場合は AWS アカウント、 をオンにMFAしてセキュリティを強化します。API オペレーションが呼び出されるMFAタイミングを要求するには、ポリシーにMFA条件を追加します。詳細については、IAM「 ユーザーガイド」のMFA「保護APIアクセスの設定」を参照してください。
のベストプラクティスの詳細についてはIAM、「 ユーザーガイド」の「 のセキュリティのベストプラクティスIAM」を参照してください。 IAM
AWS IoT コンソールを使用する
AWS IoT コンソールにアクセスするには、最小限のアクセス許可のセットが必要です。これらのアクセス許可により、 内の AWS IoT リソースの詳細を一覧表示および表示できます AWS アカウント。最小限必要な許可よりも制限が厳しいアイデンティティベースのポリシーを作成すると、そのポリシーを持つエンティティ (ユーザーまたはロール) に対してコンソールが意図したとおりに機能しません。
これらのエンティティが AWS IoT 引き続きコンソールを使用できるようにするには、エンティティに次の AWS 管理ポリシーもアタッチします。 AWSIoTFullAccess
詳細については、IAM「 ユーザーガイド」の「ユーザーへのアクセス許可の追加」を参照してください。
AWS CLI または のみを呼び出すユーザーに対して、最小限のコンソールアクセス許可を付与する必要はありません AWS API。代わりに、実行しようとしているAPIオペレーションに一致するアクションのみへのアクセスを許可します。
自分の権限の表示をユーザーに許可する
この例では、IAMユーザーがユーザー ID にアタッチされているインラインポリシーとマネージドポリシーを表示できるようにするポリシーを作成する方法を示します。このポリシーには、コンソールで、または 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 リソースの表示
アイデンティティベースのポリシーの条件を使用して、タグに基づいて AWS IoT リソースへのアクセスをコントロールできます。この例では、モノを表示できるポリシーを作成する方法を示します。ただし、アクセス許可は、モノタグ Owner
にそのユーザーのユーザー名の値がある場合のみ、付与されます。このポリシーでは、このアクションをコンソールで実行するために必要なアクセス権限も付与します。
{ "Version": "2012-10-17", "Statement": [ { "Sid": "ListBillingGroupsInConsole", "Effect": "Allow", "Action": "iot:ListBillingGroups", "Resource": "*" }, { "Sid": "ViewBillingGroupsIfOwner", "Effect": "Allow", "Action": "iot:DescribeBillingGroup", "Resource": "arn:aws:iot:*:*:billinggroup/*", "Condition": { "StringEquals": {"aws:ResourceTag/Owner": "${aws:username}"} } } ] }
このポリシーは、アカウントのIAMユーザーにアタッチできます。という名前のユーザーが AWS IoT 請求グループを表示richard-roe
しようとする場合は、請求グループに Owner=richard-roe
または のタグを付ける必要がありますowner=richard-roe
。それ以外の場合、アクセスは拒否されます。条件キー名では大文字と小文字は区別されないため、条件タグキー Owner
は Owner
と owner
に一致します。詳細については、「 ユーザーガイド」のIAMJSON「ポリシー要素: 条件」を参照してください。 IAM
タグに基づく AWS IoT Device Advisor リソースの表示
アイデンティティベースのポリシーの条件を使用して、タグに基づいて AWS IoT
Device Advisor リソースへのアクセスをコントロールできます。次の例は、特定のスイート定義の表示を許可するポリシーを作成する方法を示しています。ただし、アクセス許可が付与されるのは、スイート定義タグが SuiteType
を MQTT
の値に設定している場合のみです。このポリシーでは、このアクションをコンソールで実行するために必要なアクセス許可も付与します。
{ "Version": "2012-10-17", "Statement": [ { "Sid": "ViewSuiteDefinition", "Effect": "Allow", "Action": "iotdeviceadvisor:GetSuiteDefinition", "Resource": "arn:aws:iotdeviceadvisor:*:*:suitedefinition/*", "Condition": { "StringEquals": {"aws:ResourceTag/SuiteType": "MQTT"} } } ] }