

AWS CLI経由で、S3上に配置した画像をAmazon
Rekognitionに投げ、文字認識（DetectText）をしたいと思っていますが、エラーでうまくいきません。

[code]

    aws rekognition detect-text --image "S3Object={Bucket=mybucket,Name=text.jpg}" --region ap-northeast-1
    
[/code]

上記のコマンドをコマンドプロンプトまたはpowershell（管理者権限付き）で入力すると、下記のようなエラーが返ってきてしまいます。

> An error occurred (InvalidS3ObjectException) when calling the DetectText
> operation: Unable to get object metadata from S3. Check object key, region
> and/or access permissions.

エラーから見るに、IAMかS3のバケットポリシーあたりが原因ではないかと思っているのですが…どこがおかしいのか（何が足りないのか）が把握できていません。  
原因、他に設定すべき箇所の指摘や解消方法などご教示いただけないでしょうか。

環境：  
・OS：Windows10（proxy環境下です。cntlmにてローカルプロキシを立てて動かしています）  
・リージョン：ap-northeast-1(CLI設定、S3ともに東京リージョンなのを確認済み)  
・AWS CLI：アクセスキー、シークレットアクセスキー、リージョン、アウトプット設定済み  
・IAM：ユーザのアクセス権限に下記がついています  
\- AmazonS3FullAccess  
\- AmazonRekognitionFullAccess  
・S3：バケットポリシーは下記通りです（Statementのみ抜粋）。

[code]

    "Statement": [
        {
            "Sid": "XXXXXXXXXXXXXXXX",
            "Effect": "Allow",
            "Principal": "*",
            "Action": "s3:*",
            "Resource": [
                "arn:aws:s3:::mybucket",
                "arn:aws:s3:::mybucket/*"
            ],
    
[/code]

備考：  
・操作対象のS3には、Lambda経由ではアクセスでき、Rekognitionで画像認識ができています。また、CLI経由でS3内の操作ができることを確認済みです。  
・S3を利用しないrekognitionのコマンド（下記通り）はエラーなく動きます。

[code]

    例：aws rekognition create-collection --collection-id testcollection
    
[/code]

お力添えいただければ幸いです。


CC BY-SA 3.0
2018-04-18T04:16:32.627
43346
2023-08-27T12:01:45.303
28208
question
aws amazon-s3 aws-cli
AWS CLI経由でS3上の画像をAmazon Rekognitionに掛けたい


バケットポリシーを設定されていますが、同じawsのアカウントならポリシーは不要です。  
もしかしてS3は別アカウントの所有でしょうか?

別アカウントの所有だとしても、アクセス可能ですが、その場合principalに明示的にアクセス可能なアカウントを指定する必要があったと思います。もしくはバケットのアクセス権限ー＞アクセスコントロールリストからでも指定可能です。  
もし別アカウントなら、いったん同一アカウントでテストして実行できることを確認してからにしてみてはどうでしょうか？


CC BY-SA 4.0
2019-06-01T08:38:27.757
55427
2019-06-01T08:38:27.757
34547
43346
answer


アクセス権が正しいとしても、s3オブジェクトが存在しない場合でも同じエラーメッセージになります。  
例えば、

aws s3 cp s3://mybuket/test.jpg .

として正しくダウンロードできるか試してみてはどうでしょうか?


CC BY-SA 4.0
2020-03-21T00:14:04.210
64005
2020-03-21T00:14:04.210
38303
43346
answer