You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Gitlab CI/CD通过aws-azure-cli认证部署AWS的替代方案咨询

替代GitLab CI AWS认证方案

临时应急方案(无需等待云团队)

  • 复用本地临时AWS凭证
    从本地工作站导出已通过aws-azure-cli获取的临时AWS凭证(包含AWS_ACCESS_KEY_ID、AWS_SECRET_ACCESS_KEY、AWS_SESSION_TOKEN三个变量),手动添加到GitLab CI/CD的受保护变量中。这类凭证8小时过期,到期后需重新导出更新,但可作为等待期间的临时解决办法。
    本地获取凭证命令:

    aws configure get aws_access_key_id
    aws configure get aws_secret_access_key
    aws configure get aws_session_token
    
  • CI容器内自动化aws-azure-cli登录
    在CI job脚本中安装aws-azure-cli,通过变量传入敏感信息完成自动化2FA认证(注意所有敏感变量需设为掩码+受保护,仅限指定分支使用):
    示例CI脚本片段:

    deploy_job:
      image: python:3.9
      script:
        - pip install aws-azure-cli
        - apt-get update && apt-get install -y oathtool
        # 生成TOTP验证码
        - TOTP_CODE=$(oathtool --totp -b $AZURE_TOTP_SECRET)
        # 登录获取AWS临时凭证
        - aws-azure-cli login --username $AZURE_USERNAME --password $AZURE_PASSWORD --totp $TOTP_CODE
        # 执行部署操作
        - aws s3 sync ./dist s3://your-deploy-bucket
    

长期合规方案(需云团队配合)

  • GitLab OIDC对接AWS IAM角色
    让云团队配置AWS IAM信任GitLab作为OIDC身份提供商,CI job可直接通过OIDC临时获取IAM角色权限,无需存储任何长期密钥。配置完成后,CI脚本示例:
    deploy_job:
      id_tokens:
        AWS_ID_TOKEN:
          aud: https://aws.amazon.com
      script:
        - ASSUME_ROLE_OUTPUT=$(aws sts assume-role-with-web-identity --role-arn arn:aws:iam::YOUR_ACCOUNT_ID:role/GitLabCI-Deploy-Role --role-session-name GitLabCI --web-identity-token $AWS_ID_TOKEN --duration-seconds 3600)
        - export AWS_ACCESS_KEY_ID=$(echo $ASSUME_ROLE_OUTPUT | jq -r '.Credentials.AccessKeyId')
        - export AWS_SECRET_ACCESS_KEY=$(echo $ASSUME_ROLE_OUTPUT | jq -r '.Credentials.SecretAccessKey')
        - export AWS_SESSION_TOKEN=$(echo $ASSUME_ROLE_OUTPUT | jq -r '.Credentials.SessionToken')
        # 执行部署
        - aws s3 sync ./dist s3://your-deploy-bucket
    
    该方案无需管理密钥,权限由IAM角色严格管控,是安全合规的最佳实践。

内容的提问来源于stack exchange,提问作者gwicks

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 17:30:57