IAM ポリシーを使用して特定の Lightsail リソースへのアクセスを許可する - Amazon Lightsail

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

IAM ポリシーを使用して特定の Lightsail リソースへのアクセスを許可する

リソースレベルのアクセス許可とは、ユーザーがアクションを実行できるリソースを指定できる機能を意味します。Amazon Lightsail は、リソースレベルのアクセス許可をサポートしています。つまり、特定の Lightsail アクションでは、満たす必要がある条件、またはユーザーが使用または編集できる特定のリソースに基づいて、ユーザーがそれらのアクションを使用できるタイミングを制御できます。例えば、特定の Amazon リソースネーム () を持つインスタンスまたはデータベースを管理するアクセス許可をユーザーに付与できますARN。

重要

Lightsail は、一部のAPIアクションのリソースレベルのアクセス許可をサポートしていません。詳細については、「リソースレベルのアクセス許可およびタグに基づく承認のサポート」を参照してください。

Lightsail アクションによって作成または変更されるリソース、およびIAMポリシーステートメントで使用できる ARNsおよび Lightsail 条件キーの詳細については、 IAM ユーザーガイドAmazon Lightsail のアクション、リソース、および条件キー」を参照してください。

特定のインスタンスの管理を許可する

次のポリシーでは、インスタンスの再起動/開始/停止、インスタンスポートの管理、特定のインスタンスのインスタンススナップショットの作成へのアクセス権を付与します。また、Lightsail アカウントの他のインスタンス関連情報やリソースへの読み取り専用アクセスも提供します。ポリシーで、InstanceARN インスタンスの Amazon リソースネーム (ARN) を指定します。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "lightsail:GetActiveNames", "lightsail:GetAlarms", "lightsail:GetAutoSnapshots", "lightsail:GetBlueprints", "lightsail:GetBundles", "lightsail:GetCertificates", "lightsail:GetCloudFormationStackRecords", "lightsail:GetContactMethods", "lightsail:GetDisk", "lightsail:GetDisks", "lightsail:GetDiskSnapshot", "lightsail:GetDiskSnapshots", "lightsail:GetDistributionBundles", "lightsail:GetDistributionLatestCacheReset", "lightsail:GetDistributionMetricData", "lightsail:GetDistributions", "lightsail:GetDomain", "lightsail:GetDomains", "lightsail:GetExportSnapshotRecords", "lightsail:GetInstance", "lightsail:GetInstanceAccessDetails", "lightsail:GetInstanceMetricData", "lightsail:GetInstancePortStates", "lightsail:GetInstances", "lightsail:GetInstanceSnapshot", "lightsail:GetInstanceSnapshots", "lightsail:GetInstanceState", "lightsail:GetKeyPair", "lightsail:GetKeyPairs", "lightsail:GetLoadBalancer", "lightsail:GetLoadBalancerMetricData", "lightsail:GetLoadBalancers", "lightsail:GetLoadBalancerTlsCertificates", "lightsail:GetOperation", "lightsail:GetOperations", "lightsail:GetOperationsForResource", "lightsail:GetRegions", "lightsail:GetRelationalDatabase", "lightsail:GetRelationalDatabaseBlueprints", "lightsail:GetRelationalDatabaseBundles", "lightsail:GetRelationalDatabaseEvents", "lightsail:GetRelationalDatabaseLogEvents", "lightsail:GetRelationalDatabaseLogStreams", "lightsail:GetRelationalDatabaseMetricData", "lightsail:GetRelationalDatabaseParameters", "lightsail:GetRelationalDatabases", "lightsail:GetRelationalDatabaseSnapshot", "lightsail:GetRelationalDatabaseSnapshots", "lightsail:GetStaticIp", "lightsail:GetStaticIps", "lightsail:IsVpcPeered" ], "Resource": "*" }, { "Sid": "VisualEditor2", "Effect": "Allow", "Action": [ "lightsail:CloseInstancePublicPorts", "lightsail:CreateInstanceSnapshot", "lightsail:OpenInstancePublicPorts", "lightsail:PutInstancePublicPorts", "lightsail:RebootInstance", "lightsail:StartInstance", "lightsail:StopInstance" ], "Resource": "InstanceARN" } ] }

