Entry/exit control system
- AWSアカウントを発行する
- AWSアクセスキーをIAMコンソールから発行する
- aws-cliをインストールする
aws configure
を実行し、先程発行したアクセスキーを登録する
注意点
複数のIAMユーザーを使い分けるには、プロファイルを設定する必要が有ります。
ここではその方法について触れないので、必要な場合は自力で調べて下さい。
- S3にデプロイ用のバケットを作成する。
- github actionsの為のIDプロバイダを設定する
- IDプロバイダ用にPolicyを作成する。(作成例は下記の通り)
- Secretを必要な分だけ記述する
AWS_S3_BUCKET
: 先程作成したバケット名をいれるAWS_ACCOUNT_ID
: AWSのデプロイ用アカウントIDAWS_GITHUB_OIDC_ROLE_NAME
: 作成したロール名
ここでは、多くの権限が付与されていますが、本来は必要最低限の権限を付与するよう、注意が必要です。
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"dynamodb:*",
"cloudformation:*",
"s3:*",
"lambda:*",
"apigateway:*",
"iam:CreateRole",
"iam:DeleteRole",
"iam:GetRole",
"iam:PassRole",
"iam:DeleteRolePolicy",
"iam:GetRolePolicy",
"iam:AttachRolePolicy",
"iam:DetachRolePolicy",
"iam:PutRolePolicy",
"iam:TagRole"
],
"Resource": "*"
}
]
}
.pr_num
ファイルを作成し、任意のPR番号かmain
と記載する
sam build && sam local start-api --parameter-overrides PrNumber=$(cat .pr_num)