首页 文章

Slack API和OAuth 2.0

提问于
浏览
3

我目前正在尝试使用SlackConnector库在C#中开发应用程序 . SlackConnector

应用程序将接收和发送消息到松弛通道和DM . (我成功地使用测试令牌生成器从我的松弛发送和接收消息 . )TEST TOKEN GENERATOR

我不明白的是,使用该应用程序的用户如何能够完全授权访问他们的Slack帐户,因此他们可以同样发送和接收消息 .

OAuth 2.0我需要使用的东西吗?我创建了一个松弛的应用程序,并按照步骤从用户获取访问令牌但由于某种原因访问令牌没有 Build 连接,如测试令牌吗?我想,有了这个令牌,你可以代表用户发帖子,但不接收只有有限访问权限的消息,不确定!

有没有办法以编程方式获取已登录用户生成的测试令牌?或者用户可以让我的桌面应用程序完全访问松弛帐户而无需手动生成测试令牌的方式?

即使我只使用我作为用户进行制作,我会使用相同的测试令牌访问令牌?是不是只测试实际令牌在哪里?

1 回答

  • 4

    在这里回答你的一些问题:

    是的,您需要使用OAuth 2.0和Slack应用程序来提供集成,以便在其他Slack团队中进行安装 .

    是的,测试令牌只是针对一个团队开发的 . 它们代表了在其创建的团队的上下文中创建它的任何帐户的全部功能 .

    要连接到RTM API并读取和写入DM,您需要做一些决定,从您的应用程序的角度来看,您希望在一个通道内,或从一个视角中的"bot user"操作哪些OAuth scopes用户使用您的应用程序 . 通常,应用程序从他们自己的角度运作 .

    Build 这样的应用程序最常见的方法是询问 bot OAuth范围,该范围授予一组权限 . 棘手的部分是,机器人权限未授予OAuth流程末尾的顶级 token - 它们被授予您在响应哈希的 bot 部分下找到的 bot_user_token . 使用该令牌可以让您连接到RTM API并通过直接消息与团队成员进行交互 . (有关"Tokens and scopes"的信息,请参阅bot user docs .

    如果您的意图是直接代表用户操作(发布和回复消息,就像您是授权您的应用的用户一样),那么您需要询问将应用于顶级用户的非常不同的OAuth范围 token 在最后的OAuth响应中 .

相关问题