ステップ1. 入力/出力用のS3バケットの作成
1. Create bucketをクリックします。
2. Bucket nameを入力し、リソースが所属するリージョンを選択します。
Bucket nameを記入し、バケットが所属するリージョンを選択します。ここでは例としてSingaporeを選択します。
3. Create bucketをクリックして作成を完了します。
4. (任意)上記の手順を繰り返し、トランスコード出力を配置するためのバケットをもう一つ作成します。
説明:
新しいバケットを作成することも、トランスコードファイルを入力バケットの新しいディレクトリに配置することも可能です。
ステップ2. S3通知を受信するSQSの作成
1. SQSリソースが存在するリージョンを選択します。
リソースのリージョンとしてsingapore(ap-southeast-1)を選択します。
注意:
ここで選択するリソースのリージョンは、上記のバケットが存在するリージョンと一致させる必要があります。一致しない場合、バケットはSQSをバインドすることができません。
2. キュー名を入力します。
3. キューの暗号化を無効にします。
4. アクセスポリシーを変更
「Advanced」を選択し、以下のテキストにSQS(キュー)のARN、S3のARN、およびアカウントIDを記入した後、そのテキストをアクセスポリシーに貼り付けます(SQSのARN、S3のARN、アカウントIDの取得方法は補足をご参照ください)。
{
"Version": "2012-10-17",
"Id": "__default_policy_ID",
"Statement": [
{
"Sid": "__owner_statement",
"Effect": "Allow",
"Principal": {
"Service": "s3.amazonaws.com"
},
"Action": [
"SQS:SendMessage"
],
"Resource": "キューのARN"
"Condition": {
"ArnLike": {
"aws:SourceArn": "S3のARN"
},
"StringEquals": {
"aws:SourceAccount": "Account ID"
}
}
}
]
}
5. キューを作成をクリックして、キューの作成を完了します。
ステップ3. トランスコード情報のコールバックを受信するSQSの作成
説明:
Amazon SQS callbackの場合にのみ作成が必要です。
1. SQSリソースが存在するリージョンを選択します。
リソースのリージョンとしてSingaporeを選択します。
注意:
ここで選択するリソースのリージョンは、上記のバケットが存在するリージョンと一致させることを推奨します。
2. キュー名を入力します。
3. キューの暗号化を無効にします。
4. キューを作成をクリックして、キューの作成を完了します。
ステップ4. 入力用のS3バケットと通知受信用SQSのバインド
1. 作成済みの入力バケットを見つけます。
S3のページに戻り、先ほど作成したバケットを見つけて、その名前をクリックします。
2. 入力バケットとSQSをバインドします。
2.1 バケットのページに入ったら、Propertiesを選択します。
2.2 ページを下にスクロールして「Event notifications」を見つけ、Create event notificationをクリックしてイベント通知を作成します。
2.3 イベントを作成し、イベント名を入力します。
2.4 「Event types」で「All object create events」にチェックを入れます。
2.5 「Destination」として「SQS queue」を選択し、その下で先ほど作成したS3通知受信用SQSを選択します。選択後、保存をクリックします。
2.6 この時点で、SQSキューにイベント通知がバインドされているか確認できます。バインドされていれば成功です(Messages availableの値が0から1に変わります)。
ステップ5. IAMユーザーの作成と操作権限の付与
5.1 ポリシーの作成
1. Identity and Access Management (IAM) の画面に移動し、Policiesをクリックし、次にCreate policyをクリックします。
2. 「JSON」モードを選択し、選択したコールバック方式に対応するポリシー設定を選び、SQSのARNとS3バケットのARNをJSONに記入してから、「Next」を2回クリックします。
コールバック方式がAmazon SQS callbackの場合のポリシー設定
コールバック方式がHTTP callbackの場合のポリシー設定
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"sqs:DeleteMessage",
"s3:GetObject",
"sqs:GetQueueUrl",
"sqs:ReceiveMessage",
"s3:GetObjectAttributes",
"sqs:GetQueueAttributes",
"sqs:ListQueueTags"
],
"Resource": [
"sqsが監視するs3のキューのarn",
"s3入力バケットのarn + /*"
]
},
{
"Sid": "VisualEditor1",
"Effect": "Allow",
"Action": [
"s3:PutObject",
"sqs:GetQueueUrl",
"sqs:SendMessage"
],
"Resource": [
"トランスコード情報コールバック用のSQSキューのARN"
"s3出力バケットのarn + /*"
]
}
]
}
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"sqs:DeleteMessage",
"s3:GetObject",
"sqs:GetQueueUrl",
"sqs:ReceiveMessage",
"s3:GetObjectAttributes",
"sqs:GetQueueAttributes",
"sqs:ListQueueTags"
],
"Resource": [
"sqsが監視するs3のキューのarn",
"s3入力バケットのarn + /*"
]
},
{
"Sid": "VisualEditor1",
"Effect": "Allow",
"Action": [
"s3:PutObject"
],
"Resource": [
"s3出力バケットのarn + /*"
]
}
]
}
注意:
JSONのResource内にあるS3バケットのARNは、末尾に/*を連結して記入する必要があります。例:S3バケットのARNがarn:aws:s3:::tencentbucketの場合、記入すべきはarn:aws:s3:::tencentbucket/*です。
3. Policy nameを入力した後、Create policyをクリックして作成を完了します。
5.2 ユーザーの作成
1. Identity and Access Management (IAM) の画面に移動し、Userをクリックし、次にAdd usersをクリックしてユーザーを追加します。
2. ユーザー名を入力し、右下のNextをクリックします。
Attach existing policies directlyオプションをクリックし、検索バーに先ほど作成したポリシー名を入力して検索し、そのポリシーにチェックを入れます。
Next > Create userをクリックすると、ユーザーの作成が完了します。
3. ユーザー作成後、そのユーザー名をクリックします。
4. Security credentials > Access keys > Create access keyをクリックします。
5. 「Other」を選択し、Nextをクリックして作成します。作成されたAccess key IDとSecret access keyを保存してください。
補足
アカウントID:ページの上部で確認できます。
S3のARN:バケットのページに移動し、Propertiesをクリックすると確認できます。
SQSのARN:SQSの作成ページで、Access policy > Advanced > Resourceをクリックします。
Tencent Cloud公式サイトでのリージョン名の確認:S3ページに移動し、作成したAWS S3リソースを見つけます。そのAWS Regionの後半部分が、Tencent Cloud側で入力するリージョン名です(注意:スペースは削除してください)。下の図では、tencentbucketのリージョンはap-southeast-1です。