Lambda Function URL 설정 옵션 중 하나인 AWS_IAM 옵션은 보안과 액세스 제어에 중요한 역할을 한다고 합니다. AWS_IAM과 NONE 중 어떤 옵션으로 진행해야 하는지 정하기 위해 찾아본 정보를 정리했습니다.
AWS_IAM 옵션이란?
AWS_IAM 옵션을 선택하면 AWS Identity and Access Management (IAM)을 통해 권한을 부여하지 않은 사용자나 역할은 AWS Lambda 함수에 액세스할 수 없습니다.
AWS_IAM을 사용하려면 다음과 같은 과정이 필요합니다.
1. IAM 사용자 및 역할 설정
AWS IAM을 사용하여 액세스 권한을 가진 사용자 또는 역할을 생성하고 구성합니다. 이 엔터티들은 Lambda 함수를 호출할 수 있는 권한을 가져야 합니다.
2. API Gateway와 Lambda 통합
Lambda 함수를 호출할 때, 일반적으로 Amazon API Gateway와 통합하여 API를 구성합니다. API Gateway는 요청을 받아 Lambda 함수로 라우팅하는 역할을 합니다.
3. IAM 권한 부여
API Gateway와 Lambda 함수 간의 연결에서도 IAM 권한 설정이 필요합니다. 이는 특정 사용자 또는 역할만이 API Gateway를 통해 Lambda 함수에 액세스할 수 있도록 합니다.
4. 인증 및 권한 확인
AWS_IAM을 사용하면 Lambda 함수 호출을 시도하는 클라이언트는 AWS 자격증명을 사용해야 합니다. 이 자격증명에 따라 요청이 승인되거나 거부됩니다.
5. AWS IAM 정책 구성
Lambda 함수와 API Gateway에 대한 IAM 정책을 구성해야 합니다. 이를 통해 특정 동작에 대한 액세스 권한을 설정합니다.
6. 권한 관리
IAM 정책을 적절하게 관리하고 필요 최소한의 권한을 할당하는 것이 중요합니다.
즉, AWS Lambda 함수에 AWS_IAM 인증을 사용하는 경우 개발 및 AWS 관련 지식이 필요하다는 사실을 알 수 있습니다.
결론
따라서 간단한 웹 애플리케이션 또는 공개적으로 액세스할 수 있는 서비스의 경우, NONE 인증을 사용하여 일반 사용자도 쉽게 액세스할 수 있도록 설정하는 것이 더 나을 수 있다고 합니다.