其他用户如何获取我的开发中松弛应用程序的令牌?

问题描述 投票:1回答:1

TLDR:我有一个松弛的应用程序,用于管理其开发工作区中的私有通道以及继承我的用户权限的令牌。同一个工作区中的其他人如何获得继承其用户权限的此应用程序的令牌?

好的,所以背景是:我需要根据一些或多或少复杂的ldap相关条件来管理一堆私有渠道的成员资格。为此,我想写一个简单的Python程序,它获得了有问题的通道的成员资格,做了ldap魔术来弄清楚谁应该在哪里,然后做到这一点。

我已经实现了这一点,到目前为止一切正常。现在的问题是,出于隐私原因,我(这是我的松散用户)不能出现在所有这些频道中。我获得的API和Bot令牌继承了我自己的所有用户权限。这意味着我既不能看到也不能管理我不参与的频道。

基于我在Slack API的文档中读到的内容,有一种方法可以让另一个用户通过我创建的应用程序的OAuth流程来获取令牌,获取他们自己的令牌,并将它们与Python程序一起使用我写的。那没关系,但我无法弄清楚如何做到这一点。

没有其他人可以直接访问该应用。该文档使我觉得我需要给人们一个特殊格式的链接(“添加到松弛按钮”),他们可以点击这些链接来完成整个过程。但这似乎需要一个“重定向网址”。我不确定这是什么,文档不是很清楚,但似乎他们假设应用程序在某个服务器上运行,并且需要回答来自Slack的请求或其他东西。事实并非如此。这是一个相当简单的Python脚本,而不是一些响应Slack Events的永远在线的云应用程序。

所以感觉我错过了一些东西。要么我对这个应该如何工作有一些基本的误解,要么有一个简单的方法让别人得到像这样的令牌,我没有看到它。

python slack slack-api
1个回答
1
投票

是。如果您希望其他用户对您的应用进行身份验证(例如生成令牌,以便您的应用可以代表用户执行任务),则需要创建installation routine using Ouath 2.0。该安装例程是一个小型Web应用程序,具有“Add to Slack”按钮,一个HTML界面,并且能够运行Oauth 2.0进程。该Web应用程序需要在公共Web服务器上运行。

出于开发目的,Web服务器也可以在本地开发计算机上运行,​​并具有到公共Internet的VPN隧道。 Slack建议使用VPN服务ngrok

© www.soinside.com 2019 - 2024. All rights reserved.