Your achievements

Level 1

0% to

Level 2

Tip /
Sign in

Sign in to Community

to gain points, level up, and earn exciting badges like the new
BedrockMission!

Learn more

View all

Sign in to view all badges

SOLVED

OAuthAuthenticationHandler extractCredentials: fallback to we can't handle this

maksyms28136728
Level 1
Level 1

Hi,

 

I've implemented a custom OAuth Provider and API. 

So currently AEM redirects to OAuth form, and after successful login user is redirected back to AEM with

authorization_code as a parameter 
http://localhost:4503/content/site/en/welcome.html?code=W8kJTZV9syQJ8JOuPWMTCeP_x2C190y-9CmWehunGpM&state=s5vraqvk34thmc5koifac1kbla

The problem is that OAuthAuthenticationHandler doesn't see authorization_code as a request param:

com.adobe.granite.auth.oauth.impl.OAuthAuthenticationHandler extractCredentials: fallback to we can't handle this

 as a result, there is the following error in logs:

com.adobe.granite.auth.oauth.impl.helper.OauthTokenManager token not found in request attribute or cookie for:customOAuth

 

Why code param is not visible for OAuthAuthenticationHandler? How could it be debugged to understand the root cause of this issue?

 

Thank you in advance!

1 Accepted Solution
Albin_Issac
Correct answer by
Community Advisor
Community Advisor

Are you using JsonTokenExtractor?

 

Login form should redirect to url that ends with "/callback/j_security_check"

that triggers AEM code to make an additional call to OAuth service to get Access Token

 

Refer to the below URL for more detail -

https://github.com/techforum-repo/bundles/blob/master/google-oauth-provider/src/main/java/com/core/o...

https://techforum.medium.com/social-login-with-google-oauth2-adobe-experience-manager-aem-ff33b5c4f3...

Regards

Albin I

www.albinsblog.com

 

View solution in original post

3 Replies
Albin_Issac
Correct answer by
Community Advisor
Community Advisor

Are you using JsonTokenExtractor?

 

Login form should redirect to url that ends with "/callback/j_security_check"

that triggers AEM code to make an additional call to OAuth service to get Access Token

 

Refer to the below URL for more detail -

https://github.com/techforum-repo/bundles/blob/master/google-oauth-provider/src/main/java/com/core/o...

https://techforum.medium.com/social-login-with-google-oauth2-adobe-experience-manager-aem-ff33b5c4f3...

Regards

Albin I

www.albinsblog.com

 

View solution in original post

maksyms28136728
Level 1
Level 1

Hi Albin,

Thanks for response!

I am not using JsonTokenExtractor. I followed same link that you provided.

From the logs i see that AEM tries to find authorization_code in request before request comes back from OAuth login page.

so log looks like this:

com.adobe.granite.auth.oauth.impl.helper.OauthTokenManager token not found in request attribute or cookie for:custom_config
GET /content/redirect/path.html?code=CodeFromTheOAuth&state=some_state HTTP/1.1

 

maksyms28136728
Level 1
Level 1

I found the issue.

Login form should redirect to url that ends with "/callback/j_security_check"

that triggers AEM code to make an additional call to OAuth service to get Access Token