oauth-2.0 - 移动应用程序中 OAuth 的 Slack 客户端 key

标签 oauth-2.0 slack-api

Slack API 文档中似乎存在不一致之处,因为 OAuth 流程要求提供 client_secret 作为 OAuth token 代码交换的一部分,如 https://api.slack.com/methods/oauth.access 中所述。

但是,客户端 key 需要嵌入到移动应用程序中,这违背了 Slack https://api.slack.com/docs/oauth-safety 的建议。其中指出:

应谨慎对待您的客户 secret 。这是您在与 Slack 交换 token 时安全地识别应用程序的权利和身份的方式。请勿在电子邮件、分布式 native 应用程序、客户端 JavaScript 或公共(public)代码存储库中分发客户端 secret 。

在如何管理这种差异方面,是否有任何最佳实践可用,其中客户端 key 似乎需要进行身份验证,但同时不应嵌入到移动应用程序中?

最佳答案

Slack 仅支持 Authorisation Code适用于 OAuth2.0 的流程,但它不支持 public 客户端,仅支持 confidential 客户端。它不支持PKCE flow要么。

他们的FAQ page如果您正在开发移动应用程序,建议使用 RTM API:

enter image description here

关于oauth-2.0 - 移动应用程序中 OAuth 的 Slack 客户端 key ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49771921/

相关文章:

testing - 使用 Cypress 测试依赖 OAuth 的应用程序

python - 使用 slack API 发布图片

ruby-on-rails - 当我尝试使用 omniauth-google-oauth2 gem 进行身份验证时,没有路由匹配 [GET] "/auth/google_apps"

python - appengine 的 OAuth2 身份验证停止工作

grails - 使用 Google OAuth API 检索出生日期和婚姻状况

slack - 使用 slack 上的机器人标记仅知道名称的用户组

javascript - 如何在Windows上使用node.js将图像上传到Slack?

python - 如何通过 slackclient 将图像作为 slack bot 发送到 Slack?

slack-api - 返回通过 Slack API 发送的消息总数

azure - Oauth 2 通用提供者模板示例