当Discourse作为身份提供方时,它会保存外部用户ID吗?

感谢 @david。有趣的是,这正是我在另一个方向(从我的 Rails 应用用户配置文件链接到 Discourse 用户配置文件)通过这个 Discourse 插件 (/user-by-id/123/summary) 所做的,因为我的 Rails 应用存储的是 Discourse 用户 ID 而不是用户名(因为用户名可能会更改)。

该解决方案在另一个方向上是可行的,但有一个事实是并非所有的论坛用户在我的 Rails 应用中都有用户配置文件。只有当 Discourse 用户“加入”组织时,才会创建一个 Rails 用户,而 Discourse 论坛可以包含非成员。

所以我想我的两个选择是:
A) 创建一个 JavaScript 插件,向我的 Rails 应用发送一个 ajax 请求,以确定 Discourse 用户是否也是 Rails 应用中的用户,如果是,则渲染一个链接;或者
B) 在创建 Rails 应用用户并链接到 Discourse 用户时,除了在 Rails 应用数据库中存储 Discourse 用户 ID 外,还要以某种方式将 Rails 用户 ID 存储在 Discourse 用户配置文件中(例如,作为自定义用户字段)。

我认为 (B) 是更好的解决方案(前提是自定义用户字段不能被除管理员以外的人更改),尽管我对自定义字段不熟悉,也不知道是否可以通过 API 访问它们。

编辑:我现在想起来了,上次我研究这个问题的时候:问题在于自定义用户字段可以被用户编辑,这使得它们不适合存储像这样的系统生成的引用:/