megachangelog
Feature

PKCE is now generally available

Slack now supports Proof Key for Code Exchange (PKCE), an OAuth security extension that allows developers to build more secure applications on public clients like desktop and mobile apps without embedding a vulnerable client_secret.

We are excited to announce support for Proof Key for Code Exchange (PKCE). PKCE is an OAuth security extension that enables developers to build more secure Slack applications on public clients, such as desktop apps and mobile apps, without the need to embed a vulnerable client_secret.

Previously available in early access by request only, PKCE can now be enabled directly in your app settings without contacting Slack support.

Key things to know​

  • Enabling PKCE marks your app as a public client. This is a one-way operation; it cannot be undone without contacting Slack support.
  • OAuth installations which redirect to a custom URI scheme (e.g. myApp://auth) will always receive rotating tokens, even if token rotation is turned off. OAuth installations issued to a standard web URL (e.g. myWebshite.com/auth) will only receive rotating tokens if the 'token rotation' setting is enabled. All refresh tokens issued to PKCE-enabled apps expire after 30 days.
  • Once enabled, PKCE arguments (code_challenge, code_challenge_method, code_verifier) are optional for standard OAuth flows, but required when redirecting to a custom URI scheme.
  • Desktop redirects (custom URI schemes and localhost redirects for PKCE-enabled apps) cannot request bot scopes.

Getting started​

Check out the PKCE documentation to learn how to implement the full PKCE flow, including how to generate a code_verifier, construct the authorization URL, and exchange the code using the oauth.v2.access API method without a client secret.

securityoauthapimobileauthentication

Source: original entry ↗

More from Slack

Follow Slack to get its new changes in your feed and email digest.

Announcement4.10.0

Slack CLI v4.10.0 Released

Slack CLI version 4.10.0 is now available, bringing updates and improvements to the developer tools for the Slack platform.

clideveloper-toolsrelease
Feature

Slack Code for developers

Slack Code enables deeper collaboration between humans and agents by allowing agents to create ephemeral channels from existing conversations, giving collaborators a shared workspace for coordinated work.

collaborationagentschannelsworkspace
Announcement4.9.0

Slack CLI v4.9.0 Released

Slack CLI version 4.9.0 is now available with updates and improvements to the command-line tool for building and managing Slack applications.

slack-clireleasetools
See all Slack changes →