- IAM ID Providerの作成
- プロバイダのタイプ: OpenIDConnect
- プロバイダのURL: https://token.actions.githubusercontent.com
- 対象者: sts.amazonaws.com
- IAMロールを作成
- 信頼ポリシーは以下JSONを参考
- 許可ポリシーは対象のを選ぶ
- OIDCからサムプリントは2つ指定するため、以下を追加
- https://github.blog/changelog/2023-06-27-github-actions-update-on-oidc-integration-with-aws/
1c58a3a8518e8759bf075b76b750d4f2df264fcd
6938fd4d98bab03faadb97b34396831e3780aea1
- https://github.blog/changelog/2023-06-27-github-actions-update-on-oidc-integration-with-aws/
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
{ "Version": "2008-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Federated": "arn:aws:iam::xxxxxxx:oidc-provider/token.actions.githubusercontent.com" }, "Action": "sts:AssumeRoleWithWebIdentity", "Condition": { "StringLike": { "token.actions.githubusercontent.com:sub": [ "repo:hoge-repo/xxxxx:*", "repo:hoge-repo/xxxxx:*" ] } } } ] } |
- workflows(yml)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
on: workflow_dispatch: inputs: name: description: 'Name' required: true env: AWS_ROLE_NAME: githubactions-oidc AWS_ROLE_SESSION_NAME: githubactions-oidc AWS_REGION: ap-northeast-1 permissions: id-token: write contents: read jobs: hoge: name: hoge runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v2 - name: Configure AWS credentials uses: aws-actions/configure-aws-credentials@master with: role-to-assume: arn:aws:iam::${{ secrets.AWS_ACCOUNT_ID }}:role/${{ env.AWS_ROLE_NAME }} role-session-name: ${{ env.AWS_ROLE_SESSION_NAME }} aws-region: ${{ env.AWS_REGION }} |
Was this helpful?
0 / 0
1989年生まれのFindy/SRE。ホスティングから大規模なアドテクなどのインフラエンジニアとして携わる。現在はサービスの信頼性向上、DevOps、可用性、レイテンシ、パフォーマンス、モニタリング、オブザーバビリティ、緊急対応、AWSでのインフラ構築、Docker開発環境の提供、IaC、新技術の検証、リファクタリング、セキュリティ強化、分析基盤の運用などを担当している。個人事業主では数社サーバー保守とベンチャー企業のSREインフラコンサルティングやMENTA/TechBullで未経験者にインフラのコーチング/コミュニティマネージャーとして立ち上げと運営をしている。また、過去「脆弱性スキャナVuls」のOSS活動もしており、自称エバンジェリスト/技術広報/テクニカルサポート/コントリビュータでもある。