]
Trong Tran updated GTNPORTAL-3414:
----------------------------------
Summary: Be able to intercept and process oauth principal into gatein user according
to provider types (was: Oauth improvement: enable developer change the way to generate
gatein user for each oauth provider via extension)
Be able to intercept and process oauth principal into gatein user
according to provider types
---------------------------------------------------------------------------------------------
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
Time Spent: 7 hours
Remaining Estimate: 0 minutes
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: