Получил 404 от http://169.254.170.2/$AWS_CONTAINER_CREDENTIALS_RELATIVE_URI - PullRequest
0 голосов
/ 10 февраля 2019

В AWS ECS или AWS CodeBuild и т. Д. При попытке получения учетных данных с использованием: http://169.254.170.2/$AWS_CONTAINER_CREDENTIALS_RELATIVE_URI

внезапно с 7 февраля 2019 г. - 404 не найдено!

curl -qL -o aws_credentials.json http://169.254.170.2/$AWS_CONTAINER_CREDENTIALS_RELATIVE_URI

Ожидаемый результат должен быть действительным json сеанса учетных данных AWS

1 Ответ

0 голосов
/ 10 февраля 2019

После короткого расследования:

Я обнаружил, что $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

Вывод : начиная с 6 февраля или 7 2019 , AWS добавляет строгую проверку и прервал запросс 404 для двойной косой черты //

...