Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
RCPと宣言型ポリシーについてのお話し
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
KOKI TAMURA
March 18, 2025
Programming
350
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
RCPと宣言型ポリシーについてのお話し
KOKI TAMURA
March 18, 2025
More Decks by KOKI TAMURA
See All by KOKI TAMURA
DLTをふんわり理解しよう
kokitamura
0
120
Glue Studio Visual ETL実装時にハマったこと
kokitamura
1
470
Amazon Nova のトークナイザについて調べてみた
kokitamura
0
160
Other Decks in Programming
See All in Programming
Foundation Models frameworkで画像分析
ryodeveloper
1
600
自動化したのに回らないテスト運用の壁ーAI時代の品質責任と生産性
mfunaki
0
130
琵琶湖の水は止められてもNet--HTTPのリトライは止められない / You might be able to stop the water flow of Lake Biwa but you can't stop Net::HTTP retries
luccafort
PRO
0
630
komatsuna「分散システムにおけるバグ分析手法」
komatsunaqa
0
250
SlackアプリとLambdaの 連携を構築した話
pawn_4_s
1
110
PHP Application における Kubernetes 内 gRPC 通信
ganchiku
0
590
数百円から始めるRuby電子工作
tarosay
0
140
属人化した知識を、 AIが辿れる地図にする
pkshadeck
PRO
1
150
jsmini JavaScript Engine を作ってみた話
yosuke_furukawa
PRO
0
300
<title><a id="</title>君はこのHTMLをパースできるか"></a></title> #雑LT_study
pizzacat83
0
140
AWS CDK を「作」ってみた 〜フルスクラッチで見えた CDK の裏側〜 / aws-cdk-from-scratch
gotok365
3
2.8k
わからない話を追いかけたら、プログラミング言語を作る側にいた
ydah
3
480
Featured
See All Featured
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.8k
Mobile First: as difficult as doing things right
swwweet
225
10k
Making Projects Easy
brettharned
120
6.7k
KATA
mclloyd
PRO
35
15k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
1.1k
The SEO identity crisis: Don't let AI make you average
varn
0
530
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.6k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.9k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Transcript
RCPと宣言型ポリシーについてのお話し K.Tamura
自己紹介 田村 晃輝 虎ノ門のどこかでエンジニアしています JAWS-UG SRE / 富山支部メンバー @koki46926199 元
富山県民 エンジニア歴 もうすぐ2年 AWS歴は1年ほど AWSマルチアカウント管理の設計、構築業務を担当 最近のトピック: エンジニアを始めるのと同時に ”とても” 太り始めました
はじめに 2024年11月、12月に AWS Organizations で導入された RCP と 宣言型ポリシー について、Terraform 化も含めてお話しします。
今回統制周り初めて触ったので、お手柔らかにお願いします…。
RPC (Resource Control Policy) 概要 組織内のリソースに対してのAPIアクションの許可範囲を設定するリソースベースのポリシーです。 組織外のアカウントからのリソースへのアクセスを制限することが可能となります。 対応サービス (2025/3/18 10:00
時点) - Amazon S3 - AWS Security Token Service - AWS Key Management Service - Amazon SQS - AWS Secrets Manager https://docs.aws.amazon.com/ja_jp/organizations/latest/userguide/orgs_manage_policies_rcps.html
RPC を適用するにあたっての注意点 RCPの適用対象はSCPと同様に OU(組織単位)もしくはアカウントに対して適用 されます。 よって、RCPで適用するポリシーは組織内のメンバーアカウントのみに適用されるため、 管理アカウント内のユーザー、ロール、リソースに対してのアクションの制限が行えません。
宣言型ポリシー 概要 https://docs.aws.amazon.com/ja_jp/organizations/latest/userguide/orgs_manage_policies_declarative.html 組織内のリソースに対しての サービスレベルでベースラインの設定 が可能となりました。 これにより、新しい機能、APIが追加されたときのメンテナンスが不要になります。 対応サービス (2025/3/18 10:00
時点) - EC2関連サービスの一部ユースケースのみ対応
宣言型ポリシー 概要 他にも、カスタムエラーメッセージ として、エラー発生時のカスタムメッセージを定義出来るだけでなく、 アカウントステータスレポート の機能でアカウント間でポリシーの状態が一貫しているのかを 確認することができます。 https://docs.aws.amazon.com/ja_jp/organizations/latest/userguide/orgs_manage_policies_declarative.html アカウントステータスレポート カスタムエラーメッセージ
“カスタム” エラーメッセージ・・・? 素敵な響き とりあえず AA (アスキーアート) 入力してみますよね? 「提供されたポリシー文書は、指定されたポリシータイプの要件を満たしていません。」 と怒られちゃいました…。
カスタムエラーメッセージに記述可能な文章 日本語を入力した場合でも同様に怒られてしまうので 現時点ではアルファベットで入力する必要がありそうでした。
SCP / RCP / 宣言型ポリシーの比較 SCP RCP 宣言型ポリシー 目的 IAMユーザーやロールなどに対しての
アクセス制御を一元管理 リソースに対しての アクセス制御を一元管理 AWSサービスのベースライン を一元管理 制御の仕組み APIレベルで制御 APIレベルで制御 API アクションを使用せずに、 AWS サービスの必要な 構成を適用 サービスリンクロール※ 制限しない 制限しない 制限する エラーメッセージの カスタマイズ カスタマイズ不可 カスタマイズ不可 カスタマイズ可能 Quota (アタッチ可能な数) 5 5 10 ※ 特定のAWSサービスがユーザーの代わりにAWSリソースを管理できるように、自動で作成・管理されるIAMロール
SCP / RCP / 宣言型ポリシーの評価論理 単一アカウントのポリシー評価:https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/reference_policies_evaluation-logic_policy-eval-basics.html リクエストコンテキストの処理:https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/reference_policies_evaluation-logic_policy-eval-reqcontext.html SCPより先にRCPの判定を行っています。 宣言型ポリシーは、サービスレベルで適用されるため、 評価論理には記載されていませんが、最上位で判定を行っているイメージです。
結局何が嬉しいのか考えてみる RCP 宣言型ポリシー 新しい機能、APIが追加された場合でも、サービスのベースラインとして適用されるので メンテナンスのコストが低下する。 SCPで組織外のアカウントからのアクセスを網羅的に禁止することは難しいが、 RCPを適用することによって容易に実装が可能となる。 SCPで制御する場合、複数のAPIを指定する必要があるが、宣言型ポリシーをアタッチする だけなので簡単。
RCPと宣言型ポリシーをTerraformで適用してみる
環境の説明 AFT(AWS Control Tower Account Factory for Terraform)を使用して アカウントおよびリソースの作成を実施しています。
RCPと宣言型ポリシーのTerraformについて AWS Control Tower controls:https://docs.aws.amazon.com/ja_jp/controltower/latest/controlreference/all-global-identifiers.html 現環境では全てのリージョンに対してコントロールを適用したいため グローバル識別子をJSON形式で保存し、RCPと宣言型ポリシーを適用しています。
まとめ - RCP - 組織内のリソースに対してのAPIアクションの許可範囲を設定するリソースベースのポリシー - 適用範囲はSCPと同様にOU(組織単位)もしくはアカウント - 宣言型ポリシー -
組織内のリソースに対しての サービスレベルでベースラインの設定 が可能 - サービスリンクロールに対しても制御が入るので、適用時は注意 - カスタムエラーメッセージにAAと日本語は入力できない とても便利な機能であり、組み合わせて適用することで信頼性の高い運用が可能になりますが 後から適用すると、既存リソースに影響が発生する場合もあるので、十分に精査した上で適用しましょう。