我正在尝试为CloudFront流设置私有签名网址,但不是运气。如果CloudFront设置为公共,则可以正常工作。
我正在使用AWS PHP SDK创建签名网址,使用以下代码。
我已经使用API来检查我的key_pair_id是否已正确设置为Active Trusted Signer。
我的S3存储桶目前仍处于公开状态,https://cep-assets.s3.amazonaws.com/adam/video/2-1-1-1.mp4
我缺少什么想法?
谢谢!
$cloudFront = \Aws\CloudFront\CloudFrontClient::factory(array(
'private_key' => $this->config['cep']['s3']['cf_secret'],
'key_pair_id' => $this->config['cep']['s3']['cf_key_pair_id'],
));
$expires = time() + 360000;
$streamHostUrl = 'rtmp://si0ulh281c930.cloudfront.net';
$resourceKey = 'adam/video/2-1-1-1.mp4';
$signedUrlCannedPolicy = $cloudFront->getSignedUrl(array(
'url' => $streamHostUrl . '/' . $resourceKey,
'expires' => $expires,
));
return 'rtmp://si0ulh281c930.cloudfront.net/cfx/st/'.$signedUrlCannedPolicy;