LoginSignup
1
1

More than 3 years have passed since last update.

[CDK] Amplifyアプリのビルドエラー(AccessDeniedException)の対処

Posted at

初めに

AWS CDKを利用しAmplifyのアプリケーションを作成した際に
ソースコードのビルドでAccessDeniedExceptionが発生し、ビルドに失敗する事がありました。

権限を追加するだけなのですが、自動で権限設定をしてくれず、あれ?と思ったため
対処法をメモしておきたいと思います。

エラー内容

エラー内容は抜粋していますが、以下のようなエラーです。

Amplify AppID: hoge not found. Please ensure your local profile matches the AWS account or region in which the Amplify app exists.
AccessDeniedException: User: arn:aws:sts::123456789012:assumed-role/[role]/BuildSession is not authorized to perform: amplify:GetApp on resource: [arn]

エラーの原因と解決法

以下のように指定しており、roleパラメータはDefault: - a new role is createdと記載されていていたため、指定していませんでした。

amplify_app = amplify.App(
    self, 'amplify-app',
    app_name=app_name,
    source_code_provider=source_code_provider,
    basic_auth=basic_auth
)

結論としては権限が足りないので自分でroleを追加してあげることで対応できます。

role = iam.Role(
    self, 'amplify-app-role',
    assumed_by=iam.ServicePrincipal('amplify.amazonaws.com'),
    managed_policies=[iam.ManagedPolicy.from_aws_managed_policy_name('AdministratorAccess-Amplify')]
)

amplify_app = amplify.App(
    self, 'amplify-app',
    app_name=app_name,
    source_code_provider=source_code_provider,
    basic_auth=basic_auth,
    role=role
)

以上です。
roleの設定はほぼ必須?ということがわかりました。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1