第三方应用授权说明
使用 烧饼论坛 账号登录第三方网站或应用前,须在授权页确认应用申请的权限。本页说明授权范围、应用审核状态及撤销授权的方法。
一、授权范围
授权后,第三方应用将获得仅对该应用有效的用户标识,以及授权页列明的信息,通常包括用户名和头像;申请邮箱权限的应用还会获得邮箱地址。本站不会向应用提供账号密码或授权范围以外的信息。
授权页会列明授权后跳转的域名,即第三方应用所在的网站。本站授权页始终位于 烧饼论坛 的域名下。
二、各项权限的含义
授权页列明应用申请的各项权限。应用可申请的权限由站方限定,实际授权范围以授权页所列项目为准。
| 授权页上的文字 | 应用可获取的信息或执行的操作 | 哪些应用可以申请 |
|---|---|---|
| 你的用户 ID | 用于识别同一用户的稳定标识。第三方应用获取的标识在不同应用间互不相同,无法据此跨应用关联用户;官方应用获取的是本站用户 ID。 | 所有应用 |
| 读取你的用户名和头像 | 当前用户名、头像和主页地址。用户改名后,应用会在下次登录时获取更新后的用户名。 | 所有应用 |
| 读取你的邮箱地址 | 账号邮箱及其验证状态。账号没有邮箱时不提供。 | 官方应用、已审核应用 |
| 读取你所属的用户组 / 站内角色 | 用户所属的用户组和管理身份,仅返回站方为该应用配置的可见范围内的信息。 | 官方应用,以及管理员单独授予的已审核应用 |
| 读取你的等级、成长值和烧饼余额 | 当前等级、成长值和可用烧饼。详见下一节。 | 官方应用、已审核应用 |
| 扣除你的烧饼 | 应用可通过本站接口从用户账户扣除烧饼,扣费受单笔和每日限额约束。详见下一节。 | 仅官方应用 |
| 以你的身份读取论坛 | 通过论坛接口读取你能看到的帖子、回帖和会员资料,你的通知、收藏、拉黑名单,以及你的烧饼余额、成长值、各个钱包(大米、毛豆、游戏币、馒头)和完整的烧饼明细。不含私信。详见第九节。 | 所有应用(未审核应用只能由开发者本人和测试用户授权) |
| 以你的身份发帖、回复…… | 包含上一项读取的全部内容;另外以你的身份发帖、回复、编辑和删除你自己的内容,点赞、点亮、收藏、关注、拉黑、举报和上传附件。不含私信。不能签到、打赏,不能做任何要花烧饼的事,也不能使用管理权限。详见第九节。 | 所有应用(同上) |
| 在你离线时继续访问已授权的信息 | 应用可在用户未访问应用时刷新登录状态,无需每次重新授权。 | 所有应用 |
本站不会向任何应用提供账号密码、两步验证信息,或授权页未列出的任何信息。只有获得「以你的身份读取论坛」或「以你的身份发帖」权限的应用能读到你的通知、钱包和烧饼明细;你的私信只有另外获得「私信」权限的应用才能读取和代发。授权页会列出这些项,没有列出就读不到。
三、等级、成长值与烧饼
部分应用根据用户在 烧饼论坛 的等级或成长值确定服务范围。申请「读取你的等级、成长值和烧饼余额」权限的应用,可在登录时获取用户当前的等级和成长值;烧饼余额由应用按需向本站实时查询,不由应用自行保存。
只有官方应用可以扣除烧饼。这类应用会在授权页单独列出「扣除你的烧饼」一项,站方为应用设置单笔扣费上限,以及对同一会员的每日累计扣费上限(按 UTC 计日)。超过上限的扣费会被本站拒绝。第三方应用无论是否审核,都不能扣除烧饼。
每笔扣费和退款均记录在烧饼明细中,扣费记录注明应用名称和用途。已授权的应用页面显示各应用的累计扣费金额。撤销应用授权后,该应用立即失去扣费权限。
所有应用均只能读取成长值和等级,不能修改。
四、应用分类与审核状态
官方应用由站方运营。已审核应用由会员开发,站方已审核其用途、授权页内容和开发者账号。未审核应用由会员注册,尚未通过站方审核。
未审核应用仅限开发者本人及其指定的测试用户登录,可获取的信息限于用户标识、用户名和头像;开发者申请了论坛接口的,还可以以授权者本人的身份使用论坛接口(见第九节)。这正是会员给自己写客户端的情形:应用只给自己和信得过的几个人用,不必等审核。
五、未经审核的应用
授权页顶部的黄色提示表示应用尚未通过站方审核。该状态本身不表示应用存在违规行为,用户仍需自行判断是否授权。应用名称下方会显示开发者用户名,点击可查看其主页和发言记录。
非该应用的开发者或指定测试用户无法完成授权,本站不会向应用提供其信息。
六、授权前的注意事项
授权前,请核对跳转域名是否与所访问的应用一致,确认开发者身份可信,并判断申请的信息是否为应用功能所必需。例如,仅用于阅读帖子的工具通常不需要邮箱权限。
「授权」按钮在页面打开一秒后方可点击,防止用户在其他页面的点击操作误触授权。
七、撤销与举报
在已授权的应用页面可查看全部已授权应用、各应用的授权范围和上次使用时间,并随时撤销单个或全部第三方应用的授权。撤销后,相关应用持有的登录凭证立即失效。
修改密码、退出全部设备或注销账号时,第三方应用的登录状态也将失效。
发现应用冒充官方、骗取账号或滥用数据时,可在授权页或已授权应用列表中举报。举报数量达到规定阈值后,应用将自动下线,交由管理员处理。开发者须遵守开发者条款。
八、开发者
如需为网站或应用接入 烧饼论坛 账号登录,可在我的应用创建应用。创建应用要求账号已验证邮箱,并满足站方设定的等级或用户组条件。新应用处于未审核状态,仅限开发者本人和指定的测试用户登录;提交审核并通过后,才向全体会员开放,并可申请邮箱、等级等更多权限。
本站实现标准的 OpenID Connect,发现文档地址为 https://sb.sb/.well-known/openid-configuration,仅支持授权码模式,并要求使用 PKCE。创建应用后,可在应用页面查看接入配置;接入方式、各项 claim 的含义、登出、限流和扣费接口的完整说明见接入指南。
九、论坛接口与自己的客户端
烧饼论坛 的论坛接口(/api/v1/)原本只给官方客户端用。现在会员也可以自己写客户端:在我的应用创建应用时勾选「论坛接口」,读取(api:read)、写入(api:write,含读取)和私信(api:messages),登录授权后,应用就以授权者本人的身份使用论坛。私信是单独的一项:只授予了读取或写入的应用看不到你的私信,也不知道你有没有未读私信;授予了私信权限的应用能读你的私信对话并以你的身份发私信,不需要另外的读写权限,适合只做聊天的客户端。手机 App、桌面程序和浏览器里的页面可以选「公开客户端」,不需要 client secret。
通过这样的应用做的事,和你自己在网页上做的一样,算你本人的操作,遵守全部论坛规则;发出的帖子、回帖和私信就是你发的,违规照常处理。应用只能以授权它的那个会员的身份操作,换不了人。发帖、回复、私信、投票和点亮须由你逐次操作;由程序自动发布,按服务条款仍属禁止,只有管理员在后台允许了自动发布的应用例外——这样的应用在授权页和已授权的应用里注明「管理员已允许此应用自动发布」,开发者不能自己打开。
下面这些不向会员自己的应用开放,只能在网页或官方客户端里做:
- 签到,打赏,以及任何要花烧饼的操作:要扣烧饼的点踩或点灭、要扣烧饼的上传、要付挖坟费的回帖都会被拒绝,不会扣钱。商城、银行、彩票、游戏、证券这些本来就不在接口里。
- 管理权限:管理员、版主通过自己的应用登录时,只是普通会员,不能删改别人的内容。
- 官方客户端的推送登记和推送设置,以及从接口换取网页登录状态的入口。
每个应用对每位会员每小时最多 1200 次请求,其中写入(发帖、回复、私信、点赞等)最多 120 次;一个应用对全部会员合计每小时最多 30000 次。另外,每位会员通过所有应用(含官方客户端)合计每小时最多 3000 次请求、300 次写入。发帖间隔、搜索、举报、上传等各自的限制也照常适用。