Question

OAuth2 flow with client secret and PKCE

  • 14 July 2022
  • 1 reply
  • 176 views

Hi!

I know this question has been asked before but in those cases the comments are now closed and I would like to add some additional input.

 

I have been asked to create a zapier app to integrate with out API and have hit a road block at the aurthentication stage.  Our token server enforces PKCE along with client id/secret. I’ve seen replies on here suggesting that PKCE is used as a replacement for client secrets but that’s not the case here (and seems a fairly common scenario).

 

From https://oauth.net/2/pkce/

PKCE was originally designed to protect the authorization code flow in mobile apps, but its ability to prevent authorization code injection makes it useful for every type of OAuth client, even web apps that use a client secret.

 

I’d rather not go down the route of disabling these checks in our IDP if possible so any suggestions on a way forwards would be helpful.

 

Many thanks!

 


This post has been closed for comments. Please create a new post if you need help or have a question about this topic.

1 reply

Userlevel 4
Badge +9

Hey @Matt Channer 👋

As mentioned in this thread you’ve likely already seen -

 

Zapier doesn’t support OAuth2 with PKCE by default at the moment but you could try build your app with the CLI (command line interface) for more functionality in configuring the authentication. 
 
CLI: https://github.com/zapier/zapier-platform/blob/master/packages/cli/README.md#custom 


If you’ve started your app in the Visual Builder, you can export your app to the CLI: https://platform.zapier.com/docs/export 

I did confirm that the Zapier team has discussed updating the OAuth 2 implementation to support PKCE but there’s no definitive timeline on that work at the moment. 

If anyone else reading has had success implementing the code challenge and code verifier in their app, please do chime in with your experiences!