AWS-CDN只能备用域名访问-使用Lambda@Edge(禁止分配的域名访问)

场景:cdn使用备用域名后,希望用户只能从备用域名访问,而不是自动分配的cdn域名,这也将是一个安全漏洞,被扫描到cdn域名访问刷流量等!
【建议部署前查看】参考链接

1.官方cdn返回示例

2.lambda@edge 403自定义示例

1. 部署cdn 并且绑定备用域名


测试能够访问

两个域名都可以访问!说明 cdn 到 源站正常!

2. 部署lambda@edge (lambda 创建nodejs脚本部署到cdn)

运行环境:

Node.js 20.x

创建主文件index.js

js 复制代码
'use strict';

exports.handler = (event, context, callback) => {
   const request = event.Records[0].cf.request;
   const headers = request.headers;
   const hostHeader = request.headers['host'][0].value;
   
   const response_error = {
    status: '403',
    statusDescription: 'Forbidden',
    body: 'CDN Domain Name Access Denied !!!',
    headers: {
        'content-type': [{
            key: 'Content-Type',
            value: 'text/plain'
        }]
    }
   };
   
   if (hostHeader == 'd1lwrlbp671jw0.cloudfront.net') {
       callback(null, response_error);
   } else {
       callback(null, request);
   }
};
配置lambda权限


部署到lambda@edge


3. 等待cdn部署生效,查看监控

最下面有绑定关系,确认是否绑定错误

测试

效果实现!!!

报错 502 503 时,说明 函数错误 检查相关lambda。

相关推荐
小小星球之旅2 小时前
SpringBoot后端实现阿里云oss上传文件
阿里云·云计算
吉普赛的歌6 小时前
【阿里云】记一次oss攻击
阿里云·云计算
wanhengidc6 小时前
移动端云手机的优势都有哪些?
运维·服务器·游戏·智能手机·云计算
siliconstorm.ai9 小时前
阿里下场造“机器人”:从通义千问到具身智能,中国AI正走向“实体化”阶段
人工智能·自然语言处理·chatgpt·机器人·云计算
沐欣工作室_lvyiyi12 小时前
基于腾讯云的物联网导盲助手设计与实现(论文+源码)
单片机·物联网·云计算·毕业设计·腾讯云·导盲杖
九河云13 小时前
在云计算环境中实施有效的数据安全策略
大数据·网络·数据库·云计算
openHiTLS密码开源社区13 小时前
ARMv9 CCA机密计算架构演进技术解析:重塑云原生时代的数据安全基石
云计算·arm·trustzone·realm·cca·机密计算·tee/ree
缘的猿1 天前
云计算划分标准与Kubernetes NetworkPolicy深度解析
容器·kubernetes·云计算
互联网志1 天前
云计算综合标准化体系建设提供系统性指引
云计算
王道长服务器 | 亚马逊云1 天前
AWS Shield 与海外高防服务器的对比分析
服务器·云计算·aws