我知道我可以授权某个应用程序使用我在网络上的帐户执行某些操作。如果我允许,该应用程序可以做什么,不能做什么?例如,如果我看到如下描述:

  • 识别您的帐户
  • 访问您的私人活动和信息
  • 代表您创建和更改内容
  • 阅读您的全球收件箱
  • 永久保留这些权限

我怎样才能弄清楚这到底包含什么?

1

  • 1
    @MetaAndrewT. 是的,我们需要在问题本身上添加标签。(作为评论,它不会产生实际效果。;))


    – 


最佳答案
1

Stack 提供了应用程序可以执行的许多操作。此描述将重点介绍技术细节,因为这些细节可以在文档中查找。但是,我们仍然需要介绍基础知识:

什么是授权?

API 可以匿名使用,但有限制。应用程序可以请求授权,这将放宽这些限制。授权允许它充当给定用户。这可以帮助跟踪操作,但也可以开启无法匿名使用的新操作。

应用程序可以请求用户授权。这是一个明确的操作,需要用户确认。

作用域

授权带有范围。每次应用程序请求访问权限时,它都必须明确列出它想要访问的范围。这也可以不列为任何范围(这限制了可以执行的操作数量)。

  • read_inbox 1 – 访问用户的全局收件箱
  • no_expiry 1 – 此范围的 access_token 不会过期
  • write_access 1-以用户身份执行写操作
  • private_info 1 – 访问用户在网站上的私人行为的完整历史记录
  • manage_collective_recommendations 2 – 访问集体中的帖子推荐
  • manage_collective_reports 1 – 通过 Collectives 访问报告

哪个操作需要哪个范围(如果有)将在下文中记录。

1来自 API 文档
2仅记录在单个操作中

到期

除非请求no_expiry授权,否则对应用程序的访问将受到时间限制。有了它,访问将是永久的。

手动撤销

作为用户,您可以随时撤销授予应用程序的访问权限:

  1. 转到您的用户资料(在任何网站上)。
  2. 转到“设置”选项卡。
  3. 转到右侧的授权应用程序。

从这里您可以随时取消对您曾经使用过的任何应用程序的授权。

写访问

应用程序可以请求写入权限,此时它将能够以用户的名义执行操作。例如,发布或标记将需要写入权限。

这可能很危险,所以请谨慎接受。

但请记住以下几点:

  • 如果应用程序需要执行任何需要写权限的操作,它仍然只能请求对所有内容的写权限。例如,如果应用程序只想删除评论,它就无法做到这一点,除非它还能够发布答案。
  • 作为用户,您可以随时撤销访问权限。
  • 。如果发现应用程序滥用该权限,则其访问权限将失效,而无需用户执行任何操作。

该 API 可以做什么?

这是从中获取的信息以及每种方法的详细信息。为方便起见,将其格式化为单个表格。

Stack Exchange API v2.3

