Существует ли верблюжий компонент для использования AWS SDK InitiateAuth? - PullRequest
0 голосов
/ 10 сентября 2018

Мы хотим реализовать аутентификацию интерфейса в apache-camel с использованием AWS SDK InitiateAuth , где AuthFlowType равен USER_SRP_AUTH .Уже есть верблюжий компонент?Я нашел этот список компонентов Camel AWS , но я не знаю, смогу ли я использовать один из них.Я докажу это, но, возможно, у кого-то из вас есть некоторый опыт с этим.

[EDIT] На самом деле я хотел бы вызвать WebService с camel-cxf, и для этого я должен использовать AWSSDK для аутентификации.В конце концов, это поток OAuth, который я также могу изобразить с помощью CXF?

1 Ответ

0 голосов
/ 10 сентября 2018

Конечно, у Apache Camel есть много компонентов для амазонки. Пожалуйста, посмотрите это ссылка

Каждый компонент имеет свои собственные методы для достижения того, что вы хотите. Почти в каждом компоненте вы должны сделать аутентификацию. Верблюд - об отправке сообщений, и каждое сообщение должно быть украшено соответствующим заголовком и телом.

Это может пригодиться. Есть заголовки для аутентификации.

Из того, что я прочитал, amazon использует очереди для отправки и получения данных. Компонент, спрятанный за вышеупомянутой ссылкой, должен сделать трюк

Если ваше приложение Camel работает за брандмауэром или вам нужен больший контроль над конфигурацией AmazonSQSClient, вы можете создать свой собственный экземпляр:

AWSCredentials awsCredentials = new BasicAWSCredentials("myAccessKey", "mySecretKey");

ClientConfiguration clientConfiguration = new ClientConfiguration();
clientConfiguration.setProxyHost("http://myProxyHost");
clientConfiguration.setProxyPort(8080);

AmazonSQSClient client = new AmazonSQSClient(awsCredentials, clientConfiguration);

и обратитесь к нему в конфигурации компонента Camel aws-sqs:

from("aws-sqs://MyQueue?amazonSQSClient=#amazonSQSClient&delay=5000&maxMessagesPerPoll=5")
    .to("mock:result");
...