Lambda API 작업, 리소스 및 조건 키

Lambda API 작업, 리소스 및 조건 키 (Lambda actions, resources, and conditions keys)

Lambda API에는 권한을 제어하기 위해 사용할 수 있는 일련의 작업, 리소스 유형, 조건 키가 있어요. 이 페이지에서는 IAM 정책에서 Lambda에 대한 액세스를 제어하는 방법을 설명해요.

출처: AWS Lambda 개발자 안내서

본문

AWS IoT Lambda 서비스는 IAM 권한과 통합돼요. Lambda API 작업에 대한 액세스를 제어하기 위해 IAM 정책에서 작업 이름, 리소스 ARN, 조건 키를 지정할 수 있어요.

Lambda 작업 (Lambda actions)

IAM 정책에서 Action 요소를 사용해 Lambda 작업에 대한 권한을 지정할 수 있어요. 각 작업은 lambda: 접두사를 사용하며, 예를 들어 lambda:InvokeFunction, lambda:CreateFunction, lambda:UpdateFunctionCode 가 있어요.

작업은 특정 Lambda API 호출에 대응해요. 예를 들어 InvokeFunction 작업은 Invoke API 호출에 대응하며, 함수를 호출하는 데 필요해요.

Lambda 리소스 (Lambda resources)

Lambda 리소스에는 함수, 함수 버전, 별칭, 레이어, 이벤트 소스 매핑이 포함돼요. IAM 정책의 Resource 요소에서 리소스 ARN을 지정해 권한이 적용되는 리소스를 제한할 수 있어요.

예를 들어 함수 ARN을 지정해 특정 함수에 대한 권한을 제한할 수 있어요.

arn:aws:lambda:us-east-1:123456789012:function:my-function

조건 키 (Condition keys)

조건 키를 사용해 IAM 정책의 권한을 더 세밀하게 제어할 수 있어요. Lambda는 권한을 구성하는 데 사용할 수 있는 여러 조건 키를 지원해요.

예를 들어 aws:SourceArn 조건 키를 사용해 Lambda 함수를 호출할 수 있는 소스(예: 다른 서비스의 특정 리소스)를 제한할 수 있어요.

정책 예제 (Policy examples)

함수에 대한 InvokeFunction 권한을 부여하는 IAM 정책의 예는 다음과 같아요.

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "lambda:InvokeFunction",
      "Resource": "arn:aws:lambda:us-east-1:123456789012:function:my-function"
    }
  ]
}

액세스를 위한 관리형 정책 (Managed policies)

AWS는 Lambda 작업에 대한 일반적인 권한을 제공하는 여러 관리형 정책을 제공해요. 예를 들어 AWSLambdaBasicExecutionRole 정책은 함수가 CloudWatch Logs에 로그를 쓸 수 있게 해줘요. AWSLambdaVPCAccessExecutionRole 정책은 함수가 VPC에 접근할 수 있게 해줘요.

더 알아보기 (Learn more)