快速结论:这是在 Dify v1.17.0 自托管环境中,拥有 Editor(编辑)角色的用户打开 Chatflow、Workflow 或 Agent 应用时,前端无条件请求默认模型接口,而后端因新增的权限装饰器返回 403 导致的回归问题。优先排查 Dify 版本是否为 1.17.0,若是,可等待修复版本发布或手动应用补丁。
适用环境:Dify v1.17.0,Self Hosted(Docker 部署)。该问题在 v1.16.x 中不存在。
最快修复方案:暂无确认的一步修复方案。官方已在 PR #41349 中移除相关权限装饰器以恢复 v1.16.x 行为,该修复将在 v1.17.0 之后的版本中发布。如需立即修复,可手动应用 PR #41349 的 diff,或临时将受影响的 Editor 账号提升为 Admin/Owner。
注意事项:临时提升账号角色会扩大权限,仅建议作为临时绕过方案;手动应用补丁需要谨慎操作,并建议在测试环境验证。
问题场景
用户在使用自托管部署的 Dify v1.17.0 时,任何具有 Editor(编辑)角色的成员打开 Chatflow、Workflow 或 Agent(含 Legacy)应用,前端会持续向 /console/api/workspaces/current/default-model 发送后台请求,并收到 403 响应。该问题为 v1.17.0 的回归,v1.16.x 中无此异常。
报错原文
GET /console/api/workspaces/current/default-model?model_type=xxx
Response 403:
{
"code": "forbidden",
"message": "You don't have the permission to access the requested resource. It is either read-protected or not readable by the server.",
"status": 403
}
原因分析
这是由 PR #41100 引入的回归问题。该 PR 在 api/controllers/console/workspace/models.py 中为 DefaultModelApi.get 和 ModelProviderModelApi.get 添加了 @is_admin_or_owner_required 和 @rbac_permission_required 权限装饰器。然而,这些接口原本对所有已认证的工作区成员开放,且前端代码无论用户角色如何都会无条件调用这些接口,导致 Editor 角色成员触发 403 错误风暴。
环境排查
- 确认 Dify 版本是否为 1.17.0(在 v1.16.x 中无此问题,属于版本回归)。
- 确认部署方式是否为 Self Hosted (Docker)。
- 检查触发问题的账号角色是否为 Editor(Admin/Owner 不受影响)。
- 排查网络请求中是否出现大量对
/console/api/workspaces/current/default-model的 403 响应。
解决步骤
- 升级 Dify 版本:官方已在 PR #41349 中修复此问题,移除了
DefaultModelApi.get、ModelProviderModelApi.get、post和delete上的权限装饰器,恢复 v1.16.x 行为。等待并升级到包含此修复的后续版本。 - 手动应用补丁(应急方案):如果无法立即升级,可参考 PR #41349 的 diff,在
api/controllers/console/workspace/models.py中移除对应接口上的权限装饰器,然后重启 Dify 服务。 - 临时角色调整(备选方案):可将受影响的 Editor 账号临时提升为 Admin 或 Owner,以绕过权限检查。注意此操作会扩大权限范围,仅建议作为临时手段。
验证方法
使用 Editor 角色账号登录,打开任意 Chatflow、Workflow 或 Agent 应用,观察浏览器开发者工具中的网络请求:确认 /console/api/workspaces/current/default-model 接口不再返回 403,而是正常返回数据(HTTP 200)。同时确认页面不再出现重复的 403 错误请求。
参考来源
AI 工具推荐
想把多个 AI 模型放在一个入口?
GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。
推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。
这个方案解决了吗?
可以继续搜索完整报错,或查看同一工具的其他排查指南。
![[Bug]: parsing markdown error: failed to encode response: json: unsupported value: NaN (status code: 500)](https://www.chat-gpts.plus/wp-content/uploads/2026/08/15392-bea47837-768x403.jpg)

