ベストプラクティス: アクセス権限の管理 - AWS OpsWorks

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

ベストプラクティス: アクセス権限の管理

重要

この AWS OpsWorks Stacks サービスは 2024 年 5 月 26 日にサポート終了となり、新規および既存のお客様の両方で無効になっています。できるだけ早くワークロードを他のソリューションに移行することを強くお勧めします。移行についてご質問がある場合は、 AWS re:Post または AWS Premium Support を通じて AWS Support チームにお問い合わせください。

アカウントのリソースにアクセスするには、AWS 認証情報のフォームが必要です。従業員へのアクセスを提供するための一般的なガイドラインいくつか次に示します。

  • 第一に、AWS リソースへのアクセスにアカウントのルート認証情報を使用しないことをお勧めします。

    代わりに、従業員に IAMユーザー を作成し、適切なアクセス権限を付与するポリシーをアタッチします。各従業員は、自分の ユーザー認証情報を使用してリソースにアクセスできるようになります。

  • 従業員には、ジョブを実行するのに必要なリソースのみにアクセスするためのアクセス権限が必要です。

    たとえば、アプリケーション開発者は、アプリケーションを実行するスタックにのみアクセスする必要があります。

  • 従業員には、ジョブを実行するのに必要なアクションのみを使用するためのアクセス権限が必要です。

    アプリケーション開発者は、開発スタックに対する完全なアクセス権限が必要な場合もあれば、アプリを対応する本稼働用スタックにデプロイするためのアクセス権限が必要な場合もあります。または、本稼働用スタックでインスタンスを起動または停止したり、レイヤーを作成または削除したりするためのアクセス権限は必要ではない場合もあります。

アクセス許可の管理の概要については、「AWS セキュリティの認証情報」を参照してください。

AWS OpsWorks スタックまたは IAM を使用して、ユーザーのアクセス許可を管理できます。この 2 つのオプションは相互排他的ではありません。両方を使用することが望ましい場合もあります。

AWS OpsWorks スタックのアクセス許可の管理

各スタックには [Permissions] ページがあり、これを使用してスタックにアクセスする権限をユーザーに付与したり、ユーザーが実行できるアクションを指定したりできます。ユーザーのアクセス権限を指定するには、次のいずれかのアクセス権限レベルを設定します。各レベルは、標準のアクションセットにアクセス許可を付与する IAM ポリシーを表します。

  • [Deny] は、どのような方法であってもスタックを操作するためのアクセス権限を拒否します。

  • [Show] では、任意の方法で、スタック設定を表示するためのアクセス権限が付与されますが、スタック状態を変更するアクセス権限は付与されません。

  • [Deploy] では [Show] アクセス権限に加えて、アプリケーションをデプロイすることがユーザーに許可されます。

  • [Manage] には [Deploy] アクセス権限が含まれ、また、さまざまなスタック管理アクション (インスタンスやレイヤーの作成または削除など) を実行することがユーザーに許可されます。

注記

アクセス許可の管理レベルでは、スタックの作成やクローン作成など、少数の高レベルの AWS OpsWorks スタックアクションに対するアクセス許可は付与されません。これらのアクセス許可を付与するには、IAM ポリシーを使用する必要があります。

アクセス権限レベルの設定に加え、スタックの [Permissions] ページを使用して、ユーザーに SSH/RDP および sudo/admin 権限を付与できます。 AWS OpsWorks スタックのアクセス権限の管理の詳細については、「スタックごとの権限の付与」を参照してください。SSH アクセスを管理する方法の詳細については、「SSH アクセスの管理」を参照してください。

IAM アクセス許可の管理

IAM アクセス許可の管理では、 IAM コンソール、 API、または CLI を使用して、明示的にアクセス許可を指定する JSON 形式のポリシーをユーザーにアタッチします。IAM アクセス許可を管理する方法の詳細については、「IAM とは何ですか?」 を参照してください。

推奨事項: AWS OpsWorks スタックのアクセス許可管理から始めます。ユーザーのアクセス権限の微調整、または Manage アクセス権限レベルに含まれていないアクセス権限をユーザーに付与する場合は、これらの 2 つの方法を組み合わて使用できます。 AWS OpsWorks 次に、スタックは両方のポリシーを評価して、ユーザーのアクセス許可を決定します。

重要

ユーザーに競合するアクセス権限を持つ複数のポリシーがある場合、拒否の権限が常に優先されます。例えば、 IAM ポリシーをユーザーに添付して特定のスタックへのアクセスを許可する一方で、 [Permissions (アクセス権限)] ページを使用して [Deny (拒否)] アクセス権限レベルをユーザーに割り当てるとします。この場合、Deny アクセス権限レベルが優先され、ユーザーはスタックにアクセスすることができません。詳細については、「IAM ポリシーの評価論理」を参照してください。

たとえば、レイヤーの追加または削除以外のスタックでのほぼすべての操作をユーザーが実行できるようにする必要があるとします。

  • Manage アクセス権限レベルを指定します。これにより、ユーザーはレイヤーの作成や削除を含むほとんどのスタック管理アクションを実行できるようになります。

  • 次のカスタマー管理ポリシーをユーザーにアタッチします。これにより、そのスタックで CreateLayerおよび DeleteLayerアクションを使用するアクセス許可が拒否されます。スタックは、スタックの [Settings (設定) ] ページにある [Amazon Resource Name (ARN) (Amazonリソースネーム (ARN)] を使用して識別します。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": [ "opsworks:CreateLayer", "opsworks:DeleteLayer" ], "Resource": "arn:aws:opsworks:*:*:stack/2f18b4cb-4de5-4429-a149-ff7da9f0d8ee/" } ] }

詳細とポリシーの例については、「IAM ポリシーをアタッチして AWS OpsWorks スタックのアクセス許可を管理する」を参照してください。

注記

IAM ポリシーを使用する別の方法としては、指定された IP アドレスまたはアドレス範囲を持つ従業への、スタックアクセスを制限する条件を設定することです。たとえば、従業員が会社のファイアウォールの内側からのみスタックにアクセスできるようにするには、社内用 IP アドレス範囲へのアクセスを制限する条件を設定します。詳細については、「条件」を参照してください。