How to add a policy to the permission policy of IAM roles that allows only users verified through the Cognito user pool to download files during S3 download.如何追加一个策略,使得该策略可以在S3下载时,仅允许通过Cognito用户池验证的用户

0

IAM角色的权限策略,如何追加一个策略,使得该策略可以在S3下载时,仅允许通过Cognito用户池验证的用户来下载文件 How to add a policy to the permission policy of IAM roles that allows only users verified through the Cognito user pool to download files during S3 download. IAMロールの権限ポリシー。S 3でダウンロードできるようにポリシーを追加するには、Cognitoユーザープールで検証されたユーザーのみがファイルをダウンロードできるようにします。

profile picture
Dgk
質問済み 3ヶ月前287ビュー
1回答
1
承認された回答

ユーザープールとIDプールを紐づけてください。
そうすることでユーザープールで認証されたユーザーがIDプールに設定されたIAMロールを使用してAWSリソースへアクセスすることが可能となります。
https://docs.aws.amazon.com/cognito/latest/developerguide/amazon-cognito-integrating-user-pools-with-identity-pools.html

profile picture
エキスパート
回答済み 3ヶ月前
  • ご回答ありがとうございます。私は前にこう書きました。第三者のダウンロードを制限したいのです。しかし、私のすべてのダウンロード方法を制限しました。私はどのようにこの戦略を書くべきですか。 例 { "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "s3:", "Resource": [ "arn:aws:s3:::your-bucket-name/", "arn:aws:s3:::your-bucket-name" ], "Condition": { "StringNotLike": { "aws:PrincipalArn": [ "arn:aws:sts::account-id:assumed-role/Cognito_identity_pool_name/Cognito_identity_id", "arn:aws:sts::account-id:assumed-role/Cognito_identity_pool_name/Cognito_identity_id/" ] } } } ] }

  • S3バケットポリシーでアクセスを制御するのであればCognitoのIDプールに紐づけたIAMロールのARNでおそらくアクセス制御することが出来ると思います。

    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Effect": "Deny",
                "Action": "s3:*",
                "Resource": [
                    "arn:aws:s3:::your-bucket-name/*",
                    "arn:aws:s3:::your-bucket-name"
                ],
                "Condition": {
                    "StringNotLike": {
                        "aws:PrincipalArn": [
                            "arn:aws:iam::AWSAccountID:role/IAMRoleNAME"
                        ]
                    }
                }
            }
        ]
    }
    
  • ご回答ありがとうございます。このS3バケットポリシーの意味が「S 3のファイルをダウンロードできるのは、「arn:aws:iam::AWSAccountID:role/IAMRoleNAME」というユーザープールを通過したユーザーのみです。」ですか

  • このバケットポリシーを使用する場合は「arn:aws:iam::AWSAccountID:role/IAMRoleNAME」というIAMロールを使用している場合にのみS3へアクセスできるようになると思います。

  • そうか、S 3にポリシーが設定されていなければ、IAMユーザーなら誰でもそこからファイルをダウンロードできますか。

ログインしていません。 ログイン 回答を投稿する。

優れた回答とは、質問に明確に答え、建設的なフィードバックを提供し、質問者の専門分野におけるスキルの向上を促すものです。

質問に答えるためのガイドライン

関連するコンテンツ