SslBundle integration with FeignClients
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 初心者へのやさしさ
- 55/100
- issue の種類
- 機能追加
- 明瞭さ
- おおむね明確
- 活発さ
- 活発
- 技術スタック
- java, spring-boot
調査の方向性
Feign クライアントの設定エントリポイントから始め、示されている SslBundles/SSLContext アプローチと RestTemplateBuilder.setSslBundle を比較してください。Feign クライアントが Client をどのように構築するかを追跡し、SSL bundle を選択できる箇所を特定してください。完了の条件は、FeignClients が設定済みの Spring Boot SSL bundle を使用でき、動作とエラー処理がテストでカバーされていることです。
索引モデルが issue の本文から書いたものです。
説明
Recently, in spring-boot 3.1, spring team introduced the SslBundles component as a convenient way to configure SSL connection to RestTemplate and RestClient.
As reference: https://spring.io/blog/2023/06/07/securing-spring-boot-applications-with-ssl
I similar approach would be interesting to exist in the spring-cloud-openfeign.
I am currently taking the following approach:
application.yml
spring:
ssl:
bundle:
jks:
secure-service:
key:
alias: "secure-service"
keystore:
location: "classpath:keystore.p12"
password: "myStrongPassword"
type: "PKCS12"
@Bean
@ConditionalOnProperty(prefix = "spring.ssl.bundle.jks.secure-service.key", name = "alias")
public Client feignClient(SslBundles sslBundles) throws Exception {
// "secure-service" is defined in application properties
try {
SslBundle sslBundle = sslBundles.getBundle("secure-service");
SSLContext sslContext = sslBundle.createSslContext();
log.info("Configuring SSL Context for FeignClient");
return new Client.Default(sslContext.getSocketFactory(), new DefaultHostnameVerifier());
} catch (NoSuchSslBundleException ex) {
log.error("SSLContext not provided. Creating FeignClient without sslContext.");
throw new IllegalStateException("spring.ssl.bundle.jks.secure-service.key.alias not configure correctly. Please change your application properties, yml or environment configuration.");
}
}
I proposed approach would be similar to this:
@Bean
public restTemplate(RestTemplateBuilder restTemplateBuilder, SslBundles sslBundles) {
this.restTemplate = restTemplateBuilder.setSslBundle(sslBundles.getBundle("secure-service")).build();
}
Further reference: https://www.baeldung.com/spring-boot-security-ssl-bundles
- 主要言語
- Java
- スター
- 1.3k
- フォーク
- 835
- 平均マージ
- 23時間 57分
- マージ済み PR(30日)
- 25
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートなし
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
spring-cloud/spring-cloud-openfeign のほかの issue
-
question
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
spring-cloud/spring-cloud-openfeign#1392 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
FeignClientsConfiguration$MicrometerConfiguration.class cannot be opened because it does not existオープンfeedback-provided
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
spring-cloud/spring-cloud-openfeign#1379 · コメント 5 件 ·
メンテナーはふだん 1 日以内に返信
-
waiting-for-triage
難易度 3/5 1〜2日 初心者へのやさしさ 57/100
spring-cloud/spring-cloud-openfeign#1344 · コメント 2 件 ·
メンテナーはふだん 1 日以内に返信
-
waiting-for-triage
難易度 4/5 3〜5日 初心者へのやさしさ 45/100
spring-cloud/spring-cloud-openfeign#1343 ·
メンテナーはふだん 1 日以内に返信
-
waiting-for-triage
難易度 3/5 1〜2日 初心者へのやさしさ 45/100
spring-cloud/spring-cloud-openfeign#1340 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
spring-cloud/spring-cloud-openfeign の issue をすべて見る
似ている issue
-
priority: p2 type: bug
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
googleapis/java-genai#1372 ·
メンテナーはふだん 1 日以内に返信
-
GeoSeries scale and skew tests fail with pytest 9.2.0対応中かも @jiayuasu が今日担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
メンテナーはふだん 1 日以内に返信
-
priority: medium Review effort [1-5]: 3 status: needs-triage type: bug
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
carlos-emr/carlos#5431 ·
メンテナーはふだん 1 日以内に返信
-
Integration tests: jetty:run fails with WELD-001408 for CountryJpaService対応中かも @viniciusmachak が今日担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 66/100
primefaces/primefaces#15431 ·
メンテナーはふだん 1 日以内に返信
-
test(multi-tenancy): assert cross-tenant vulnerability reads are refused in the CWE isolation testオープン
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
OpenAEV-Platform/openaev#8792 ·
メンテナーはふだん 2 日以内に返信