Skip to main content
Known Participant
Nov 29, 2022 10:22 AM UTC
Question

Which differences between OAuth2 methods for Connected System?

Hi,

We are going to use OAuth2 for a customer and reading the Appian doc, I can see this :

- "OAuth 2.0: Client Credentials Grant" : is used when access is being requested on behalf of an application, 

- "OAuth 2.0: Authorization Code Grant" : is used when access is being requested on behalf of a user,

- "OAuth 2.0: SAML Assertion flow" :  used with SAML...

Could you explain me the main differences between each of them please ?  (with possibly examples [emoticon:0f36700dfeb3494fa10d47dd9e1f90a1])

Regards

12 replies

stefanhelzle0001
Brainy
Nov 29, 2022 10:26 AM UTC

The documentation explains that pretty well. Do you have any concrete question?

What does "We are going to use OAuth2 for a customer" mean?

Known Participant
Nov 29, 2022 10:35 AM UTC

I think if I ask you the question, it is probably the documentation does not light me sufficiently. [emoticon:db2e98b6d4d6460c8802c63379d79040]

One of my concrete question would be :

If the remote system needs access from a user, I will use "Authorization Code Grant",
If it needs access from an application, I will use "Client Credentials Grant",
Lastly if it needs SAML, I use the third one?

or this as simple as this, or is there any other major aspects to take in consideration?

stefanhelzle0001
Brainy
Nov 29, 2022 10:39 AM UTC

The "Code Grant" requires the user to log in to that other system as a separate action. Appian will then use the user's credentials to call the other system.

https://docs.appian.com/suite/help/22.4/authorization_link_component.html

The "Credentials Grant" store a single set of credentials of a service user account and uses that.

SAML is specific to browser based single-sign-on and cannot be used for API calls.