为了禁止 Lambda 直接从公网访问,您可以执行以下步骤:
- 更新 Lambda 函数的策略:
- 登录 AWS 控制台,导航至 Lambda 服务。
- 找到需要修改的 Lambda 函数,并进入其配置页面。
- 在函数配置页面,找到与 Lambda 函数关联的执行角色 (Execution Role)。
- 在 IAM 控制台中,找到该执行角色的权限策略。
- 修改策略,删除不必要的权限或添加适当的条件,以确保只有授权的实体可以调用 Lambda 函数。
- 添加 API Gateway 触发器:
- 在 API Gateway 服务中创建一个新的 API,作为 Lambda 函数的入口点。
- 定义 API 的端点和资源结构,以匹配 Lambda 函数的预期请求路径。
- 创建一个集成,将 API 与 Lambda 函数关联。
- 部署 API,使其可公开访问。
- 配置 Route 53:
- 登录 AWS 控制台,导航至 Route 53 服务。
- 添加一个新的 DNS 记录,将您的域名映射到 API Gateway 提供的端点。
- 添加 CDN 进行内容分发:
- 在 AWS CloudFront 服务中创建一个新的分发 (Distribution)。
- 配置分发,将 API Gateway 提供的端点作为源,并设置适当的缓存行为。
- 将 CDN 分发的域名与您的域名关联起来。
- 更新 Lambda 函数的策略以允许 CDN 请求:
- 回到 Lambda 函数的权限策略,更新以允许来自 CDN 的请求调用 Lambda 函数。
通过以上步骤,您可以实现 Lambda 禁止直接从公网访问,并通过 API Gateway、Route 53、CDN 提供安全可靠的服务。