クラウドセキュリティ

SCP(サービスコントロールポリシー) さーびすこんとろーるぽりしー

AWS OrganizationsIAMアクセス制御ガードレールマルチアカウント権限境界
SCPについて教えて

簡単に言うとこんな感じ!

SCPは「AWSアカウント全体に対して、絶対に越えられないルール」を設定する仕組みだよ。たとえば「どんな管理者でも、東京リージョン以外にはサービスを作れない」って柵を組織全体に張れるんだ!個人の権限設定(IAM)より強く効くのがポイントだよ。


SCP(サービスコントロールポリシー)とは

SCP(Service Control Policy)は、AWS Organizations(複数のAWSアカウントをまとめて管理する仕組み)において、配下のアカウント全体に適用できる「最大権限の上限」を定めるポリシーです。個々のユーザーやロールに付与されたIAM権限がどれだけ強くても、SCPで禁止されている操作は一切実行できません。

通常のIAMポリシーは「このユーザーには何ができるか」を設定するものですが、SCPは「この組織・アカウントでは何を許可範囲とするか」というガードレール(柵) を定めるものです。セキュリティや法令対応のルールを組織全体で強制したい場面で非常に強力な効果を発揮します。

企業がAWSを複数部門・複数システムで利用するマルチアカウント構成を取る際、「ルートアカウント操作の禁止」「特定リージョン以外へのデプロイ禁止」「CloudTrailの無効化禁止」といったポリシーをSCPで一括適用することで、ガバナンスを維持できます。


SCPの仕組みと構造

SCPはAWS Organizationsの組織ツリー上に適用されます。組織全体のルート(Root)、組織単位(OU: Organizational Unit)、個別アカウントのいずれかに付与でき、親から子へ継承されます。

適用対象説明
ルート(Root)組織全体のすべてのアカウントに効く
OU(組織単位)その配下のアカウントグループに効く
個別アカウント特定のアカウントのみに効く

権限の効き方:「最小値が採用される」

SCPとIAMポリシーはAND(積) の関係で評価されます。どちらかが拒否していれば操作はできません。

実際に許可される操作
  = SCPで許可されている操作
  ∩ IAMポリシーで許可されている操作

たとえばIAMで「S3フルアクセス」を持っていても、SCPで「東京リージョン以外禁止」なら東京以外のS3操作は不可になります。

ホワイトリスト方式 vs ブラックリスト方式

方式内容向いているケース
ホワイトリスト許可するサービス・操作を明示的に列挙利用サービスが限定的な部門
ブラックリストデフォルト全許可+特定操作をDeny多様なサービスを使う開発環境

よく使われるSCPの例

  • aws:RequestedRegion 条件でリージョン制限
  • cloudtrail:DeleteTrail のDenyで監査ログ保護
  • iam:CreateUser のDenyでルートアカウント利用禁止
  • ec2:* などをDenyして特定部門のサービス制限

歴史と背景

  • 2016年: AWS Organizations がリリース。複数アカウントの一括管理が可能になる
  • 2017年: SCPがAWS Organizationsの機能として正式提供開始
  • 2018〜: 大企業・金融機関を中心にマルチアカウント戦略が普及し、SCPがガバナンスの要として注目される
  • 2019年: AWS Control Tower がリリースされ、SCPを使ったベストプラクティス構成が自動化・簡素化される
  • 2020年代: クラウドセキュリティのフレームワーク(CSPM等)でSCPが「予防的コントロール」の代表例として位置づけられる

SCPが登場した背景には、企業のAWS利用が拡大するにつれ「部門ごとにアカウントを分けたいが、セキュリティルールは全社で統一したい」というニーズが急増したことがあります。IAMだけでは各アカウント管理者が独自に権限を拡張できてしまうため、組織レベルで「絶対に超えられない壁」が必要になりました。


IAM・SCPと関連概念の比較・構造

SCPはIAMとよく混同されますが、役割が根本的に異なります。

比較項目IAMポリシーSCP
設定単位ユーザー・ロール・グループOU・アカウント・ルート
誰が設定するか各アカウント管理者組織の管理アカウント
効果そのユーザー等に権限を付与アカウント全体の上限を制限
上書きできるかアカウント管理者が変更可配下アカウントから変更不可
適用タイミングリクエスト評価時(IAM)IAM評価より前に上限を規定

以下のSVG図解で、AWS Organizations の階層構造とSCPの適用イメージを確認してください。

Root(組織全体) SCP: 全社ポリシー適用 OU: 開発部門 SCP: 開発用追加制限 OU: 本番環境 SCP: 厳格な制限 OU: 管理・監査 SCP: 監査ツール保護 開発A アカウント 開発B アカウント 本番A アカウント 本番B アカウント 監査 アカウント 権限評価の流れ(AND条件) ①SCPチェック 組織レベルの上限 ②IAMチェック ユーザー権限評価 ③リソースポリシー バケット等の設定 許可 or 拒否 全部OKで初めて実行

AWS Control Towerとの関係

AWS Control Tower はSCPを使ったベストプラクティスのマルチアカウント環境を自動構築するサービスです。Control Towerを使うと、SCPを手動で書かなくても「必須のガードレール」(CloudTrail保護・ルートアカウント操作禁止等)が自動で適用されます。

項目SCP手動設定Control Tower利用
設定の手間多い(JSONを自分で書く)少ない(ウィザードで設定)
柔軟性高いやや低い(テンプレートベース)
向いている規模中〜大規模・カスタム要件あり中規模・標準構成で十分な場合

関連用語