AWS/Lambda - Lambda Role 설정하기/권한 설정
https://seungboo.tistory.com/11
참고) 람다 생성하기
AWS/Lambda - Lambda 시작하기/생성하기
AWS Lambda란? 공식 문서의 설명은 다음과 같다. https://docs.aws.amazon.com/ko_kr/lambda/latest/dg/welcome.html AWS Lambda란 무엇인가요? - AWS Lambda AWS Lambda란 무엇인가요? AWS Lambda은 서버를 프로비저닝하거나 관리
seungboo.tistory.com
람다 생성 페이지의 role 설정에는 세 가지 방법이 있다.
첫 번째는 basic lambda permissions, AWS에서 설정한 기본 람다 권한을 가진 롤을 생성하여 사용하는 것이다.
이 경우에는 Lambda를 만들때마다 role이 새로 생성되기 때문에 사용하지 않았다.
두 번째는 이미 만들어진 role을 재사용 하는 것. 경험 상 같은 권한을 필요로 하는 람다들이 많았기 때문에 이 방법을 주로 사용했다.
세 번째는 AWS에서 권한들을 묶어서 다양한 템플릿을 제공하는데, 이 role을 사용하는 것. 필요에 맞는 템플릿이 있다면 이 방법도 유용해보인다.
Use an existing role을 선택하기 전에, 미리 필요한 role을 만들어야 한다.
권한 관리를 담당하는 IAM에 들어가서 좌측의 Access Management 메뉴의 아래의 Roles를 클릭하자.
Create role을 클릭하여 필요한 role을 생성할 수 있다.
Create role을 누른 뒤 먼저 Lambda를 use case로 선택하고 다음으로 넘어간다
Next를 누르면 Add permissions 메뉴가 나온다.
여기서 알 수 있는 것은, role은 policy들로 구성되어 있다는 것이다. 어떤 policy들을 선택하느냐에 따라 해당 role의 권한이 달라진다.
Create policy가 있는 것에서 볼 수 있듯, 사용자 정의 policy 역시 생성하여 활용할 수 있다. 물론 기본적으로 AWS가 만들어 놓은 정책들이 존재한다.
내가 Step Function을 구성하는 Lambda에 사용한 role이다. DynamoDB와 SNS에 접근하기 위해 둘과 관련된 policy를 추가하였다.
그리고 무엇보다 중요한 것, 어떤 role을 구성하더라도, CloudWatchFullAccess는 꼭 넣어주자.
CloudWatch는 쉽게 말해 로그를 담당하는 기능이다.
람다가 CloudWatch에 대한 권한이 있어야만 동작 시 CloudWatch에 로그를 남겨놓는다!