Amazon web services 得到404从http://169.254.170.2/$AWS\u容器\u凭证\u相对\u URI
在AWS ECS或AWS CodeBuild等上,尝试使用以下方式检索凭据时: $AWS\u容器\u凭证\u相对\u URI 从2019年2月7日开始,我突然发现404没有找到Amazon web services 得到404从http://169.254.170.2/$AWS\u容器\u凭证\u相对\u URI,amazon-web-services,credentials,amazon-ecs,aws-codebuild,Amazon Web Services,Credentials,Amazon Ecs,Aws Codebuild,在AWS ECS或AWS CodeBuild等上,尝试使用以下方式检索凭据时: $AWS\u容器\u凭证\u相对\u URI 从2019年2月7日开始,我突然发现404没有找到 curl -qL -o aws_credentials.json http://169.254.170.2/$AWS_CONTAINER_CREDENTIALS_RELATIVE_URI 短期调查后,预期结果应为AWS凭证会话的有效json: 我发现$AWS\u CONTAINER\u CREDENTIALS\u RE
curl -qL -o aws_credentials.json http://169.254.170.2/$AWS_CONTAINER_CREDENTIALS_RELATIVE_URI
短期调查后,预期结果应为AWS凭证会话的有效json: 我发现
$AWS\u CONTAINER\u CREDENTIALS\u RELATIVE\u 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;博士强>
我在AWS CodeBuild上使用-v
运行curl
:
> 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
>获取//v2/credentials/xxxx-xxxx-xxxx-xxxx-xxxxx HTTP/1.1
>主持人:169.254.170.2
>用户代理:curl/7.47.0
>接受:*/*
>
未找到
结论:自2019年2月6日或7日起,AWS增加了一项严格的检查,以404打破了请求
对于双斜杠
/
,您是否仍在AWS代码构建中看到这一点?如果是,哪个区域?@SubinMathew right,似乎AWS通过301重定向解决了它:``尝试169.254.170.2…*已连接到169.254.170.2(169.254.170.2)端口80(#1)>GET//v2/credentials/xxxx-xxxx-xxxx-xxxx-xxxx HTTP/1.1>用户代理:curl/7.35.0>主机:169.254.170.2>接受:/``我在ECS代理端为此打开了一个错误:。