GitLab CI: 告别EC2 Instance Profile,拥抱OIDC在构建云原生CI/CD流水线时,我们经常遇到的第一个挑战就是“授权”。一个经典的场景是:运行在AWS EC2上的GitLab Runner需要将构建好的Docker镜像推送到AWS ECR(弹性容器镜像服务)。最直接的方案,莫过于为EC2实例配置一个拥有ECR推送权限的IAM Instance Profile。这套方案在纯AWS环境中优雅且高效,因为它免去了管理静态密钥的烦恼。但当我们的Runner需要运行在本地、数据中心或其他云平台时,这套“AWS专属”的授权模式便会立刻失灵。接下来将探讨这一困境,并引