미리 서명된 URL을 통해 객체 공유 - Amazon Simple Storage Service

미리 서명된 URL을 통해 객체 공유

기본적으로 모든 Amazon S3 객체는 프라이빗이며 객체 소유자만 액세스할 수 있는 권한이 있습니다. 그러나 객체 소유자는 미리 서명된 URL을 생성하여 다른 사람과 객체를 공유할 수 있습니다. 미리 서명된 URL은 보안 자격 증명을 사용하여 객체를 다운로드할 수 있는 시간 제한 권한을 부여합니다. 해당 URL은 브라우저에 입력하거나 프로그램에서 객체를 다운로드하는 데 사용할 수 있습니다. 미리 서명된 URL에서 사용하는 자격 증명은 URL을 생성한 AWS 사용자의 자격 증명입니다.

미리 서명된 URL에 대한 일반적인 내용은 미리 서명된 URL로 작업 섹션을 참조하세요.

Amazon S3 콘솔, AWS Explorer for Visual Studio(Windows) 또는 AWS Toolkit for Visual Studio Code을 사용하여 코드를 작성하지 않고도 객체를 공유하기 위한 미리 서명된 URL을 생성할 수 있습니다. 또한 AWS Command Line Interface(AWS CLI) 또는 AWS SDK를 사용하여 프로그래밍 방식으로 미리 서명된 URL을 생성할 수 있습니다.

다음 단계에 따라 Amazon S3 콘솔을 사용하여 객체 공유를 위해 미리 서명된 URL을 생성할 수 있습니다. 콘솔을 사용할 때 미리 서명된 URL의 최대 만료 시간은 생성 시점으로부터 12시간입니다.

Amazon S3 콘솔을 사용하여 미리 서명된 URL을 생성하려면
  1. AWS Management Console에 로그인한 후 https://console.aws.amazon.com/s3/에서 Amazon S3 콘솔을 엽니다.

  2. 왼쪽 탐색 창에서 버킷(Buckets)을 선택합니다.

  3. 버킷(Buckets) 목록에서 미리 서명된 URL이 필요한 객체가 있는 버킷 이름을 선택합니다.

  4. 객체(Objects) 목록에서 미리 서명된 URL을 생성할 객체를 선택합니다.

  5. 객체 작업 메뉴에서 미리 서명된 URL 공유를 선택합니다.

  6. 미리 서명된 URL의 유효 기간을 지정합니다.

  7. 미리 서명된 URL 생성을 선택합니다.

  8. 확인 메시지가 표시되면 URL이 클립보드로 자동으로 복사됩니다. 미리 서명된 URL을 다시 복사해야 하는 경우 미리 서명된 URL을 복사하는 버튼이 표시됩니다.

다음 예제 AWS CLI 명령은 Amazon S3 버킷에서 객체를 공유하기 위한 미리 서명된 URL을 생성합니다. AWS CLI을 사용하면 미리 서명된 URL의 최대 만료 시간은 생성 시점으로부터 7일입니다. 이 예제를 사용하려면 user input placeholders를 사용자의 정보로 대체합니다.

aws s3 presign s3://DOC-EXAMPLE-BUCKET1/mydoc.txt --expires-in 604800

참고

2019년 3월 20일 이후에 출시된 모든 AWS 리전 리전의 경우 요청에 엔드포인트 endpoint-url과 AWS 리전 리전을 지정해야 합니다. 모든 Amazon S3 리전 및 엔드포인트 목록은 AWS 일반 참조의 리전 및 엔드포인트를 참조하세요.

aws s3 presign s3://DOC-EXAMPLE-BUCKET1/mydoc.txt --expires-in 604800 --region af-south-1 --endpoint-url https://s3.af-south-1.amazonaws.com

자세한 내용은 AWS CLI 명령 레퍼런스presign 섹션을 참조하십시오.

AWS SDK를 사용하여 객체를 공유하기 위한 미리 서명된 URL을 생성하는 예제는 AWS SDK를 사용하여 Amazon S3에 대해 미리 서명된 URL 생성을 참조하십시오.

AWS SDK를 사용하여 미리 서명된 URL을 생성할 때 최대 만료 시간은 생성 시점으로부터 7일입니다.

참고

2019년 3월 20일 이후에 출시된 모든 AWS 리전 리전의 경우 요청에 엔드포인트 endpoint-url과 AWS 리전 리전을 지정해야 합니다. 모든 Amazon S3 리전 및 엔드포인트 목록은 AWS 일반 참조의 리전 및 엔드포인트를 참조하십시오.

참고

AWS SDK를 사용할 때 태그 지정 속성은 쿼리 파라미터가 아닌 헤더여야 합니다. 다른 모든 속성은 미리 서명된 URL의 파라미터로 전달할 수 있습니다.

Visual Studio를 사용할 경우 코드를 작성하지 않고도 공유할 수 있는 AWS Explorer for Visual Studio로 미리 서명된 객체 URL을 만들 수 있습니다. 자세한 내용은 AWS Toolkit for Visual Studio 개발자 안내서의 AWS Explorer에서 Amazon S3 사용을 참조하십시오.

AWS Explorer를 설치하는 방법에 대한 지침은 AWS Toolkit for Visual Studio 사용 설명서의 AWS Toolkit for Visual Studio 설치 및 설정을 참조하십시오.

참고

현재 AWS Toolkit for Visual Studio는 Mac용 Visual Studio를 지원하지 않습니다.

  1. 다음 단계를 사용하여 AWS에 연결하려면 AWS Toolkit for Visual Studio 사용 설명서의 AWS 자격 증명 제공을 참조하십시오.

  2. Amazon S3 뷰에서 파일을 선택하고 컨텍스트 메뉴(마우스 오른쪽 버튼 클릭)를 엽니다.

  3. 미리 서명된 URL 생성을 선택한 다음 해당 URL의 만료 날짜와 시간을 설정합니다.

  4. GET을 선택하여 이 미리 서명된 URL이 객체를 다운로드하는 데 사용되도록 지정합니다.

  5. 생성 버튼을 선택합니다.

  6. URL을 클립보드에 복사하려면 복사를 선택합니다.

Visual Studio Code를 사용할 경우 코드를 작성하지 않고도 공유할 수 있는 AWS Toolkit for Visual Studio Code를 사용하여 미리 서명된 객체 URL을 만들 수 있습니다. 일반적인 정보는 AWS Toolkit for Visual Studio Code 사용 설명서의 AWS Toolkit for Visual Studio Code 섹션을 참조하십시오.

AWS Toolkit for Visual Studio Code을 설치하는 방법에 대한 지침은 AWS Toolkit for Visual Studio Code 사용 설명서의 AWS Toolkit for Visual Studio Code 설치를 참조하십시오.

  1. 다음 단계, AWS Toolkit for Visual Studio Code 사용 설명서의 AWS Toolkit for Visual Studio Code에 연결 단계를 사용하여 AWS에 연결합니다.

  2. Visual Studio Code의 왼쪽 패널에서 AWS 로고를 선택합니다.

  3. Explorer에서 S3를 선택합니다.

  4. 버킷과 파일을 선택하고 컨텍스트 메뉴를 엽니다(마우스 오른쪽 버튼 클릭).

  5. 미리 서명된 URL 생성을 선택한 다음 만료 시간(분 단위)을 설정합니다.

  6. Enter 키를 누르면 미리 서명된 URL이 클립보드에 복사됩니다.