내용으로 건너뛰기

Quick Sight 대시보드에서 프라이빗 Amazon S3 버킷의 이미지를 사용하려면 어떻게 해야 합니까?

3분 분량
0

Amazon Quick Sight 대시보드에서 프라이빗 Amazon Simple Storage Service(Amazon S3) 버킷의 이미지를 사용하려고 합니다.

해결 방법

Quick Sight 대시보드 또는 보고서에서 프라이빗 Amazon S3 버킷의 이미지를 사용하려면 AWS Lambda API 또는 Amazon CloudFront 콘솔을 사용하십시오.

Lambda API

Lambda API를 사용하려면 Lambda 함수를 생성한 다음 Amazon API Gateway 트리거를 생성하십시오.

Lambda 함수 생성

다음 단계를 완료합니다.

  1. Amazon S3 콘솔을 엽니다.
  2. 탐색 창에서 버킷을 선택한 다음 버킷을 선택합니다.
  3. 업로드를 선택합니다.
  4. .jpg 형식으로 이미지를 버킷에 업로드합니다.
  5. 다음 명령을 실행하여 Lambda 함수를 생성합니다.
    import boto3
    import base64
    
    def lambda_handler(event, context):
        s3 = boto3.client("s3")
        downloaded_s3_object = s3.get_object(Bucket="S3 BUCKET NAME", Key="Image.jpg")
        return base64.b64encode(downloaded_s3_object["Body"].read())
    참고: S3 BUCKET NAMEdownloaded_s3_object를 해당되는 정보로 바꾸십시오. Lambda AWS Identity and Access Management(IAM) 역할에는 S3 버킷에서 객체를 가져올 권한이 있어야 합니다. Lambda 함수의 경우 런타임Python 3.9로 설정합니다.
  6. 배포를 선택합니다.

API Gateway 트리거 생성

다음 단계를 완료합니다.

  1. API Gateway 콘솔을 엽니다.
  2. 탐색 창에서 API를 선택한 다음, API 생성을 선택합니다.
  3. REST API에서 빌드를 선택합니다.
  4. REST API 생성 페이지API 세부 정보에서 새 API를 선택하고 다음 정보를 입력합니다.
    API의 이름을 입력한 다음 API 생성을 선택합니다.
    (선택 사항) API에 대한 설명을 입력합니다.
    API 엔드포인트 유형에서 리전을 선택합니다. 그런 다음 API 생성을 선택합니다.
  5. 리소스 페이지의 메서드에서 메서드 생성을 선택합니다.
  6. 메서드 생성 페이지에서 다음 정보를 입력합니다.
    메서드 유형에서 GET을 선택합니다.
    통합 유형에서 Lambda 함수를 선택합니다.
    Lambda 함수에서 AWS 리전과 Lambda 함수를 선택합니다.
  7. 메서드 생성을 선택합니다.
  8. 리소스 페이지의 메서드 요청 설정에서 편집을 선택합니다.
  9. 메서드 요청 편집 페이지의 HTTP 요청 헤더에서 헤더 추가를 선택합니다.
  10. 이름Content-Type을 입력한 다음 저장을 선택합니다.
  11. 리소스 페이지의 통합 응답에서 편집을 선택합니다.
  12. 응답 세부 정보콘텐츠 처리에서 바이너리로 변환을 선택합니다.
  13. 저장을 선택합니다.
  14. API를 배포합니다.
    참고: 자세한 내용은 API Gateway에서 REST API의 스테이지 설정을 참조하십시오.
  15. 스테이지 페이지의 스테이지 세부 정보에서 호출 URL을 기록해 둡니다. 예: https://1a2bc3d456.execute-api.region.amazonaws.com/test.
  16. Quick Suite 콘솔을 엽니다.
  17. 탐색 창에서 분석을 선택한 다음 이미지를 추가할 분석을 선택합니다.
  18. 시각화 자료 메뉴에서 사용자 지정 시각화 자료 콘텐츠를 선택합니다.
  19. 시각화 자료 사용자 지정을 선택합니다.
  20. 속성 창의 콘텐츠 사용자 지정에서 호출 URL을 입력합니다.
  21. 이미지로 표시 옵션을 켠 다음 적용을 선택합니다.

API Gateway는 이미지의 base64 문자열을 반환합니다. Quick Sight 인사이트 편집기는 API의 URL을 사용하여 이미지를 표시합니다.

CloudFront 콘솔

다음 단계를 완료합니다.

  1. CloudFront 콘솔을 엽니다.
  2. 탐색 창에서 배포를 선택한 다음 배포 생성을 선택합니다.
  3. 배포 생성 페이지에서 다음 정보를 입력합니다.
    오리진 도메인에 오리진의 도메인 이름을 입력합니다.
    오리진 액세스에서 **오리진 액세스 제어 설정(권장)**을 선택합니다.
    오리진 액세스 제어에서 새 OAC 생성을 선택한 다음 생성을 선택합니다.
  4. **Web Application Firewall(WAF)**에서 보안 보호 활성화 안 함을 선택합니다.
  5. 배포 생성을 선택합니다.
  6. 배포 세부 정보 페이지에서 배포 도메인 이름을 기록해 둡니다. 예: d2icdkfpjckhwg.cloufront.net.
  7. "The S3 bucket policy needs to be updated" 메시지가 표시되면 정책 복사를 선택합니다.
  8. Amazon S3 콘솔을 엽니다.
  9. 범용 버킷에서 오리진 도메인의 콘텐츠를 호스팅하는 버킷을 선택합니다.
  10. 버킷 세부 정보 페이지의 권한에서 편집을 선택합니다.
  11. 정책을 입력한 다음 변경 사항 저장을 선택합니다.
  12. 버킷 세부 정보 페이지의 객체에서 객체를 선택합니다.
  13. 객체 세부 정보 페이지에서 S3 URI를 기록해 둡니다. 예: s3://your-bucket-name/your_image.png.
  14. 새 브라우저 탭에서 S3 URI를 입력합니다. 예: d2icdkfpjckhwg.cloufront.net/your_image.png.
  15. Quick Sight 대시보드의 속성에서 비주얼 섹션을 선택한 다음 URL 필드에 사용자 지정 URI를 입력합니다.
  16. 적용을 선택합니다.
AWS 공식업데이트됨 10달 전
댓글 없음