You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Atlassian OAuth 2.0(3LO):如何获取用户登录的站点信息?

关于Atlassian OAuth 2.0(3LO)获取用户站点信息的问题与解答

场景说明

我正在使用Atlassian的OAuth 2.0(3LO)流程,已持有登录用户的access token,希望获取用户有权访问的Jira/Confluence云站点信息(包括cloudid、baseUrl),以便调用对应站点的API。尝试调用GET https://api.atlassian.com/oauth/token/accessible-resources,请求头设置Authorization: Bearer <access_token>,但收到HTTP 401 Unauthorized或403 Forbidden错误,返回示例:

{ "code": 403, "message": "Unauthorized" }

疑问解答

1. 如何可靠获取用户有权访问的Jira/Confluence云站点?

  • 确保access token具备read:me或对应产品的资源读取权限(如read:resource:jira-cloud、read:resource:confluence-cloud),调用accessible-resources端点时,请求头必须正确携带Bearer token,且token未过期。
  • 验证token有效性:通过Atlassian的token introspection端点检查token的权限范围和过期时间,确认包含访问站点列表的权限。

2. accessible-resources端点仍是获取该信息的正确API吗?

是,该端点目前是Atlassian官方推荐的标准API,用于获取3LO token对应的可访问云站点资源,返回结果包含每个站点的cloudid、baseUrl以及资源类型(如jira、confluence)。

3. 403错误是否因权限缺失或用户/站点配置问题导致?

大概率是权限相关问题,可从以下几点排查:

  • 检查OAuth应用的权限范围是否包含read:me或对应产品的资源读取权限,申请token时必须明确请求这些范围。
  • 确认用户账号有权访问目标云站点,且站点未处于限制访问状态。
  • 检查access token是否正确,有无拼写错误或过期:过期token会返回401,权限不足则返回403。

4. 是否有其他方法或API端点可获取用户站点信息?

  • 使用用户信息端点GET https://api.atlassian.com/me,返回结果包含用户关联的站点信息,但需要token具备read:me权限。
  • 针对Jira,若已获取cloudid,可调用GET https://api.atlassian.com/ex/jira/{cloudid}/rest/api/3/myself补充信息,但该方法需要先知晓cloudid,不如accessible-resources直接高效。

内容的提问来源于stack exchange,提问作者naveen singh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 00:05:03