2017-06-13 7 views
-1

私はAmazon S3バケットを作成しました。私はすべての企業ユーザーにアクセス権を提供したいと思います。誰でもS3バケットにアクセスしてオブジェクトをダウンロードできます。S3はバケットポリシーを検出していません

私は、IP制限のためのバケットポリシーを書かれている:私は皆のようにACL権限を追加すると

{ 
    "Version": "2012-10-17", 
    "Id": "S3PolicyIPRestrict", 
    "Statement": [ 
    { 
     "Sid": "IPAllow", 
     "Effect": "Allow", 
     "Principal": "", 
     "Action": "s3:GetObject", 
     "Resource": "arn:aws:s3:::mybucket/*", 
     "Condition": { 
     "IpAddress": { 
      "aws:SourceIp": [ 
      "10.0.8.10" 
      ] 
     } 
     } 
    } 
    ] 
} 

だけ私がオブジェクトにアクセスできるようにしています「読み」。しかし、バケットポリシーは適用されません。誰もネットワークの外部からアクセスすることができます。私が間違っていることは何ですか?

+0

ようこそStackOverflow!質問を編集してバケツポリシーを表示してください(IPアドレスを自由に変更できます)。また、AWS管理コンソール、[AWS Command-Line Interface(CLI)](http://)を使用して、ユーザーがバケットにアクセスする方法*の詳細をWebブラウザの匿名URLを介して受け取りますaws.amazon.com/cli/)など?あなたが提供できる情報が多くなればなるほど、有用な答えを受け取る機会は増えます。 –

+0

{ "バージョン": "2012年10月17日"、 "ID": "S3PolicyIPRestrict"、 "文":[ { "シド": "IPAllow"、 "エフェクト": "許可"、"Principal": "*"、 "Action": "s3:GetObject"、 "リソース": "arn:aws:s3 ::: insight.application.log-464413482301-us-east-1/*" 、 "条件":{ "IPアドレス":{ "AWS:SOURCEIP":[ "10.0.8.10"、 ] }}} ] } –

+0

このポリシーは私が使用している..私は誰もが企業のネットワーク内にアクセスできることを確認したいです。タックスyiはIP制限を使用しました –

答えて

0

バケットポリシーでは、送信元IPアドレスの許可を10.0.8.10に許可しています。これはプライベートIPアドレスです。

しかし、Amazon S3はインターネットに接続された公共サービスです。 Amazon S3にアクセスすると、リクエストはインターネット(または少なくともインターネットのAWSエッジ)に行き、リクエストはパブリックIPアドレスから来ているように見えます。したがって、アドレスがポリシー内のアドレスと一致しないため、ポリシーはアクセスを許可していません。

パブリックIPアドレスを使用するようにポリシーを変更する必要があります。このパブリックIPアドレスは、企業のトラフィックがインターネットにアクセスするときに使用されます。あなたはhttp://checkip.amazonaws.comでこのアドレスを知ることができます。

さらに、バケットポリシーを使用してアクセスを許可する場合は、ではなく、はACL経由でアクセスを許可する必要があります。

関連する問題