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

2023 ANGEL Dojo LT

2023 ANGEL Dojo LT

Shigeki Shoji

August 18, 2023
Tweet

More Decks by Shigeki Shoji

Other Decks in Technology

Transcript

  1. コンサルタント 庄司 重樹 株式会社⾖蔵 AWS Community Builder, 2023 Japan AWS

    Top Engineer, 11x AWS Certified 好きなサービスは、IAM @takesection
  2. IAMって何がすごい? 引⽤: InfoQ AWS re:Invent 2021の総括 から 最も驚異的な AWS サービスは何でしょうか?

    それは EC2 ではない でしょう。S3 でもありません。それは IAM です。毎秒 5 億回の API 呼び出しがあります... 想像してみてください。
  3. AWS IAM Identity Centerを使おう • IAM Identity Centerを使って、OktaやMS Entra ID、MS

    AD等 の認証基盤と連携しよう [profile foo] role_arn = arn:aws:iam::123456789012:role/RoleForFoo source_profile = example [profile example] sso_session = example sso_account_id = 123456789012 sso_role_name = ExamplePolicy region = ap-northeast-1 output = json [sso-session example] sso_start_url = https://d-XXXXXXXXXX.awsapps.com/start sso_region = ap-northeast-1 sso_registration_scopes = sso:account:access 「IAM でのセキュリティのベストプラクティス」
  4. CLIの使い⽅ ʻaws sso login ‒profile exampleʼ を実⾏すると、認証され profile で指定されたロールの⼀時的認証情報が取得される (背後

    で、STSを介して⼀時的認証情報 - アクセスキーID、シークレッ トアクセスキーとセッショントークン ‒ を取得している)。 「AWS IAM Identity Centerのロールから別のロールにCLIでスイッチして操作する」
  5. CI/CDではOIDCトークンを使おう GitHub ActionsやGitLab CI/CD、CircleCI等を使う場合は、それ ぞれから発⾏されるOIDCトークンを使う。 • GitHub ActionsやGitLab CI/CD、CircleCI等の外部IDプロバイ ダをIAM

    IDプロバイダに追加 • STSのAssumeRoleWithWebIdentityアクションで、指定した ロールの⼀時的認証情報を取得 「GitHub Actions ワークフローでリテラルの AWS アカウント ID を使⽤しないためのヒント」