Amazon S3ソースの追加

Amazon S3ソースは、既存のAmazon S3バケットに接続します。imgixは、提供された認証情報を使用して接続するため、アセットを公開する必要はありません。

S3ソースの設定

注意: us-east-1リージョンからS3オブジェクトを取得する際、imgixは可能な限りread-after-write consistencyを保証するためにs3-external-1.amazonaws.comホスト名を使用し、必要に応じてデフォルトのホスト名s3.amazonaws.comにフォールバックします(参照)。

  1. imgixダッシュボードのソースページに移動し、新規ソースボタンをクリックします。

  2. メディアの保存方法は?のラジオオプションからAmazon S3を選択します。

    S3セットアップのスクリーンショット

  3. Amazon S3ソースの詳細を入力します。

    S3セットアップのスクリーンショット

    注意: imgixがあなたのS3バケットにアクセスするために、特にAmazon IAMアカウントを作成することを強く推奨します。imgixはアセットの提供を開始するためにReadおよびListの権限のみが必要です。権限に関する詳細情報、アクセスキーとシークレットアクセスキーの生成方法、バケット名の検索方法については、Amazon S3ガイドとセキュリティのドキュメントを参照してください。

    • アクセスキーID: imgixが接続するためのデプロイメント認証情報のアクセスキー。
    • シークレットアクセスキー: imgixが接続するためのデプロイメント認証情報のシークレットキー。
    • バケット名: imgixが接続するアセットを含むバケットの名前。
    • パスプレフィックス(オプション): 解決したいフォルダープレフィックス(存在する場合)。プレフィックスはアセットパスの前に追加され、S3でアセットを解決する前にプレペンドされます。デフォルトではアセットパスは/です。
  4. アセットのベースURLとして使用するサブドメインの名前を入力します。

    S3セットアップのスクリーンショット

注意: 選択するサブドメイン名はソースに固有であり、再利用することはできません。カスタムドメイン(特にカスタムドメイン)を設定する場合は、今後使用する予定の名前を選択してください。

  • 既存のソースを編集していて動画APIが有効になっている場合、imgixビデオサブドメインフィールドが表示されます。このフィールドはimgixイメージサブドメインの値を自動的に継承し、イメージサブドメインを変更しない限り変更することはできません。
  1. ステップ#3でソースのデプロイボタンをクリックして、ソースをデプロイキューに入れます。

Amazon S3ガイドとセキュリティ

imgixがあなたのS3バケットにアクセスするために、特にAmazon IAMユーザーを作成することを強く推奨します。すべてのAmazon認証情報は、業界標準の暗号化ベストプラクティスを使用して保存されます。

IAMユーザーは、特定の個人またはこの場合は特定のアプリケーションのみにS3バケットへのアクセスを許可することで、ビジネスのセキュリティを維持するのに役立ちます。imgixは、あなたのバケットに接続しメディアの提供を開始するために読み取り権限のみが必要です。

高度なポリシーテンプレート

imgixが適切にアセットをフェッチするためには、いくつかの読み取り専用の権限のみが必要です。セキュリティの追加層として、imgixおよびアセットを含むバケット専用に使用される限定権限のIAMユーザーを使用します。

imgixに必要な具体的なS3権限は以下の通りです:

  • ListBucket
  • GetBucketLocation
  • GetObject

高度なポリシーの例

{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": ["s3:GetObject", "s3:ListBucket", "s3:GetBucketLocation"],
      "Resource": ["arn:aws:s3:::your-bucket/*", "arn:aws:s3:::your-bucket"]
    }
  ]
}

注意: ポリシーを手動で構築する場合は、Amazon IAMポリシーシミュレータでそれをダブルチェックしてください。

詳細設定

カスタムドメイン、デフォルト、キャッシュTTLオプションの設定に関する情報は、アドバンスドソース設定を参照してください。

アップロード

クラウドストレージバックのAmazon S3ソースに直接画像や動画をアップロードするには、別のupload_credentialsセットを作成する必要があります。アセットマネージャーを通じてソースに直接アップロードするには、バケットのCORS設定も更新する必要があります。アップロードはソースデプロイ後にのみ設定する必要があります

imgixのレンダリングサービスはアセットをフェッチするためにWrite権限を必要としないため、upload_credentialsdeployment_credentialsを同じもので使用しないことを強くお勧めします