从 http://169.254.170.2/$AWS_CONTAINER_CREDENTIALS_RELATIVE_URI 得到 404
Got 404 from http://169.254.170.2/$AWS_CONTAINER_CREDENTIALS_RELATIVE_URI
在 AWS ECS 或 AWS CodeBuild 等上,当尝试使用以下方式检索凭证时:
http://169.254.170.2/$AWS_CONTAINER_CREDENTIALS_RELATIVE_URI
自 2019 年 2 月 7 日起突然出现 - 我找不到 404!
curl -qL -o aws_credentials.json http://169.254.170.2/$AWS_CONTAINER_CREDENTIALS_RELATIVE_URI
预期结果应该是有效的 json AWS 凭证会话
经过简短调查:
我发现 $AWS_CONTAINER_CREDENTIALS_RELATIVE_URI
已经以斜线开头 '/
'
[e.g AWS_CONTAINER_CREDENTIALS_RELATIVE_URI=/v2/credentials/xxxx-xxxx-xxxx-xxxx-xxxxx]
解决方法:去掉IP后面的斜杠即可*
e.g http://169.254.170.2$AWS_CONTAINER_CREDENTIALS_RELATIVE_URI
TL;DR;
我 运行 curl
与 -v
在 AWS CodeBuild 上:
> GET //v2/credentials/xxxx-xxxx-xxxx-xxxx-xxxxx HTTP/1.1
> Host: 169.254.170.2
> User-Agent: curl/7.47.0
> Accept: */*
>
< HTTP/1.1 404 Not Found
结论:自2019 年 2 月 6 日或 7 日,AWS 添加严格检查并破坏 带有 404 的请求
双斜杠 //
在 AWS ECS 或 AWS CodeBuild 等上,当尝试使用以下方式检索凭证时: http://169.254.170.2/$AWS_CONTAINER_CREDENTIALS_RELATIVE_URI
自 2019 年 2 月 7 日起突然出现 - 我找不到 404!
curl -qL -o aws_credentials.json http://169.254.170.2/$AWS_CONTAINER_CREDENTIALS_RELATIVE_URI
预期结果应该是有效的 json AWS 凭证会话
经过简短调查:
我发现 $AWS_CONTAINER_CREDENTIALS_RELATIVE_URI
已经以斜线开头 '/
'
[e.g AWS_CONTAINER_CREDENTIALS_RELATIVE_URI=/v2/credentials/xxxx-xxxx-xxxx-xxxx-xxxxx]
解决方法:去掉IP后面的斜杠即可*
e.g http://169.254.170.2$AWS_CONTAINER_CREDENTIALS_RELATIVE_URI
TL;DR;
我 运行 curl
与 -v
在 AWS CodeBuild 上:
> GET //v2/credentials/xxxx-xxxx-xxxx-xxxx-xxxxx HTTP/1.1
> Host: 169.254.170.2
> User-Agent: curl/7.47.0
> Accept: */*
>
< HTTP/1.1 404 Not Found
结论:自2019 年 2 月 6 日或 7 日,AWS 添加严格检查并破坏 带有 404 的请求
双斜杠 //