“已登录,但无法保存凭据”:Senzoukria 与操作系统钥匙串

勾上“Save my credentials”之后,Senzoukria 会把你的密码存进操作系统的钥匙串(keychain)。如果这次写入失败了,你其实已经登录进去了,而应用会把真实的错误短暂显示出来,而不是假装凭据已经保存好了。

Senzoukria · 故障排除 · 更新于 2026 年 9 月


概要

消息
“已登录,但无法保存凭据:{error}”
复选框
“Save my credentials (OS keychain)”,默认勾选;登录界面的这些文字在代码里写死为英文
存放位置
Windows 上是凭据管理器,macOS 上是 Keychain,Linux 上是 Secret Service
后果
下一次启动时还会再问你一遍密码

你会看到什么

登录成功之后紧接着,卡片上会有大约两秒钟显示“已登录,但无法保存凭据:{error}”,随后应用就打开了。到了下一次启动时,表单要么是空的,要么不会自动提交。登录界面上那个复选框本身写着英文“Save my credentials (OS keychain)”,因为这个界面的文字在代码里写死为英文;而这条失败消息本身是有中文的。

这条消息只停留短短一瞬,所以真正让人察觉到问题的往往是下一次启动:明明勾着“记住我”,应用却又一次问起密码。

为什么会这样

密码会进入操作系统的凭据存储(credential store),永远不会进文件。当这个存储拒绝写入时,登录本身其实是成功的,所以应用让你进来,并把错误摆到台面上,而不是让“记住我”悄悄什么都不做。典型原因有:Linux 上钥匙环(keyring)被锁住或者根本没起来、受管控的 Windows 机器上凭据管理器有策略限制,或者安全软件挡住了访问。经纪商凭据和 API 密钥用的是同一个钥匙串,所以同一个原因也可能影响到它们。

换句话说,登录和记住登录是两件分开的事情:前者由授权服务器回答,后者由你这台机器上的凭据存储回答。应用之所以把这个错误摆出来,是因为一个悄悄失败的“记住我”只会在下一次启动时变成一个莫名其妙的登录框。

如何解决

  • 在 Linux 上,请确认你的会话里有一个 Secret Service 钥匙环正在运行、并且已经解锁。
  • 在受管控的 Windows 机器上,请问一下管理员,应用是否允许写入凭据管理器。
  • 退出登录再登录一次,保持复选框勾着,让它重试一次写入。
  • 如果保存始终做不到,就把这个复选框取消勾选,每次启动时手动输入密码。

它并不意味着什么

  • 不是登录失败了:你已经登录进来了。
  • 也不是密码的问题:被拒的是保存这一步,不是这对凭据本身。

何时联系技术支持

如果上面这些做法都没有带来任何变化,请通过 菜单 → 问题反馈 把这个情况发出来(它在没有登录的状态下也能用),或者在 Senzoukria 的 Discord 上提问。请把“无法保存凭据:”后面显示的那个错误,和你的操作系统版本一起复制过来。

同一栏目

其他语言版本

常见问题

钥匙串失败时,我的密码会被写进文件里吗?
不会。应用从来不会把它写进文件;它只是记不住而已。
退出登录会把保存好的凭据删掉吗?
退出登录会保留钥匙串里的那一条。要清掉它,请在下一次登录时取消勾选那个复选框。
经纪商的凭据也会受影响吗?
有可能。经纪商凭据和 API 密钥用的是同一个操作系统钥匙串,所以挡住这次写入的那个原因,同样可能挡住它们。

继续阅读