You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS Lambda配置咨询:调用API需添加的策略及DNS解析(53端口/UDP)启用方法

AWS Lambda两项配置方案:IAM权限配置与DNS解析设置

一、IAM策略配置(允许调用API)

你的Lambda代码是调用外部公网HTTPS API(bittrex.com),这种场景下不需要额外添加专门的IAM策略——因为IAM权限主要用于控制Lambda对AWS内部服务(比如S3、API Gateway)的访问,调用外部公网API属于Lambda的出站网络请求,只要Lambda有正常的网络通路即可。

如果你的Lambda部署在VPC内,只需确保VPC安全组放行出站HTTPS(443端口)请求,这不属于IAM策略的范畴。

如果是调用AWS自家的API Gateway服务,才需要在Lambda执行角色的IAM策略中添加类似以下权限:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "execute-api:Invoke",
            "Resource": "arn:aws:execute-api:区域ID:账号ID:API ID/*/*/*"
        }
    ]
}

二、配置Lambda解析DNS(启用53端口与UDP协议)

DNS解析默认依赖UDP 53端口,配置分两种场景:

1. Lambda未部署在VPC中

这种情况下Lambda默认使用AWS公共DNS服务,无需手动配置UDP 53端口,代码中的域名(bittrex.com)会自动被解析。

2. Lambda部署在VPC中

需要完成两项配置:

  • 安全组出站规则:添加一条出站规则,允许UDP协议访问53端口,目标建议指定VPC的DNS服务器IP(通常是VPC网段的第二个IP,例如VPC网段为10.0.0.0/16时,DNS地址为10.0.0.2),也可按需设置为0.0.0.0/0(不推荐,安全性更低)。
  • 子网DNS配置:确保Lambda所在子网启用了DNS解析(VPC默认开启);若使用自定义DNS服务器,需在VPC的DHCP选项集中配置对应服务器地址。

附:你的Lambda代码

var https = require('https');
exports.handler = (event, context, callback) => {
    var params = {
        host: "bittrex.com",
        path: "/api/v1.1/public/getmarketsummaries"
    };
    var req = https.request(params, function(res) {
        let data = '';
        console.log('STATUS: ' + res.statusCode);
        res.setEncoding('utf8');
        res.on('data', function(chunk) {
            data += chunk;
        });
        res.on('end', function() {
            console.log("DONE");
            console.log(JSON.parse(data));
        });
    });
    req.end();
};

内容的提问来源于stack exchange,提问作者manuelBetancurt

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 02:20:12