Amazon S3 객체 Lambda 액세스 포인트 사용 - Amazon Simple Storage Service

Amazon S3 객체 Lambda 액세스 포인트 사용

S3 객체 Lambda 액세스 포인트를 통해 요청하는 것은 다른 액세스 포인트를 통해 요청하는 것과 동일하게 작동합니다. 액세스 포인트를 통해 요청하는 방법에 대한 자세한 내용은 액세스 포인트 사용 섹션을 참조하십시오. AWS Command Line Interface(AWS CLI), AWS SDK 또는 Amazon S3 REST API를 사용하여 객체 Lambda 액세스 포인트를 통해 요청할 수 있습니다.

중요

객체 Lambda 액세스 포인트에 대한 Amazon 리소스 이름(ARN)은 s3-object-lambda의 서비스 이름을 사용합니다. 따라서 객체 Lambda 액세스 포인트 ARN은 다른 액세스 포인트에서 사용되는 arn:aws::s3 대신 arn:aws::s3-object-lambda로 시작됩니다.

객체 Lambda 액세스 포인트에 대한 ARN을 찾는 방법

AWS CLI 또는 AWS SDK에서 객체 Lambda 액세스 포인트를 사용하려면 객체 Lambda 액세스 포인트의 Amazon 리소스 이름(ARN)을 알아야 합니다. 다음 예시에서는 Amazon S3 콘솔 또는 AWS CLI를 사용하여 객체 Lambda 액세스 포인트에 대한 ARN을 찾는 방법을 보여줍니다.

콘솔을 사용하여 객체 Lambda 액세스 포인트에 대한 ARN을 찾는 방법
  1. AWS Management Console에 로그인한 후 https://console.aws.amazon.com/s3/에서 Amazon S3 콘솔을 엽니다.

  2. 왼쪽 탐색 창에서 객체 Lambda 액세스 포인트(Object Lambda Access Points)를 선택합니다.

  3. ARN을 복사할 객체 Lambda 액세스 포인트 옆에 있는 옵션 버튼을 선택합니다.

  4. ARN 복사(Copy ARN)를 선택합니다.

AWS CLI를 사용하여 객체 Lambda 액세스 포인트에 대한 ARN을 찾는 방법
  1. AWS 계정와 연결된 객체 Lambda 액세스 포인트의 목록을 검색하려면 다음 명령을 실행합니다. 명령을 실행하기 전에 계정 ID 111122223333을 자신의 AWS 계정 ID로 바꿉니다.

    aws s3control list-access-points-for-object-lambda --account-id 111122223333
  2. 명령 출력을 검토하여 사용할 객체 Lambda 액세스 포인트 ARN을 찾습니다. 이전 명령의 출력이 다음 예제와 비슷해야 합니다.

    { "ObjectLambdaAccessPointList": [ { "Name": "my-object-lambda-ap", "ObjectLambdaAccessPointArn": "arn:aws:s3-object-lambda:us-east-1:111122223333:accesspoint/my-object-lambda-ap" }, ... ] }

S3 버킷 객체 Lambda 액세스 포인트에 버킷 스타일 별칭을 사용하는 방법

객체 Lambda 액세스 포인트를 생성할 때 Amazon S3는 객체 Lambda 액세스 포인트에 대한 고유한 별칭을 자동으로 생성합니다. 액세스 포인트 데이터 영역 작업 요청에 Amazon S3 버킷 이름이나 객체 Lambda 액세스 포인트 Amazon 리소스 이름(ARN) 대신 이 별칭을 사용할 수 있습니다. 해당 작업의 목록은 AWS 서비스와의 액세스 포인트 호환성을(를) 참조하십시오.

객체 Lambda 액세스 포인트 별칭 이름은 Amazon S3 버킷과 동일한 네임스페이스 내에서 생성됩니다. 이 별칭 이름은 자동으로 생성되며 변경할 수 없습니다. 기존 객체 Lambda 액세스 포인트의 경우 사용할 별칭이 자동으로 할당됩니다. 객체 Lambda 액세스 포인트 별칭 이름은 유효한 Amazon S3 버킷 이름의 모든 요구 사항을 충족하며 다음의 파트로 구성됩니다.

Object Lambda Access Point name prefix-metadata--ol-s3

참고

--ol-s3 접미사는 객체 Lambda 액세스 포인트 별칭 이름용으로 예약되어 있으며 버킷 또는 객체 Lambda 액세스 포인트 이름에는 사용할 수 없습니다. Amazon S3 버킷 이름 지정 규칙에 대한 자세한 내용은 버킷 이름 지정 규칙 섹션을 참조하십시오.

