본문 바로가기

AWS

3-0. AWS Amazon Rekognition Video 구성 (SNS, SQS)

 

지금까지 이미지 파일을 이용해서 Amazon Rekognition을 사용해봤습니다.

 

이젠 비디오 파일을 이용해서 Amazon Rekognition을 사용을 해보려고 하는데요! 

비디오 파일을 이용하기 위해선 사용하기 전 구성해야 할 부분들이 있습니다. 꽤 복잡하니 주의하세유

 

 


 

1. AWS 계정 설정, IAM 사용자 생성 

1단계: AWS 계정 설정 및 IAM 사용자 생성 - Amazon Rekognition

 

1단계: AWS 계정 설정 및 IAM 사용자 생성 - Amazon Rekognition

이 페이지에 작업이 필요하다는 점을 알려 주셔서 감사합니다. 실망시켜 드려 죄송합니다. 잠깐 시간을 내어 설명서를 향상시킬 수 있는 방법에 대해 말씀해 주십시오.

docs.aws.amazon.com

 

이 단계는 어떤 AWS service를 사용하든 필수 단계인데요, 현재 포스팅에선 다루지 않고 넘어가겠습니다.

 

* 그러나, 사용자에게 권한이 있는지는 확인해야 합니다 

1. AmazonSQSFullAccess

2. AmazonRekognitionFullAccess

3. AmazonS3FullAccess

4. AmazonSNSFullAccess

짠, 이렇게 IAM 서비스에 들어가 해당 4가지 권한을 갖고 있는지 확인해줍니다. 없으면 추가해주세요

 

 

 

2. AWS CLI, AWS SDK 설정

이 부분은 https://developing-soosoo.tistory.com/47 에서 다뤘습니다. 

혹은 2단계: 설정AWS CLI및AWSSDK - Amazon Rekognition 를 참고하세요

 

 

 

 

3. Amazon SNS 주제 생성 

Amazon SNS 주제 : 커뮤니케이션 채널 역할을 하는 논리적 액세스 포인트

주제를 사용해 여러 엔드포인트를 그룹화할 수 있습니다. 이 때 저희의 엔드포인트는 SQS가 됩니다. 

 

1. SNS -> 주제 -> 주제 생성

이 때, 사용하려는 AWS 엔드포인트와 같은 region (지역)에 주제가 있어야 합니다! 

즉, 저희는 sqs, sns 주제 모두 동일하게 서울 region으로 설정해줬습니다. 

2.  세부정보 섹션

여기서 유형이 FIFO, 표준 두개가 있는데 저는 FIFO로 선택해줬습니다. 

* 이 때, 이름은 AmazonRekognition.fifo 로 지정해줍니다 * 

- 표시 이름은 선택사항입니다.

- 콘텐츠 기반 메시지 중복 제거도 선택사항입니다. 

나머지 밑에 선택 사항들은 수정하지 않고 바로 주제를 생성해줬습니다. 

 

짠 ! 생성됐습니다아 

이 때, ARN 값을 저장해두세요 ! 조만간 쓰입니다 !!

 

 

 

 

4. Amazon SQS 표준 대기열 생성

Amazon SQS (Simple Queue Service) 는 사용가능한 보안 호스팅 대기열을 제공하며 이를 통해 분산 소프트웨어 시스템과 구성요소를 통합 및 분리할 수 있습니다. 

 

 

1. Amazon SQS -> 대기열 -> 대기열 생성

표준과 FIFO 중 FIFO를 선택했습니다.

이름은 알아보기 쉽게 적어주시면 됩니다! (뒤에 .fifo 붙여야 합니다)

 

2. 대기열 생성

짠, 대기열 생성 버튼을 누르시면 완성입니다

* 이 때, sqs의 ARN도 잊지 않도록 기록해두세요 ! *

 

 

 

5. SNS 주제에 대한 대기열 구독 

이제 다시 전에 생성한 Amazon SNS로 이동합니다  

 

생성한 AmazonRekognition.fifo로 이동한 후, 

구독 생성을 클릭해줍니다 ! 

 

 

주제 ARN : 본인 SNS ARN (자동으로 입력됨)

프로토콜 : Amazon SQS 

엔드포인트 : 본인 SQS ARN (아까 생성한 sqs의 ARN 입력해주세요)

-> 구독 생성 

 

짠 ! 완료했습니다 ! 

 

 

 

6. Amazon SNS 주제에 Amazon SQS 대기열로 메세지 전송 권한 부여

우선, IAM 콘솔로 이동해줍니다. 

1. IAM -> 액세스 관리 -> 정책 -> 정책 생성 클릭

 

2. JSON -> 정책 입력

JSON 탭으로 이동해 위의 코드를 작성해줍니다 

"Effect":"Allow",

"Action":[ "sns:Publish"], "Resource":"SNS ARN"

 

정책 검토도 해준 후, 정책을 생성해줍니다.

 

 

 

7. IAM 서비스 역할 생성하기 (SNS 주제에 대한 액세스 권한 부여)

이제 Amazon Rekognition Video SNS 주제에 대한 액세스 권한을 부여하는 IAM 서비스 역할을 생성합니다.

(이 때, 서비스 역할의 ARN를 기록해두세요!)

 

1. 정책 바로 위에 있는 역할로 이동 -> 역할 만들기

 

2. rekognition 선택

(태그 추가는 그냥 넘어갔습니다) 

 

3. 역할 이름, 역할 설명 작성 -> 역할 만들기

역할 이름과 역할 설명은 본인이 알아볼 수 있도록 설정하면 됩니다!

 

완성 ! * 이 때 역할의 ARN도 기록해두세요 ! *

 

 

 

8. IAM 인라인 정책 추가 

 

1. 본인 IAM (사용자)로 이동해 '인라인 정책 추가' 클릭

 

2. 정책 생성 JSON으로 이동 후 코드 복사

 

< Amazon Rekognition Video 구성 - Amazon Rekognition 에 나와있는 json 코드 >

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "MySid",
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:Service role ARN from step 7"
        }
    ]
}

제공하는 코드에서

"Sid":"MySid" => "Sid":"Rekognition"

"Resource" : "(사용자 역할 ARN)"

으로 변경하면 됩니다. 

 

 

 

 


셋팅은 다 완료했습니다. 다음 포스팅부턴 rekognition video 사용 예제를 같이 알아봅시다