sts.php 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. <?php
  2. // 临时密钥计算样例
  3. include './qcloud-sts-sdk.php'; // 这里获取 sts.php https://github.com/tencentyun/qcloud-cos-sts-sdk/blob/master/php/sts/sts.php
  4. $sts = new STS();
  5. // 配置参数
  6. $config = array(
  7. 'url' => 'https://sts.tencentcloudapi.com/',
  8. 'domain' => 'sts.tencentcloudapi.com',
  9. 'proxy' => '',
  10. 'secretId' => 'AKID7RjQoRdEqS2gUFGObtSxU4gDnN1iM70r', // 固定密钥
  11. 'secretKey' => '5KVecOBFLJ7kNwXB3ljKpRzS71HQRPEr', // 固定密钥
  12. 'bucket' => 'yunjing', // 换成你的 bucket
  13. 'region' => 'ap-shanghai', // 换成 bucket 所在园区
  14. 'durationSeconds' => 1800, // 密钥有效期
  15. 'allowPrefix' => '*', // 这里改成允许的路径前缀,可以根据自己网站的用户登录态判断允许上传的目录,例子:* 或者 a/* 或者 a.jpg
  16. // 密钥的权限列表。简单上传和分片需要以下的权限,其他权限列表请看 https://cloud.tencent.com/document/product/436/31923
  17. 'allowActions' => array (
  18. // 所有 action 请看文档 https://cloud.tencent.com/document/product/436/31923
  19. // 简单上传
  20. 'name/cos:PutObject',
  21. 'name/cos:PostObject',
  22. // 分片上传
  23. 'name/cos:InitiateMultipartUpload',
  24. 'name/cos:ListMultipartUploads',
  25. 'name/cos:ListParts',
  26. 'name/cos:UploadPart',
  27. 'name/cos:CompleteMultipartUpload'
  28. )
  29. );
  30. // 获取临时密钥,计算签名
  31. $tempKeys = $sts->getTempKeys($config);
  32. // 返回数据给前端
  33. header('Content-Type: application/json');
  34. header('Access-Control-Allow-Origin: http://image.yunchao2u.com/'); // 这里修改允许跨域访问的网站
  35. header('Access-Control-Allow-Headers: origin,accept,content-type');
  36. echo json_encode($tempKeys);