[JBoss JIRA] (GTNPORTAL-3414) Oauth improvement: enable developer change the way to generate gatein user for each oauth provider via extension
by Trong Tran (JIRA)
[ https://issues.jboss.org/browse/GTNPORTAL-3414?page=com.atlassian.jira.pl... ]
Trong Tran reassigned GTNPORTAL-3414:
-------------------------------------
Assignee: Trong Tran (was: Tuyen Nguyen The)
> Oauth improvement: enable developer change the way to generate gatein user for each oauth provider via extension
> ----------------------------------------------------------------------------------------------------------------
>
> Key: GTNPORTAL-3414
> URL: https://issues.jboss.org/browse/GTNPORTAL-3414
> Project: GateIn Portal
> Issue Type: Enhancement
> Security Level: Public(Everyone can see)
> Reporter: Tuyen Nguyen The
> Assignee: Trong Tran
> Attachments: linkedin-registration.png
>
> Original Estimate: 4 hours
> Remaining Estimate: 4 hours
>
> When i register new account with LinkedIn, i see a registration form with random-string username prefilled (see attachment)
> It's because LinkedIn does not provide username as unique attribute for each user, so we have to get userid instead of username, and this is a random-string by LinkedIn
> Now, We can improvement method OAuthUtils#convertOAuthPrincipalToGateInUser() and customize the way to convert oauth-principal to gatein user for linkedIn.
> But when someone provide other oauth integration via extension, he can not customize OAuthUtils#convertOAuthPrincipalToGateInUser() method to generate gatein user by the way that oauth should do.
> So we should enable developer change the way to generate gatein user for each oauth provider via extension.
> To enable developer change the way to generate gatein user via extension, we will:
> - Introduce OAuthUserGenerator service and it can add OAuthUserGeneratorPlugin by extension. This service will response to generate gatein user from oauth-principal
> - Method OAuthUserGenerator#generateGateInUser(OAuthPrincipal principal) will do:
> + Find OAuthUserGeneratorPlugin by oauthProviderType,
> + If found plugin for this oauth provider it will delegate method OAuthUserGeneratorPlugin#generateGateInUser()
> + If not found, it will delegate to OAuthUtils#convertOAuthPrincipalToGateInUser() as default.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
10 years, 8 months
[JBoss JIRA] (GTNPORTAL-3414) Oauth improvement: enable developer change the way to generate gatein user for each oauth provider via extension
by Trong Tran (JIRA)
[ https://issues.jboss.org/browse/GTNPORTAL-3414?page=com.atlassian.jira.pl... ]
Work on GTNPORTAL-3414 started by Trong Tran.
> Oauth improvement: enable developer change the way to generate gatein user for each oauth provider via extension
> ----------------------------------------------------------------------------------------------------------------
>
> Key: GTNPORTAL-3414
> URL: https://issues.jboss.org/browse/GTNPORTAL-3414
> Project: GateIn Portal
> Issue Type: Enhancement
> Security Level: Public(Everyone can see)
> Reporter: Tuyen Nguyen The
> Assignee: Trong Tran
> Attachments: linkedin-registration.png
>
> Original Estimate: 4 hours
> Remaining Estimate: 4 hours
>
> When i register new account with LinkedIn, i see a registration form with random-string username prefilled (see attachment)
> It's because LinkedIn does not provide username as unique attribute for each user, so we have to get userid instead of username, and this is a random-string by LinkedIn
> Now, We can improvement method OAuthUtils#convertOAuthPrincipalToGateInUser() and customize the way to convert oauth-principal to gatein user for linkedIn.
> But when someone provide other oauth integration via extension, he can not customize OAuthUtils#convertOAuthPrincipalToGateInUser() method to generate gatein user by the way that oauth should do.
> So we should enable developer change the way to generate gatein user for each oauth provider via extension.
> To enable developer change the way to generate gatein user via extension, we will:
> - Introduce OAuthUserGenerator service and it can add OAuthUserGeneratorPlugin by extension. This service will response to generate gatein user from oauth-principal
> - Method OAuthUserGenerator#generateGateInUser(OAuthPrincipal principal) will do:
> + Find OAuthUserGeneratorPlugin by oauthProviderType,
> + If found plugin for this oauth provider it will delegate method OAuthUserGeneratorPlugin#generateGateInUser()
> + If not found, it will delegate to OAuthUtils#convertOAuthPrincipalToGateInUser() as default.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
10 years, 8 months