[php] PHP 라이브러리 S3 서명된 URL 생성

Amazon S3에 저장된 객체에 대한 임시 액세스를 허용하려면 서명된 URL을 생성해야합니다. 이를 위해 PHP 라이브러리를 사용하여 S3 서명된 URL을 생성하는 방법을 살펴보겠습니다.

AWS SDK for PHP 설치

먼저, AWS SDK for PHP를 설치해야 합니다. Composer를 사용하면 다음 명령을 사용하여 간단히 설치할 수 있습니다.

composer require aws/aws-sdk-php

S3 서명된 URL 생성

다음은 PHP에서 S3 서명된 URL을 생성하는 간단한 예제 코드입니다.

use Aws\S3\S3Client;
use Aws\Credentials\Credentials;

$config = [
    'region' => 'your_s3_region',
    'version' => 'latest',
    'credentials' => new Credentials('your_access_key', 'your_secret_key'),
];

$s3Client = new S3Client($config);

$bucket = 'your_bucket_name';
$key = 'object_key';

$cmd = $s3Client->getCommand('GetObject', [
    'Bucket' => $bucket,
    'Key' => $key
]);

$request = $s3Client->createPresignedRequest($cmd, '+15 minutes');

$presignedUrl = (string) $request->getUri();

위의 예제 코드에서 your_s3_region, your_access_key, your_secret_key, your_bucket_name, object_key를 실제 값으로 대체해야 합니다. 이제 $presignedUrl 변수에는 S3 객체에 대한 서명된 URL이 포함됩니다.

이제 PHP에서 S3 서명된 URL을 생성하는 방법에 대해 간략하게 알아보았습니다. 이를 통해 임시 액세스를 허용하여 S3 객체에 접근할 수 있게 되었습니다.

더 자세한 정보를 원하시면 AWS SDK for PHP 공식 문서를 참조해주시기 바랍니다.