람다
람다 정책을 사용하여 Amazon API Gateway를 사용하지 않고 API에서 AWS 람다 함수를 직접 트리거할 수 있습니다.
게이트웨이 지원
| 게이트웨이 | 정책 버전 |
|---|---|
| DataPower® API Gateway | 1.3.0 |
이 주제에서는 어셈블리 사용자 인터페이스에서 정책을 구성하는 방법에 대해 설명합니다. OpenAPI 소스에서 정책을 구성하는 방법에 대한 세부사항은 Lambda를 참조하십시오.
정보
람다 정책을 사용하면 Amazon API Gateway 을 사용하지 않고도 API 어셈블리 내에서 AWS 람다 함수를 트리거할 수 있습니다. API 어셈블리에 정책을 추가할 때 Lambda 함수를 지정하여 호출하고 이를 사용하기 위한 신임 정보를 제공할 수 있습니다. 자격 증명은 AWS IAM 역할 또는 액세스 키 ID/비밀 액세스 키 쌍일 수 있습니다. 람다 정책 수정 팩에서 람 다 정책을 다운로드할 수 있습니다.
- 이 주제의 AWS에서 권한 및 신뢰 설정 절에 설명된 대로 AWS 에서 람다 기능에 대한 액세스를 구성하십시오.
- 이 항목의 프로퍼티 섹션에 있는 정책 속성을 사용하여 API Connect에서 API 정책을 정의합니다.
- 람다 정책은 VPC 엔드포인트를 사용하여 게이트웨이에서 람다 서비스로의 통신이 AWS 프라이빗 백본을 통해 이루어지도록 합니다.
- 람다에 대한 정보와 람다 기능 사용에 대한 지침은 AWS 람다 문서를 참조하세요.
AWS 에서 권한 및 신뢰 설정
사용자의 요구에 가장 적합한 옵션에 대한 지시사항을 사용하십시오.
- 액세스 키 ID/비밀 액세스 키
- 하나 이상의 람다 기능을 호출할 수 있는 권한이 있는 계정의 AWS 액세스 키 ID/AWS 시크릿 액세스 키 쌍을 제공하십시오. 이 계정의 권한은 가능한 한 범위가 좁아야 합니다. 계정은 하나 이상의 Lambda 함수를 호출하는 기능 이외의 다른 권한이 없는 서비스 계정이어야 합니다. 자세한 내용은 람다용 ID 기반 IAM 정책 문서를 참조하세요.
액세스 키 ID/비밀 액세스 키 인증 옵션을 사용하려면 다음 단계를 완료하여 계정의 IAM 서비스를 사용하고 API Connect과의 제한된 통신이 가능하도록 적절한 권한이 있는 IAM 서비스 계정을 만드세요:
- AWS 관리 콘솔에 로그인하고 IAM 콘솔을 엽니다.
- AWS IAM 콘솔의 탐색 목록에서 사용자 를 클릭한 후 사용자 추가를 클릭하십시오.
- "사용자 세부사항 설정" 에 대한 프롬프트가 표시되면 사용자 이름 ( AWS 계정 내에서 고유) 을 제공하고 액세스 키-프로그램 방식 액세스를 선택하십시오.
비밀번호 - AWS 관리 콘솔 액세스 옵션을 선택할 수 있지만 API Connect와의 상호 작용에는 필요하지 않습니다.
새 사용자 계정에 대한 권한을 정의하기 위한 다양한 옵션이 있습니다. 사용자를 사용자 그룹에 추가하거나 사용자에게 직접 정책을 첨부하는 방법에 대한 자세한 내용은 AWS ID 및 액세스 관리 사용 안내서를 참조하세요.
최소 권한 원칙을 준수하는 사용자 권한을 정의하는 간단한 방법은 권한이 없는 IAM 사용자를 작성한 후 해당 사용자를 다음 단계에 설명된 대로 특정 Lambda 기능의 권한 구성에 추가하는 것입니다.
- "사용자 세부사항 설정" 페이지에서 새 사용자 계정을 변경하지 않고 다음: 태그 를 클릭하십시오.
- 원하는 태그 를 작성한 후 다음: 검토를 클릭하십시오.
- 설정을 검토하고 사용자 작성을 클릭하십시오.
나머지 단계에서 권한을 지정하므로
This user has no permissions경고를 무시하십시오. - .csv 다운로드 를 클릭하여 새 사용자의 액세스 키 ID 및 시크릿 액세스 키를 저장하고 안전한 위치에 저장하십시오. 이 값은 API Connect에서 API의 람다 정책을 구성할 때 AWS 액세스 키 ID 및 AWS 비밀 액세스 키로 사용됩니다.
- 다음과 같이 Lambda 함수를 업데이트하여 새 사용자에게 권한을 제공하십시오.
- 람다 콘솔에서 함수 페이지를 여십시오.
- API Connect이 호출할 함수를 선택합니다.
- 구성을 클릭하십시오.
- 자원 기반 정책 명령문 섹션에서 권한 추가를 클릭하십시오.
- AWS 계정 을 선택하고 고유한 명령문 ID를 추가하십시오.
- 프린시펄 을 새 사용자의 ARN으로 설정하십시오.
arn:aws:iam::<AWS_account_ID>:user/<username>, available on the page. - 조치 를
lambda:InvokeFunction로 설정하십시오. - 저장 을 클릭하십시오.
사용자 계정이 호출할 모든 Lambda 함수에 대해 이 단계를 반복하십시오.
특성
다음 표에서는 정책 특성을 나열하고, 특성이 필수인지 여부를 표시하며, 올바른 입력 값과 기본 입력 값을 지정하고, 값의 데이터 유형을 지정합니다.
| 특성 레이블 | 필수 | 설명 | 데이터 유형 |
|---|---|---|---|
| 제목 | 아니오 | 해당 정책의 제목입니다. 기본값은 lambda입니다. |
문자열 |
| 설명 | 아니오 | 정책의 설명입니다. | 문자열 |
| AWS 액세스 키 ID | 예 | AWS 액세스 키는 AWS IAM 사용자의 장기 신임 정보입니다. AWS 역할 ARN 가정 이 대신 제공되지 않는 경우 필수입니다. AWS에서 액세스 키 쌍 작성에 대한 지시사항은 이 주제의 액세스 키 ID/시크릿 액세스 키 를 참조하십시오. |
문자열 |
| AWS 시크릿 액세스 키 | 예 | 지정된 AWS 액세스 키 ID에 해당하는 시크릿 액세스 키입니다. | 문자열 |
| 함수 | 예 | 다음 형식 중 하나를 사용하여 실행할 AWS Lambda 함수의 이름 또는 Amazon 자원 이름 (ARN) 입니다.
자세한 내용은 |
문자열 |
| 지역 | 예 | Ambda 함수가 호스팅되는 AWS 지역입니다. | 문자열 |
| 규정자 | 아니오 | 실행할 Lambda 함수의 별명 또는 버전입니다. 자세한 내용은 |
문자열 |