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

使用AWS Secrets Manager检索密钥遇UnknownServiceError及CLI服务缺失求助

解决AWS Secrets Manager的UnknownServiceError和CLI不可用问题

看起来你踩了AWS SDK/CLI版本太旧的坑啦!这个UnknownServiceError: Unknown service: 'secretsmanager'和CLI里提示secretsmanager不是有效服务的问题,本质都是同一个原因:你的AWS开发工具版本太老,还没集成Secrets Manager的支持——毕竟Secrets Manager是2018年才推出的服务,旧版本的SDK/CLI根本不知道它的存在。

下面分两部分给你解决办法:

一、修复SDK的密钥检索错误

  1. 先确认当前SDK版本
    以Python的boto3为例,运行以下命令查看版本:

    pip show boto3
    pip show botocore
    

    要支持Secrets Manager,boto3至少需要1.7.0以上版本,botocore得是1.10.0以上。其他语言的SDK也类似,比如Java SDK需要包含aws-java-sdk-secretsmanager模块的新版本。

  2. 升级到最新版SDK

    • Python(boto3):
      pip install --upgrade boto3 botocore
      
    • Node.js(aws-sdk):
      npm install aws-sdk@latest
      
    • Java(Maven):更新pom.xml里的AWS SDK依赖到最新稳定版,或者单独添加aws-java-sdk-secretsmanager的最新依赖。
      升级完成后,重新运行你的密钥检索代码,应该就能正常识别secretsmanager服务了。

二、修复AWS CLI的服务不可用问题

  1. 检查当前CLI版本
    运行命令查看:

    aws --version
    

    如果你用的是AWS CLI v1,版本在1.14.x及以前的话,是没有Secrets Manager相关命令的;v2的旧版本也可能存在这个问题。

  2. 升级AWS CLI

    • 如果你是用pip安装的CLI v1:
      pip install --upgrade awscli
      
    • 如果你用的是AWS CLI v2:根据你的操作系统下载最新安装包重新安装,比如Linux环境可以用:
      curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
      unzip awscliv2.zip
      sudo ./aws/install
      

    升级后,运行aws secretsmanager help,如果能显示完整的命令帮助,就说明已经支持Secrets Manager了,接下来用aws secretsmanager get-secret-value这类命令就能正常查询密钥啦。

额外提醒

等工具版本问题解决后,还要确保你的AWS账号(或EC2实例的IAM角色)有访问Secrets Manager的权限,比如需要secretsmanager:GetSecretValue这类权限,避免后续遇到权限相关的报错。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 09:05:30