[feat] 支持一个账户绑定多个第三方登录渠道,避免单渠道异常封号后账号与仓库绑定一起锁死
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 18/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Ambito
- authentication
Direzione di ricerca
The payload names no files, tests or entry points, so first find where an account is created from a single OAuth identity and where the repository binding is attached to it. This is a design change: decide the account-to-identity model before writing code. Done means a second login provider can sign into the same account and see the same repository binding, and removing the last remaining provider is refused.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
问题
当前 AstrBot Cloud 的账户与第三方登录渠道(GitHub / Google / 邮箱等 OAuth 身份)是 1:1 关系:账户本身几乎就是由这个渠道身份标识出来的,仓库绑定也挂在同一条链路上。
这带来一个不可恢复的失效路径:
- 用户用渠道 A 登录并绑定了插件仓库 R;
- 渠道 A 的第三方账号被封禁 / 被删除 / OAuth 授权被撤销 / 该邮箱不可用;
- 用户再也无法登录 AstrBot Cloud —— 因为系统只认渠道 A;
- 于是连"进入后台把仓库 R 换绑到渠道 B"这个自救动作也做不到;
- 最终只能走人工,而人工换绑又缺少可信的身份校验手段,风险很高。
也就是说:第三方渠道的一次封号,会直接等价于 AstrBot Cloud 账户的永久丢失,并且连带丢掉仓库绑定与插件发布能力。 这不是罕见边界情况——封号、账号被盗后申诉失败、公司/组织账号变更都是真实高频场景。
期望行为
核心诉求:把"账户"和"登录方式"解耦,账户是唯一主体,渠道只是登录入口(1:N)。
- 一个 AstrBot Cloud 账户可以绑定 多个 渠道身份;
- 任意一个已绑定渠道都可以登录到 同一个 账户,进入的是同一套数据、同一套仓库绑定;
- 某个渠道失效(封号/撤销)后,用户仍可用其余渠道正常登录,并在登录状态下把当前绑定的仓库更换为另一个可用仓库;
- 反过来,用户也可以在登录状态下主动解绑不再使用的渠道;
- 关键保护:账户不允许解绑到 0 个渠道,避免账户变成无法登录的孤儿。
- Lingua principale
- Nessun dato sulla lingua
- Stelle
- 6
- Fork
- 0
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di AstrBotDevs/astrbot-cloud-issues
-
malicious=1 和 审查通过的矛盾Aperta
Difficoltà 4/5 1-2 giorni Idoneità per principianti 15/100
-
给我解封吧求求了,我再也不乱发插件了Aperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 5/100
AstrBotDevs/astrbot-cloud-issues#32 · 1 commento ·
-
bug
Difficoltà 4/5 3-5 giorni Idoneità per principianti 15/100
-
[Bug]Apertabug
Difficoltà 3/5 1-2 giorni Idoneità per principianti 48/100
AstrBotDevs/astrbot-cloud-issues#29 · 2 commenti ·
-
bug
Difficoltà 4/5 3-5 giorni Idoneità per principianti 45/100
AstrBotDevs/astrbot-cloud-issues#28 · 1 commento ·
Tutte le issue di AstrBotDevs/astrbot-cloud-issues
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
bytedance/agentkit-samples#277 ·
-
ai-driven-fuzzing bug claude Minor
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 2 giorni
-
[Bug]: Login shows only "Log-in failed" when Commons answers the login request with an API errorAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
commons-app/apps-android-commons#7295 ·
I maintainer di solito rispondono entro 1 giorno
-
vuln:LOW
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 63/100
curl/curl-www#679 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100