Amazon Lightsail リソースレベルのアクセス許可ポリシーの例 - Amazon Lightsail

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

Amazon Lightsail リソースレベルのアクセス許可ポリシーの例

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

重要

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

Lightsail アクション、ARN および IAM ポリシーステートメントで使用できる 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 を取得するには、GetInstance Lightsail API アクションを使用し、instanceName パラメータを使用してインスタンスの名前を指定します。インスタンス ARN は、次の例に示すように、そのアクションの結果に一覧表示されます。詳細については、Amazon Lightsail API リファレンスGetInstance を参照してください。


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


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