FIY I've added a bunch of issues around social integration to JIRA:
https://issues.jboss.org/issues/?jql=project%20%3D%2012313920%20AND%20lab...
----- Original Message -----
From: "Marek Posolda" <mposolda(a)redhat.com>
To: "Stian Thorgersen" <stian(a)redhat.com>
Cc: keycloak-dev(a)lists.jboss.org
Sent: Tuesday, 13 August, 2013 12:43:36 PM
Subject: Re: [keycloak-dev] Associate social account with IDM user
Hi,
Here is Marek Posolda from GateIn/JPP software engineering :-)
Picketlink IDM is quite flexible and I think that there are more
possibilities how to map it. What I am thinking about could be:
1) Map the attributes related to all social providers directly as part
of User itself. UserAdapter object (and also user representation in
Picketlink) has support for dynamic attributes via method
setAttribute/getAttribute . So it should be possible to use attributes
with any name and just prefix them for given social network (For
example: attribute "social.facebook.username" could be used for saving
of Facebook username, attribute "social.google.username" for saving of
google username or email)
IMO this is the simplest and best approach. It's how I did it in IdB and worked well
there. I can't see any particular drawbacks to this approach.
2) Create another Relationship adapter object and store the informations
as relationship between User and Social provider. Picketlink supports
attributes to be part of any Relationship, so it should be possible to
achieve this.
Another option I was thinking about is if we could add a custom social credential type.
Another thing is, how to wire some social provider with existing User
accounts in UI. Actually the Social links are available just on
registration page, which is for anonymous user.
Marek
On 13.8.2013 12:43, Stian Thorgersen wrote:
> We need to be able to associate multiple social providers with an IDM user.
> At the moment this is not based on the username of the account (for
> example google.23897892sdf). This has to main drawbacks:
>
> * Horrible username
> * Can only associate a single social account with an IDM user
>
> What is the best way to store this information? We mainly need to store
> what social providers a user has linked and the social userid. In the
> future we may also want to associate access tokens as well. We also need
> to lookup a user based on the social provider + social userid.
> _______________________________________________
> keycloak-dev mailing list
> keycloak-dev(a)lists.jboss.org
>
https://lists.jboss.org/mailman/listinfo/keycloak-dev