Upgrade to Pro — share decks privately, control downloads, hide ads and more …

IAMのマニアックな話2025

 IAMのマニアックな話2025

NRI Netcom

March 03, 2025
Tweet

More Decks by NRI Netcom

Other Decks in Technology

Transcript

  1. IAMのマニアックな話 2025 IAMの設計を言語化するために書いた本 IAMのマニアックな話(2019)の紹介 ハッシュタグ:#jawsdays2025 #jawsug #jawsdays2025_a 同人誌の枠を超えた大ヒット!!  KindleやBOOTHを中心に6,000冊以上販売

     マニアックな話と言いつつ、IAMを使う上で把握し ておくべき事項を網羅  IAMのみに特化して、100ページ以上のボリューム KDPの売り上げの推移 発表から5年が経過しても、売れ続けている
  2. IAMのマニアックな話 2025 はじめに 第1章 AWS と IAM 第2章 IAM の機能

    第3章 IAM チュートリアル 第4章 IAM ポリシーのデザインパターン 第5章 IAM グループのデザインパターン 第6章 IAM とセキュリティ 第7章 IAM の運用 第8章 IAMとCloudFormation 第9章 IAMのテンプレート集 第10章 IAM以外のAWS サービスの活用 付録 A アカウント開設時の設定チェックリスト IAMのマニアックな話 (2019) の目次 ハッシュタグ:#jawsdays2025 #jawsug #jawsdays2025_a
  3. IAMのマニアックな話 2025 たったの5つだけ ⚫ IAM ユーザー ⚫ IAM グループ ⚫

    IAM ポリシー ⚫ IAM ロール ⚫ パーミッション・バウンダリー IAMのマニアックな話 (2019) で取り扱った、IAMの機能 ハッシュタグ:#jawsdays2025 #jawsug #jawsdays2025_a
  4. IAMのマニアックな話 2025 IAMポリシーのデザインパターン① ホワイトリスト・パターン ハッシュタグ:#jawsdays2025 #jawsug #jawsdays2025_a 特定のサービス・アクションのみ許可 ec2 Describe

    * Stop Start 拒否 許可 許可 許可 デフォルト拒否 メリット  最小権限の設計ができる  理解して作れば、一番セキュア デメリット  設計が進まないと設定できない  管理負荷が高い 許可する権限のみ付与していくパターン ◆ EC2やS3といったサービス単位や、更に細かくアクション単位で付与 ◆ AWS管理ポリシーも、ある意味ホワイトリストパターン(※) ※そのまま使うには粗い事が多い
  5. IAMのマニアックな話 2025 IAMポリシーのデザインパターン② ブラックリスト・パターン ハッシュタグ:#jawsdays2025 #jawsug #jawsdays2025_a 特定のサービス・アクションを拒否 メリット 

    AWS管理ポリシーを活用しやすい  初期設計を最小限に取り掛かれる  自由度が高く設計が楽 デメリット  予期せぬサービスが、突然使える ようになるリスクがある 拒否する権限を追加していくパターン ◆ 最初に大きめの権限を付与する ◆ その後に、使われたくないサービス/アクションの権限を剥奪していく Admin 許可 S3 * Ec2 * IAM * デフォルト拒否 拒否 拒否 拒否
  6. IAMのマニアックな話 2025 IAMグループのデザインパターン① ユーザ/ロールが複数グループに所属 ハッシュタグ:#jawsdays2025 #jawsug #jawsdays2025_a グループごとの役割を小さく分割 ◆ 全社員向けの共通グループと、特定用途向けのグループ

    ◆ ポリシー設計が簡単だが、ユーザーからみると自分の権限がわかりにくい 全ユーザが利用するグループ (IAMグループ) IPアドレス制限 (IAMポリシー) パスワード変更権限 (IAMポリシー) 開発者向けグループ (IAMグループ) EC2操作権限 (IAMポリシー) ネットワーク担当者グループ (IAMグループ) VPC操作権限 (IAMポリシー) 開発者A (IAMユーザ) ネットワーク担当者A (IAMユーザ)
  7. IAMのマニアックな話 2025 IAMグループのデザインパターン② 1つのグループに属性ごとの権限を付与 ハッシュタグ:#jawsdays2025 #jawsug #jawsdays2025_a 1ユーザー1グループの原則のもと、グループ内にポリシーを付与していく ◆ グループ内に共通・個別のポリシーを追加していく

    ◆ ユーザーからみると権限の見通しが良いが、グループ管理が煩雑 IPアドレス制限 (IAMポリシー) パスワード変更権限 (IAMポリシー) 開発者向けグループ (IAMグループ) EC2操作権限 (IAMポリシー) ネットワーク担当者グループ (IAMグループ) VPC操作権限 (IAMポリシー) 開発者A (IAMユーザ) ネットワーク担当者A (IAMユーザ) IPアドレス制限 (IAMポリシー) パスワード変更権限 (IAMポリシー)
  8. IAMのマニアックな話 2025 クロスアカウントロールを活用したロールの切り替え(Switch Role) ハッシュタグ:#jawsdays2025 #jawsug #jawsdays2025_a STS(Security Token Service)を使った一時的な認証情報の発行

    ◆ ユーザもしくはロールから、別のアカウントのIAMロールに切り替える ◆ マルチアカウント環境の場合は、認証のみのアカウントを作成し、他アカウント へ切り替えるて利用する運用を取ることがある。IAMユーザー管理の最小化 IAM Role アカウントA IAM User アカウントB S3 バケット スイッチロールし、 一時的な認可を得る 利用
  9. IAMのマニアックな話 2025 • IAMユーザーの最小化(IAMロール&フェデレーションの推奨) • IAMポリシーの最小権限設計(リソースベースポリシー活用) • MFAの強制適用 • Rootアカウントの厳格管理

    • IPアドレス制限≒使用場所制限は、結局必要になるケースが多い 2019年時点のベストプラクティス ハッシュタグ:#jawsdays2025 #jawsug #jawsdays2025_a
  10. IAMのマニアックな話 2025 ベストプラクティスだけど。。。 ⚫ 構築するシステムの設計がFix(固定)されている必要がある ⚫ プログラムからの利用に向いているが、AWSコンソールからの利用に不向き ⚫ 新規サービスに追随できるのが遅い ⚫

    設計・運用の負荷・工数が大きい ⚫ そもそもAdmin権限を持っている人しか最小権限を追求できない 現実的な運用 ⚫ 固定の役割(インスタンス・プログラム)にホワイトリストで最小権限を付与 ⚫ 人間系の利用は、禁止したい事項をブラックリスト方式で権限剥奪 ⚫ セキュリティ事項を起こさないとう観点で、最小権限を探索する 最小権限のジレンマ ハッシュタグ:#jawsdays2025 #jawsug #jawsdays2025_a
  11. IAMのマニアックな話 2025 ユーザー管理の煩雑さ&マルチアカウントへの対応困難 ハッシュタグ:#jawsdays2025 #jawsug #jawsdays2025_a 複数アカウントを利用するのに、IAMユーザーは向いていない ⚫ 1つの組織で利用するAWSアカウントの数は増加の一途 ⚫

    IAMユーザーは、基本的に1つのアカウントと対になる存在 ⚫ スイッチロールなどの戦略もあるも、ロール管理の複雑さなどの問題がある ⚫ IdP + SSOを基軸とした認証認可管理が必須になる アカウントA ユーザーA アカウントB アカウントC ユーザーA ユーザーA IdP+SSOが無いと、アカウントごとにIAMユーザが必要になる
  12. IAMのマニアックな話 2025 アップデート • IAM Access Analyzerによる問題のある設定の自動検出 • IAMポリシーの新機能(条件付きアクセスの拡張、Attribute-Based Access

    Control(ABAC)の一般化) • リソースコントロールポリシー (RCP) 等の新しいタイプの認可ポリシーの登場 • IAM Roles Anywhereにより、AWS外部のシステムにもIAMロールを付与 • AWS Verified Accessによるユーザーとデバイスの認証に基づくポリシー適用 状況の変化 • IAM Identity Center(旧SSO)とAWS Organizationsとの統合強化、外部IdP との連携の強化(Okta、Entra IDなど) • ガードレールの概念と、その機能を実装するサービスの機能の充実 2019年以降のIAMと関連機能の主なアップデートと状況の変化 ハッシュタグ:#jawsdays2025 #jawsug #jawsdays2025_a IAM のドキュメント履歴 https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/document-history.html
  13. IAMのマニアックな話 2025 IAM Access Analyzerの主な機能 ポリシーの分析と生成 • 外部アクセスアナライザー: AWSリソースが外部からアクセス可能かチェック •

    未使用アクセスアナライザー: 一定期間使用していないIAMユーザ/ロールを検出 • ポリシー検証:静的解析によるポリシーの検証機能 • カスタムポリシーチェック:CheckNoPublicAccessなど特定の用途に応じた検査 • ポリシー生成:CloudTrailのログを元に、利用したリソースからポリシーを自動生成 IAM Access Analyzer ハッシュタグ:#jawsdays2025 #jawsug #jawsdays2025_a IAM Role IAM ユーザ AWS CloudTrail ポリシーの生成 IAM Policy CloudTrailの ログを分析 ポリシーを生成 ポリシーの分析 AWS Lambda IAM Role AWS KMS Amazon SQS Amazon S3 外部リソースからの アクセスを分析 現時点では機能が限定的なもののAIとの組み合わせに将来性を感じる IAM Access Analyzer
  14. IAMのマニアックな話 2025 属性ベースのアクセス制御①( Attribute-Based Access Control :ABAC) ハッシュタグ:#jawsdays2025 #jawsug #jawsdays2025_a

    役割ベースのアクセス制御(従来からの機能) (Role Based Access Control : RBAC ) 属性ベースのアクセス制御(2019年以降の機能) (Attribute-Based Access Control :ABAC ) プロジェクトA用 Permissions プロジェクトA担当者 (役割) プロジェクトA リソース プロジェクトB用 Permissions プロジェクトB担当者 (役割) プロジェクトB リソース プロジェクトC用 Permissions プロジェクトC担当者 (役割) プロジェクトC リソース プロジェクトA 担当者 プロジェクトB 担当者 プロジェクトC 担当者 プロジェクトA リソース プロジェクトB リソース プロジェクトC リソース ABAC用 Permissions プリンシパル タグ リソース タグ 利用者 or リソースが増えると ポリシーが増え管理が大変 タグ管理が必要なものの、 ポリシーをシンプルに保てる
  15. IAMのマニアックな話 2025 属性ベースのアクセス制御②( Attribute-Based Access Control :ABAC) ハッシュタグ:#jawsdays2025 #jawsug #jawsdays2025_a

    プリンシパルタグとリソースタグにより、利用できるリソースを定義可能 • リソースタグ (aws:ResourceTag) との一致を条件にアクセス制御を実装 • IAMポリシーをシンプルに保つことが可能 • プロジェクトや部署単位など、従来のRBACベースだと困難だったことを解決 • 動的なアクセス管理が可能で、管理負担を大幅に軽減できる可能性がある 一方で • ABACポリシーの設計負荷は高い • リソース側のタグの運用の経験値が必要 • そもそもプロジェクトをアカウント単位で分割する方がメリットが大きい それでも動的にアクセス制御を実装できることに、大きな可能性がある
  16. IAMのマニアックな話 2025 リソースコントロールポリシー (RCP) の登場 ハッシュタグ:#jawsdays2025 #jawsug #jawsdays2025_a Organizationの機能として、SCPと対をなすRCPの登場。 •

    サービスコントロールポリシー(SCP)は、アカウント内のIAMユーザーやIAMロ ールに対してアクションを制限する • リソースコントロールポリシー(RCP)は、リソースごとのアクセス制御を組織 全体で適用するポリシー RCP SCP AWS Organizations Organizations外からの S3アクセスを禁止する RCP アタッチ S3バケット OK 組織外 NG AWS Organizations Configの変更権限を 制限するSCP アタッチ Account Account Account AWS Config IAMロール IAMポリシーに作用 リソースに作用 Configの 変更禁止
  17. IAMのマニアックな話 2025 AWS Verified Access ハッシュタグ:#jawsdays2025 #jawsug #jawsdays2025_a AWS Verified

    Accessは、VPNの代替サービスにあらず • Verified Accessの本質は、リクエストを評価してリソースへ動的なアクセス許可 を与える仕組み • 信頼プロバイダ(Trust Data Providers)であるIdPを利用し、認証済みユーザー に対してポリシーベースのアクセス制御を提供する AWS Verified Access AWS IAM Identity Center (Trust Data Providers) ロードバランサ Virtual private cloud (VPC) 内部のリソース 将来的に、AWSの認証認可の中心的な存在になる可能性を感じる
  18. IAMのマニアックな話 2025 認証認可をコントロールする3つのサービスの管理主体がバラバラのケース が多い • IdPの管理主体:情報システム部(全社のID管理) • IAM Identity Centerで管理する権限セット:CCoEなど横断組織

    • 各アカウントで事業主体が管理するIAMロール:事業部 IAM Identity Center + IdP+IAMロールをどう管理するか? ハッシュタグ:#jawsdays2025 #jawsug #jawsdays2025_a IAM Identity Center IdP 各AWSアカウント Okta,Entra ID, Etc 権限セット アカウント内 生成の IAMロール IAMポリシー 権限セットから 生成される IAMロール 組織の実態・目指す姿を元に、どう管理するのかを検討する
  19. IAMのマニアックな話 2025 • IAMの変化 • 2019年:「最小権限を手作業で設計する」 • 2025年:「アカウント単体ではなく、組織全体で認証認可を制御する」 • 今後のIAMトレンド予想

    • ゼロトラストIAMへの移行(AWS Verified Accessとの統合) • AIによるポリシー推奨・自動生成 • 動的なIAM管理が標準化、アクセス管理の自動化へ まとめ ハッシュタグ:#jawsdays2025 #jawsug #jawsdays2025_a