[BUG] DefaultCredentialsProvider 顺序是不是有问题

未关闭
#286 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
3/5
预计耗时
1-2 天
新手友好度
70/100
Issue 类型
缺陷
描述清晰度
基本清楚
活跃度
活跃
技术栈
java

调研方向

Start with src/main/java/com/tencentcloudapi/common/provider/DefaultCredentialsProvider.java, especially lines 10–30, and compare its CvmRoleCredential and OIDCRoleArnProvider ordering with AWS's DefaultCredentialsProvider. Trace the provider failure behavior; done means the order matches the intended credential precedence and later providers remain available when an earlier provider fails.

由索引模型根据 Issue 内容生成。

描述

https://github.com/TencentCloud/tencentcloud-sdk-java/blob/71ef7085c283a5c2ac3285b0c0b2a01c92e1aa2c/src/main/java/com/tencentcloudapi/common/provider/DefaultCredentialsProvider.java#L10-L30

AWS 的 DefaultCredentialsProvider 顺序是:

  1. JVM system properties
  2. 环境变量
  3. Web Identity Token(EKS IRSA 的 AWS_ROLE_ARN + AWS_WEB_IDENTITY_TOKEN_FILE)
  4. AWS profile
  5. 容器凭证端点(ECS 等)
  6. EC2 Instance Profile(IMDS)

https://github.com/aws/aws-sdk-java-v2/blob/master/core/auth/src/main/java/software/amazon/awssdk/auth/credentials/DefaultCredentialsProvider.java

但是 tencent 的 DefaultCredentialsProvider 的 CvmRoleCredential 是在 OIDCRoleArnProvider 前面的,而且错误后不会兜底。

主要语言
Java
星标
582
派生
282
PR 合并指标
30 天内没有已合并 PR

环境准备

这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

TencentCloud/tencentcloud-sdk-java 的其他 Issue

查看 TencentCloud/tencentcloud-sdk-java 的全部 Issue

相似的 Issue

更多 Java Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。