我们使用基于本指南实现的话语SSO流:
https://meta.discourse.org/t/official-single-sign-on-for-discourse-sso/13045
这对我们很有效。但现在我们想允许系统中的用户更改电子邮件,这似乎会导致问题。
当我在系统中更改用户的电子邮件时,sso到discussion将停止工作。
登录错误
你的帐户有问题。请联系网站的
管理员。
我想这篇文章收到了一封邮件和一个不匹配的用户名,不知道该怎么办。
处理这个问题的好方法是什么?
我提出的最好的想法是,在启动sso之前,使用discoursapi来更改用户在discoursation中的电子邮件以匹配in-out系统。
但我不知道这是否可能。下面是我失败的尝试。
这是我的请求:
https://forum-stage.{domain}.com/users/{username}/preferences/email
Headers:
Content-Type: application/x-www-form-urlencoded
Accept: application/json
Body (as x-www-form-urlencoded in Postman):
email: testemail@testdomain.com
api_key: 75a...77d
api_username: system
这是我收到的回复
{
"errors": [
"You are not permitted to view the requested resource."
],
"error_type": "invalid_access"
}