다음 예시는 이름이 my-object-lambda-access-point인 객체 Lambda 액세스 포인트에 대한 ARN 및 객체 Lambda 액세스 포인트 별칭을 보여줍니다.

  • ARN - arn:aws:s3-object-lambda:region:account-id:accesspoint/my-object-lambda-access-point

  • 객체 Lambda 액세스 포인트 별칭 - my-object-lambda-acc-1a4n8yjrb3kda96f67zwrwiiuse1a--ol-s3

객체 Lambda 액세스 포인트를 사용하면 코드를 크게 변경하지 않고도 객체 Lambda 액세스 포인트 별칭 이름을 사용할 수 있습니다.

객체 Lambda 액세스 포인트를 삭제하면 객체 Lambda 액세스 포인트 별칭 이름이 비활성화되고 프로비저닝이 해제됩니다.

객체 Lambda 액세스 포인트에 대한 별칭을 찾는 방법

콘솔을 사용하여 객체 Lambda 액세스 포인트에 대한 별칭을 찾는 방법
  1. AWS Management Console에 로그인한 후 https://console.aws.amazon.com/s3/에서 Amazon S3 콘솔을 엽니다.

  2. 왼쪽 탐색 창에서 객체 Lambda 액세스 포인트(Object Lambda Access Points)를 선택합니다.

  3. 사용하려는 객체 Lambda 액세스 포인트를 위해 객체 Lambda 액세스 포인트 별칭 값을 복사합니다.

객체 Lambda 액세스 포인트를 생성하면 Amazon S3는 다음 예시 명령과 같이 객체 Lambda 액세스 포인트 별칭 이름을 자동으로 생성합니다. 이 명령을 실행하려면 user input placeholders를 사용자의 정보로 대체합니다. AWS CLI를 사용하여 객체 Lambda 액세스 포인트를 생성하는 방법에 대한 자세한 내용은 AWS CLI를 사용하여 객체 Lambda 액세스 포인트 생성 섹션을 참조하십시오.

aws s3control create-access-point-for-object-lambda --account-id 111122223333 --name my-object-lambda-access-point --configuration file://my-olap-configuration.json { "ObjectLambdaAccessPointArn": "arn:aws:s3:region:111122223333:accesspoint/my-access-point", "Alias": { "Value": "my-object-lambda-acc-1a4n8yjrb3kda96f67zwrwiiuse1a--ol-s3", "Status": "READY" } }

생성된 객체 Lambda 액세스 포인트 별칭 이름에는 두 개의 필드가 있습니다.

  • Value 필드는 객체 Lambda 액세스 포인트의 별칭 값입니다.

  • Status 필드는 객체 Lambda 액세스 포인트 별칭의 상태입니다. 상태가 PROVISIONING인 경우 Amazon S3가 객체 Lambda 액세스 포인트 별칭을 프로비저닝하고 있으며 아직 별칭을 사용할 준비가 되지 않았다는 뜻입니다. 상태가 READY인 경우 객체 Lambda 액세스 포인트 별칭이 성공적으로 프로비저닝되어 사용할 준비가 된 것입니다.

REST API의 ObjectLambdaAccessPointAlias 데이터 유형에 대한 자세한 내용은 Amazon Simple Storage Service API 참조의 CreateAccessPointForObjectLambdaObjectLambdaAccessPointAlias 섹션을 참조하십시오.

객체 Lambda 액세스 포인트 별칭을 사용하는 방법

AWS 서비스와의 액세스 포인트 호환성에 나열된 작업에 Amazon S3 버킷 이름 대신 객체 Lambda 액세스 포인트 별칭을 사용할 수 있습니다.

get-bucket-location 명령에 대한 다음 AWS CLI 예시에서는 버킷의 액세스 포인트 별칭을 사용하여 버킷이 있는 AWS 리전을 반환합니다. 이 명령을 실행하려면 user input placeholders를 사용자의 정보로 대체합니다.

aws s3api get-bucket-location --bucket my-object-lambda-acc-w7i37nq6xuzgax3jw3oqtifiusw2a--ol-s3 { "LocationConstraint": "us-west-2" }

요청의 객체 Lambda 액세스 포인트 별칭이 유효하지 않은 경우 InvalidAccessPointAliasError 오류 코드가 반환됩니다. InvalidAccessPointAliasError에 대한 자세한 내용은 Amazon Simple Storage Service API 참조의 오류 코드 목록을 참조하십시오.

객체 Lambda 액세스 포인트 별칭의 제한 사항은 액세스 포인트 별칭의 제한 사항과 동일합니다. 액세스 포인트 별칭의 제한 사항에 대한 자세한 내용은 제한 사항 섹션을 참조하십시오.