Секрет клиента slack для oauth в мобильном приложении

Кажется, есть несоответствие в документации Slack API в том, что поток OAuth требует, чтобы client_secret был предоставлен как часть обмена кодом для токена OAuth, как описано в https://api.slack.com/methods/oauth.access.

Однако секрет клиента затем необходимо встроить в мобильное приложение, что противоречит рекомендациям Slack в https://api.slack.com/docs/oauth-safety, в которых говорится:

К своему секрету клиента следует относиться деликатно. Это то, как вы надежно идентифицируете права и личность своего приложения при обмене токенами со Slack. Не распространяйте клиентские секреты в электронной почте, распределенных собственных приложениях, клиентском JavaScript или публичных репозиториях кода.

Существуют ли какие-либо передовые практики с точки зрения того, как управлять этим несоответствием, когда секрет клиента, кажется, требуется для аутентификации, но в то же время не должен быть встроен в мобильное приложение?

Нет необходимости хранить секрет клиента в локальном мобильном приложении. См. Подход «веб-помощника» в моем ответе по ссылке.

Erik Kalkoken 11.04.2018 12:14
2
2
263
1

Ответы 1

Slack поддерживает только поток Код авторизации для OAuth2.0, но не поддерживает клиентов public только клиентов confidential. Он также не поддерживает Поток PKCE.

Их Страница часто задаваемых вопросов предлагает использовать RTM API, если вы повторно разрабатываете мобильное приложение:

enter image description here

Другие вопросы по теме