AWSでは、複数のリージョンでリソースを作成できる柔軟性がありますが、意図しないリージョンでの利用はコストの無駄につながることも。特に開発チームや複数アカウントを運用している場合、使うリージョンを制限することでコスト管理がグッと楽になります。
この記事では、AWS OrganizationsのSCP(Service Control Policy)を使って「東京リージョン(ap-northeast-1)」だけを許可する方法を紹介します。
🎯 なぜリージョン制限が必要なのか?
- 誤操作によるリソース作成(例:バージニアでEC2を立ててしまった)
- データ転送コストの増加(リージョン間通信)
- セキュリティポリシーの逸脱(特定リージョンのみ監査対象など)
- リソースの分散による管理負荷
🧠 SCPとは?
SCP(Service Control Policy)は、AWS OrganizationsでアカウントやOU(組織単位)に対してアクセス制御をかけるポリシーです。IAMポリシーとは異なり、アカウント全体のガードレールとして機能します。
📝 東京リージョンだけを許可するSCPポリシー例
JSON
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowOnlyTokyoRegion",
"Effect": "Deny",
"Action": "*",
"Resource": "*",
"Condition": {
"StringNotEquals": {
"aws:RequestedRegion": "ap-northeast-1"
}
}
}
]
}
🔍 ポリシーのポイント
Effect: Deny
→ 条件に一致する操作を拒否StringNotEquals
→ 東京リージョン以外を拒否aws:RequestedRegion
→ リクエストされたリージョンを判定
🚀 適用手順
- AWS Organizationsコンソールにアクセス
- 「ポリシー」→「サービスコントロールポリシー」へ移動
- 上記ポリシーを新規作成
- 対象のOUまたはアカウントにアタッチ
⚠️ 注意点
- IAMやRoute53などのグローバルサービスには
aws:RequestedRegion
が適用されません。 - SCPは明示的な拒否が優先されるため、他の許可ポリシーがあっても東京以外は使えません。
- CloudFormationスタックやCLI操作でもリージョン制限がかかるため、開発者への周知が必要です。
✅ まとめ
SCPを使えば、組織全体でリージョン制限をかけることができ、無駄なコストや管理負荷を大幅に削減できます。特に東京リージョンだけを使いたい場合は、今回紹介したポリシーを活用してみてください。
もし「東京+大阪だけ許可したい」「特定サービスだけ許可したい」などのニーズがあれば、さらに細かくカスタマイズできます。ご希望があればその内容も記事化できますよ!
続きを書きたい場合や、画像・図解を追加したい場合もお手伝いします!