簡體   English   中英

如何代表某個原始訪問標識(雲前端)簽署URL

[英]How to sign Url on behalf of a certain origin access identity (cloud front)

我想為雲前端(和s3)提供兩個原始訪問標識。 一個可以只查看內容,另一個可以只放內容(也許可以只刪除)

我知道我可以創建一個Origin訪問標識,並且在我的s3存儲桶策略中,我可以指定哪個標識具有多少訪問權限。

但是,在簽署網址時,我沒有看到任何選擇此身份的選項。 我正在使用的PHP代碼:

        $customPolicy = <<<POLICY
{
   "Version":"2012-10-17",
   "Statement":[
      {
         "Sid":"statement1",
         "Effect":"Allow",
         "Action":[
            "s3:CreateBucket", "s3:ListAllMyBuckets", "s3:GetBucketLocation"  
         ],
         "Resource":[
            "arn:aws:s3:::*"
         ]
       }
    ]
}

POLICY;



// Create a signed URL for the resource using the canned policy
        $signedUrlCannedPolicy = $cloudFront->getSignedUrl([
            'url'         => $streamHostUrl . '/' . $resourceKey,
            'private_key' => base_path().'/'.'cloudfront.pem',
            'key_pair_id' => 'my key pair id',
            'policy' => $customPolicy

        ]);

如何告訴誰代表誰簽名? 我根據http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-trusted-signers.html#private-content-creating-cloudfront-key-pairs為雲端創建了密鑰對。

您的密鑰對已分配給IAM用戶。 這是簽名身份。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM