6. 前のポリシーで、**組織**の**リポジトリ**からの**ブランチ**だけが特定の**トリガー**で認可されていることに注意してください。
7. githubアクションが**模倣**できる**ロール**の**ARN**は、githubアクションが知る必要がある「秘密」であり、それを**環境**内の**シークレット**に**保存**します。
8. 最後に、AWSクレデンシャルをワークフローで使用するためにgithubアクションを構成します:
```yaml
name: 'test AWS Access'
# The workflow should only trigger on pull requests to the main branch
on:
pull_request:
branches:
- main
# Required to get the ID Token that will be used for OIDC
permissions:
id-token: write
contents: read # needed for private repos to checkout
jobs:
aws:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v1
with:
aws-region: eu-west-1
role-to-assume: ${{ secrets.READ_ROLE }}
role-session-name: OIDCSession
- run: aws sts get-caller-identity
shell: bash
OIDC - EKSの悪用
# Crate an EKS cluster (~10min)eksctlcreatecluster--namedemo--fargate
# Create an Identity Provider for an EKS clustereksctlutilsassociate-iam-oidc-provider--clusterTesting--approve
次のようにして、EKSクラスター内でOIDCプロバイダーを簡単に生成することができます。クラスターのOIDC URLを新しいOpen ID Identityプロバイダーとして設定するだけです。これは一般的なデフォルトポリシーです: