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

gimme-aws-creds注册MFA设备时抛出KeyError:'sid'报错问题

问题描述

我在使用以下配置部署gimme-aws-creds工具:

[DEFAULT]
okta_org_url = https://xxxxx.okta.com
okta_auth_server = 
client_id = 
gimme_creds_server = appurl
aws_appname = 
aws_rolename = all
write_aws_creds = True
cred_profile = default
okta_username = my_okta_user_name
app_url = https://xxxxx.okta.com/home/amazon_aws/app_instance_id/something
resolve_aws_alias = True
include_path = True
preferred_mfa_type = token:software:totp
remember_device = True
aws_default_duration = 150000
device_token = 
output_format = 

运行环境

  • 操作系统:Windows 10
  • Python版本:3.10.5
  • pip3版本:22.1.2
  • gimme-aws-creds版本:2.4.0

执行gimme-aws-creds --register-device命令注册MFA设备时,抛出如下错误:

File "C:\Tools\Python\lib\site-packages\requests\cookies.py", line 413, in _find_no_duplicates
raise KeyError(f"name={name!r}, domain={domain!r}, path={path!r}") KeyError: "name='sid', domain=None, path=None"

报错截图参考:
报错截图

解决方法

这个报错是gimme-aws-creds 2.4.0版本的固有逻辑缺陷:代码默认首次请求Okta服务后响应一定会携带sid标识的Cookie,没有做存在性判断,当首次请求未返回该Cookie时就会直接抛出KeyError,按以下顺序尝试修复即可:

  1. 优先升级gimme-aws-creds到最新版本,这个逻辑缺陷已经在后续发布版本中修复,执行命令:
    pip3 install --upgrade gimme-aws-creds
    升级完成后重新执行设备注册命令即可正常运行。
  2. 受环境限制无法升级版本的,先直接执行不带--register-device参数的gimme-aws-creds命令,走完一次完整的账号登录、MFA验证流程,本地会自动缓存会话相关的Cookie,之后再执行设备注册命令即可绕过该报错。
  3. 以上两种方法都无效的,将requests依赖库降级到2.27.1版本,执行命令:
    pip3 install requests==2.27.1
    降级完成后重试操作即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.29 21:54:52