API 端点 描述 需要授权吗? 所需范围
在网站上获取所有答案。
获取由一组 id 标识的答案。
对给定的答案投接受票。 需要授权 写访问
撤消对给定答案的接受投票。 需要授权 写访问
获取对由一组 id 标识的答案的评论。
删除给出的答案。 需要授权 写访问
对给定的答案投反对票。 需要授权 写访问
撤消对给定答案的反对票。 需要授权 写访问
编辑给定的答案。 需要授权 写访问
返回给定答案的有效标志选项。 需要授权
对给定的答案投下标记。 需要授权 写访问
获取所有有 id 所标识答案的问题。
对给定的答案投赞成票。 需要授权 写访问
撤消对给定答案的赞同。 需要授权 写访问
对给定的答案提出建议。 需要授权 write_accessmanage_collective_recommendations
撤消对给定答案的建议。 需要授权 write_accessmanage_collective_recommendations
对现有答案创建建议的编辑。 需要授权 写访问
按字母顺序获取网站上的所有徽章。
获取通过 id 标识的徽章。
按字母顺序获取所有未标记的徽章。
获取网站上最近授予的徽章。
获取指定徽章的最近接收者。
按字母顺序获取所有基于标签的徽章。
按字母顺序获取网站上的所有集体。
获取由一组 slug 标识的集体。
获取由一组 slug 标识的问题。
获取由一组 slug 标识的答案。
获取由一组 slug 标识的标签。
通过一组 slug 来识别用户。
获取由一组 slug 标识的报告。 需要授权 管理集体报告|{slug}
为集体创建新的报告请求 需要授权
获取网站上的所有评论。
获取由一组 id 标识的评论。
删除根据其 ID 标识的评论。 需要授权 写访问
编辑通过其 ID 标识的评论。 需要授权 写访问
对给定的评论投下标记。 需要授权 写访问
返回给定评论的有效标志选项。 需要授权
对给定的评论投赞成票。 需要授权 写访问
撤消对给定评论的赞同。 需要授权 写访问
获取网站上最近发生的事件。有效地获取新用户和内容流。 需要授权
获取有关整个站点的信息。
获取系统中的所有帖子(问题和答案)。
获取由一组 ID 标识的所有帖子。当不知道帖子类型(问题或答案)时很有用。
获取由一组 id 标识的帖子(问题或答案)的评论。
在由 id 标识的帖子上创建新评论。 需要授权 写访问
对给定的帖子做出假设的评论。
获取 id 中帖子集的修订。
获取对 id 中的帖子集的建议编辑。
获取网站上提供的所有特权。
获取网站上的所有问题。
获取由一组 id 标识的问题。
获取由一组id标识的问题的答案。
对给定的问题创建答案。 需要授权 写访问
对问题给出假设性的答案。
返回有效的标志选项,这些选项也是给定问题的关闭原因。 需要授权
获取由一组 id 标识的问题的评论。
删除给定的问题。 需要授权 写访问
对给定的问题投反对票。 需要授权 写访问
撤消对给定问题的反对票。 需要授权 写访问
编辑给定的问题。 需要授权 写访问
将给定的问题添加为书签。(以前称为“收藏”问题) 需要授权 写访问
取消对给定问题的书签标记。(以前称为“收藏”问题) 需要授权 写访问
对给定的问题投下旗帜。 需要授权 写访问
返回给定问题的有效标志选项。 需要授权
获取链接到由一组 id 标识的问题的问题。
获取与一组 id 所标识的问题相关的问题。
在现有问题上创建 suggested_edit。 需要授权 写访问
获取由一组 id 标识的问题的时间线。
对给定的问题投赞成票。 需要授权 写访问
撤消对给定问题的赞同。 需要授权 写访问
创建新问题。 需要授权 写访问
获取网站上所有包含有效赏金的问题。
获得网站上所有没有答案的问题。
提出一个假设性问题。 需要授权
获取网站认为尚未解答的所有问题。
获取网站认为用户最喜欢或感兴趣的标签中尚未解答的问题。 需要授权
获取由一组 id 标识的所有修订。
在网站上搜索符合特定条件的问题。
使用大多数站内搜索选项来搜索网站上的问题。
根据与标题的相似性搜索网站。
搜索站点。
获取网站上所有建议的编辑。
获取由一组 id 标识的建议编辑。
获取网站上的标签。
根据名称获取网站上的标签。
获取网站上只有版主可以使用的标签。
获取网站上满足所需标签约束的标签。
获取网站上的所有标签同义词。
获取一组标签中的常见问题。
根据常见标签配对获取相关标签。
获取特定一组标签的同义词。
获取特定标签中的最佳答案发布者(过去一个月或所有时间段内)。
获取特定标签中提问最多的问题者(过去一个月或所有时间段内)。
获取一组标签的 wiki 条目。
获取网站上的所有用户。
获取由一组 id 标识的用户。
获取由一组id标识的用户发布的答案。
获取由一组 ID 标识的用户所获得的徽章。
获取由一组 id 标识的用户发表的评论。
获取一组用户对另一用户发表的评论。
获取由一组 ID 标识的用户收藏的问题(以前称为“收藏”)。
获取提及一组 ID 所标识的用户之一的评论。
获取用户在 Stack Exchange 网络上的活动。
获取用户的通知。 阅读收件箱
获取用户的未读通知。 阅读收件箱
获取一组用户拥有的所有帖子(问题和答案)。
获取指定用户在网站上拥有的权限。
获取由一组 id 标识的用户提出的问题。
获取一组用户有活跃赏金的问题。
获取一组用户提出的、没有答案的问题。
获取一组用户提出的问题,这些问题至少有一个答案,但没有可接受的答案。
获取一组用户提出的、被认为尚未得到充分回答的问题。
获取由一组 id 标识的用户所经历的声誉变化的子集。
获取用户声誉的历史记录,不包括私人事件。
获得用户声誉的完整历史记录。 需要授权 私人信息
获取由一组 ID 标识的用户提供的建议编辑。
获取用户(通过一组 id 来标识)活跃的标签。
获取用户对带有一组标签的问题发布的最佳答案。
获取用户使用一组标签发布的热门问题。
获取给定用户的标签偏好。 需要授权 私人信息
编辑用户的标签偏好设置。 需要授权 write_accessprivate_info
获取由一组 ID 标识的用户已采取的操作的子集。
获取单个用户发布答案的热门标签(按分数)。
获取单个用户提问过的热门标签(按分数)。
获取单个用户发布的热门标签(按分数)。
获取网站上具有审核权限的用户。
获取已赢得版主选举的活跃版主用户。
获取用户的收件箱。 需要授权 阅读收件箱
获取用户收件箱中的未读项目。 需要授权 阅读收件箱
允许应用程序在使用完 access_token 后将其销毁。
允许应用程序检查其拥有的access_token,这对调试很有用。
获取用户最近的全网成就。 需要授权
允许应用程序取消一组用户的授权。
获取 API 可能返回的所有错误的描述。
模拟 API 错误以用于测试目的。
创建一个新的过滤器。
解码一组过滤器,对于调试目的很有用。
获取网站环境之外的用户收件箱。 需要授权 阅读收件箱
获取用户收件箱中(网站环境之外)的未读项目。 需要授权 阅读收件箱
获取网站环境之外的用户通知。 需要授权 阅读收件箱
获取网站上下文之外的用户未读通知。 需要授权 阅读收件箱
获取 Stack Exchange 网络中的所有站点。
获取用户的关联账户。
获取用户帐户经历的合并。

问题中的项目符号列表怎么样?

  • 识别您的帐户

它将要求您作为用户对应用程序进行身份验证。

  • 访问您的私人活动和信息

应用程序将请求private_info范围。

  • 代表您创建和更改内容

应用程序将请求write_access范围。

  • 阅读您的全球收件箱

应用程序将请求read_inbox范围。

  • 永久保留这些权限

应用程序将请求no_expiry范围,从而可以保留此访问权限直到被撤销。