SCP(サービスコントロールポリシー) さーびすこんとろーるぽりしー
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の適用イメージを確認してください。
AWS Control Towerとの関係
AWS Control Tower はSCPを使ったベストプラクティスのマルチアカウント環境を自動構築するサービスです。Control Towerを使うと、SCPを手動で書かなくても「必須のガードレール」(CloudTrail保護・ルートアカウント操作禁止等)が自動で適用されます。
| 項目 | SCP手動設定 | Control Tower利用 |
|---|---|---|
| 設定の手間 | 多い(JSONを自分で書く) | 少ない(ウィザードで設定) |
| 柔軟性 | 高い | やや低い(テンプレートベース) |
| 向いている規模 | 中〜大規模・カスタム要件あり | 中規模・標準構成で十分な場合 |
関連用語
- AWS Organizations — 複数AWSアカウントを一元管理するサービス
- IAM(Identity and Access Management) — AWSのユーザー・権限管理の基本機能
- AWS Control Tower — SCPを活用したマルチアカウントのベストプラクティス自動構成サービス
- OU(組織単位) — AWS Organizations内のアカウントをグループ化する単位
- 最小権限の原則 — 必要最小限の権限のみ付与するセキュリティ原則
- CSPM(クラウドセキュリティポスチャ管理) — クラウド環境のセキュリティ設定を継続的に評価・管理する仕組み
- ガードレール — クラウド環境で安全な範囲を強制的に保つ制御の総称
- CloudTrail — AWSの操作ログを記録・監査するサービス