6

最終的な目標: 大きな動画ファイル (<200MB-3GB) をコンテンツ プロデューサーのコンピューターから AWS S3 バケットにアップロードして、Elastic Transcoder サービスを使用する。

  • コンテンツ制作者はプロユーザーとなるため、多少の余分な作業は大きな負担にはなりません。ただし、彼ら (および私) にとって、可能な限りシンプルに保つことが理想的です。Web フォームを使用して開始できれば最高です。
  • 何百人ものコンテンツ プロデューサーが存在するわけではないため、個々のコンテンツ プロデューサーごとに何らかのアカウントやプロセスを設定するために、余分な時間や労力が費やされる可能性があります。自動化は王様ですが。
  • ある種の Java アプレットや Silverlight を使用できるという人もいました。
  • 私が考えたことの 1 つは、SFTP を使用して最初に EC2 にアップロードし、その後 S3 に移動することでした。しかし、それを安全にするのは苦痛のように聞こえます。
  • いくつかの調査の結果、S3 ではクロスオリジンのリソース共有が可能であることを発見しました。これにより、S3 に直接アップロードできるようになります。ただし、これは巨大なファイルでどの程度安定しますか?
  • S3 ではマルチパート アップロードも許可されているようです。

何か案は?

4

3 に答える 3

1

S3Browserのようなものが機能します。GUI、コマンドラインがあり、大きなファイルで動作します。IAMを使用してグループを作成し、ポリシーを使用してそのグループに特定の S3 バケットへのアクセスを許可し、IAM ユーザーをそのグループに追加できます。

IAM グループ ポリシーは次のようになります。

{
    "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "s3:ListBucket",
        "s3:GetBucketLocation",
        "s3:ListBucketMultipartUploads"
      ],
      "Resource": "arn:aws:s3:::YOUR_BUCKET_NAME",
      "Condition": {}
    },
    {
      "Effect": "Allow",
      "Action": [
        "s3:AbortMultipartUpload",
        "s3:DeleteObject",
        "s3:DeleteObjectVersion",
        "s3:GetObject",
        "s3:GetObjectAcl",
        "s3:GetObjectVersion",
        "s3:GetObjectVersionAcl",
        "s3:PutObject",
        "s3:PutObjectAcl",
        "s3:PutObjectAclVersion"
      ],
      "Resource": "arn:aws:s3:::YOUR_BUCKET_NAME/*",
      "Condition": {}
    },
    {
      "Effect": "Allow",
      "Action": "s3:ListAllMyBuckets",
      "Resource": "*",
      "Condition": {}
    }
  ]
}

このグループに IAM ユーザーを追加すると、S3Browser を使用できるようになり、YOUR_BUCKET_NAME への読み取り/書き込みアクセスのみが許可されます。ただし、他のバケットのリストは表示されますが、読み書きはできません。また、IAM ユーザーごとに AWS アクセス キーとシークレットを生成し、S3Browser を使用しているユーザーにこれら 2 つのアイテムを提供する必要があります。

于 2013-10-17T22:05:50.850 に答える