インスタンスARNの を取得するには、Lightsail GetInstance APIアクションを使用し、 instanceNameパラメータを使用してインスタンスの名前を指定します。インスタンスは、次の例に示すように、そのアクションの結果に一覧表示ARNされます。詳細については、GetInstanceAmazon Lightsail APIリファレンス」の「」を参照してください。

GetInstance 結果ARNのインスタンス。

特定のデータベースの管理を許可する

次のポリシーは、特定のデータベースの再起動/開始/停止および更新へのアクセス権を付与します。また、Lightsail アカウントの他のデータベース関連情報やリソースへの読み取り専用アクセスも提供します。ポリシーで、DatabaseARN データベースの Amazon リソースネーム (ARN) を指定します。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "lightsail:GetActiveNames", "lightsail:GetAlarms", "lightsail:GetAutoSnapshots", "lightsail:GetBlueprints", "lightsail:GetBundles", "lightsail:GetCertificates", "lightsail:GetCloudFormationStackRecords", "lightsail:GetContactMethods", "lightsail:GetDisk", "lightsail:GetDisks", "lightsail:GetDiskSnapshot", "lightsail:GetDiskSnapshots", "lightsail:GetDistributionBundles", "lightsail:GetDistributionLatestCacheReset", "lightsail:GetDistributionMetricData", "lightsail:GetDistributions", "lightsail:GetDomain", "lightsail:GetDomains", "lightsail:GetExportSnapshotRecords", "lightsail:GetInstance", "lightsail:GetInstanceAccessDetails", "lightsail:GetInstanceMetricData", "lightsail:GetInstancePortStates", "lightsail:GetInstances", "lightsail:GetInstanceSnapshot", "lightsail:GetInstanceSnapshots", "lightsail:GetInstanceState", "lightsail:GetKeyPair", "lightsail:GetKeyPairs", "lightsail:GetLoadBalancer", "lightsail:GetLoadBalancerMetricData", "lightsail:GetLoadBalancers", "lightsail:GetLoadBalancerTlsCertificates", "lightsail:GetOperation", "lightsail:GetOperations", "lightsail:GetOperationsForResource", "lightsail:GetRegions", "lightsail:GetRelationalDatabase", "lightsail:GetRelationalDatabaseBlueprints", "lightsail:GetRelationalDatabaseBundles", "lightsail:GetRelationalDatabaseEvents", "lightsail:GetRelationalDatabaseLogEvents", "lightsail:GetRelationalDatabaseLogStreams", "lightsail:GetRelationalDatabaseMetricData", "lightsail:GetRelationalDatabaseParameters", "lightsail:GetRelationalDatabases", "lightsail:GetRelationalDatabaseSnapshot", "lightsail:GetRelationalDatabaseSnapshots", "lightsail:GetStaticIp", "lightsail:GetStaticIps", "lightsail:IsVpcPeered" ], "Resource": "*" }, { "Sid": "VisualEditor2", "Effect": "Allow", "Action": [ "lightsail:RebootRelationalDatabase", "lightsail:StartRelationalDatabase", "lightsail:StopRelationalDatabase", "lightsail:UpdateRelationalDatabase" ], "Resource": "DatabaseARN" } ] }

データベースARNの を取得するには、Lightsail GetRelationalDatabase APIアクションを使用し、 relationalDatabaseNameパラメータを使用してデータベースの名前を指定します。次の例に示すように、データベースはそのアクションの結果に一覧表示ARNされます。詳細については、GetRelationalDatabaseAmazon Lightsail APIリファレンス」の「」を参照してください。

GetRelationalDatabase 結果ARNのデータベース。