其他
所有权验证
证明你控制 SaaS 评估目标域名。
所有权验证
SaaS 评估要求先完成所有权验证,熵矢才能评估目标域名。这可防止未授权用户对并不控制的服务提交评估。
所有权验证出现在 SaaS 评估流程的 连通性检查 之后。

工作原理
- 熵矢为目标域名生成验证文件名和验证内容。协议文件名通常为
hash.txt,请以界面显示的精确文件名为准。 - 你将该内容发布到同一域名下所需的
/.well-known/路径。 - 熵矢从 SaaS 环境拉取该 URL。
- 内容匹配后,域名标记为已验证,你可以继续评估。
验证内容是临时的。若过期,请在所有权验证步骤重新生成内容,并替换已发布文件。
所需 URL
若目标服务为:
https://demo-shop.example.com/api/v1
验证文件必须能从域名根路径访问,例如:
https://demo-shop.example.com/.well-known/hash.txt
请使用熵矢界面中显示的精确文件名和精确内容(协议文件名通常为 hash.txt)。不要添加 HTML 标记、引号、注释或额外空行。
Nginx 示例
将验证文件放到 Nginx 可提供的目录下:
mkdir -p /usr/share/nginx/html/.well-known
printf '%s' 'zast-generated-verification-content' > /usr/share/nginx/html/.well-known/hash.txt
若现有反向代理不会从 /.well-known/ 提供静态文件,请添加 location 块:
server {
server_name demo-shop.example.com;
location = /.well-known/hash.txt {
root /usr/share/nginx/html;
default_type text/plain;
}
location / {
proxy_pass http://demo-shop-api:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
修改配置后重新加载 Nginx:
sudo nginx -t
sudo systemctl reload nginx
Apache 示例
在文档根目录下创建验证文件:
mkdir -p /var/www/html/.well-known
printf '%s' 'zast-generated-verification-content' > /var/www/html/.well-known/hash.txt
若 /.well-known/ 访问受限,请显式允许:
<Directory "/var/www/html/.well-known">
Require all granted
</Directory>
重新加载 Apache:
sudo apachectl configtest
sudo systemctl reload apache2
对象存储与 CDN
对于静态站点或由 CDN 托管的域名,将验证文件上传到源站存储桶或静态托管服务中的 .well-known 路径,必要时清除 CDN 缓存。
常见示例:
- Amazon S3 与 CloudFront:将
.well-known/hash.txt上传到 S3 存储桶,并使 CDN 路径失效。 - Google Cloud Storage:上传
.well-known/hash.txt,并确保可公开读取。 - Azure Static Website 或 Blob Storage:将
.well-known/hash.txt上传到 Web 容器,并确认公开访问。
排查
- 在无痕浏览器窗口打开验证 URL,确认返回纯文本。
- 确认域名、协议和端口与连通性检查中使用的目标 URL 一致。
- 移除将
/.well-known/hash.txt重定向到登录页、SPA 壳或 HTML 错误页的规则。 - 替换过期验证内容后,清除 CDN 或反向代理缓存。
- 检查可能阻止熵矢读取该文件的 WAF 和机器人防护规则。
- 若先前内容已过期,请重新生成验证内容。
所有权验证成功后,返回评估流程,继续 源码、测试账号 和 检查并提交。