Oreste Creolese created CAMEL-18097:
---------------------------------------
Summary: Unable to override uri-endpoint-override
override-endpoint options for STS
Key: CAMEL-18097
URL: https://issues.apache.org/jira/browse/CAMEL-18097
Project: Camel
Issue Type: Bug
Affects Versions: 3.14.2
Reporter: Oreste Creolese
Our goal is to no longer access AWS endpoints via a custom proxy but to access
them via VPC endpoints from AWS. To make this work in our secured network we
use our own VPC endpoints which we configure with the option:
uri-endpoint-override (string) and override-endpoint (boolean). Now the problem
is that the options are not used at all and the application always uses the
default endpoints which have no access in our network. Because of this the STS
component can't execute a HTTP request.
*And in the console the following error message appears:*
{code:java}
Unable to execute HTTP request: Connect to sts.eu-central-1.amazonaws.com:443
[sts.eu-central-1.amazonaws.com/54.239.54.207] failed: Connect timed out,
ContainerCredentialsProvider(): Cannot fetch credentials from container -
neither AWS_CONTAINER_CREDENTIALS_FULL_URI or
AWS_CONTAINER_CREDENTIALS_RELATIVE_URI environment variables are set
{code}
As taken from the error message, the default endpoint
sts.eu-central-1.amazonaws.com:443 is used.
*This is how our application.properties looks in which the options are set:*
{{}}
{code:java}
camel.component.aws2-sts.override-endpoint=true
camel.component.aws2-sts.uri-endpoint-override=https://vpce-???-???.sts.eu
central1.vpce.amazonaws.com{code}
{{ }}
*We are using the following versions:*
* Apache Camel 3.14.2
* Spring Boot 2.5.10
*Dependencies*
{code:java}
<properties>
<java.version>14</java.version>
<camel.version>3.14.2</camel.version>
<spring-boot.version>2.5.10</spring-boot.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.camel.springboot</groupId>
<artifactId>camel-aws2-s3-starter</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.camel.springboot</groupId>
<artifactId>camel-aws2-sts-starter</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-jetty</artifactId>
<version>${camel.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-json-validator</artifactId>
<version>${camel.version}</version>
</dependency>
</dependencies>{code}
{{ }}
*Info* With ticket CAMEL-16171 , Camel added the usage of uri-endpoint-override
and override-endpoint options attributes for all AWS components among others
for STS.
Do you have any idea why the options are not overwritten? Thanks a lot for your
help!
--
This message was sent by Atlassian Jira
(v8.20.7#820007)