[keycloak-dev] configuring social providers

Bolesław Dawidowicz bdawidow at redhat.com
Mon Jul 22 08:28:15 EDT 2013


On 07/22/2013 02:12 PM, Bill Burke wrote:
>
>
> On 7/22/2013 7:48 AM, Bolesław Dawidowicz wrote:
>> The whole concept of the broker for social stuff is built around two points:
>>
>> a) Application developer doesn't care about configuration of G+,
>> twitter, FB, linkedIn and etc. at the app code level. He just does it
>> single time in the management console for his app(s). Then he just
>> interacts with broke/keycloak APIs. If there is new social provider
>> added and configured via management console - it just appears in the app
>> login screen. From application code perspective this is pretty much
>> transparent. Important point is that those social services cannot be
>> preconfigured as you cannot share key secret publicly
>>
>
> Nothing you have said has convinced me you CAN'T use a global keycloak
> google account.  Login will be a double OAuth invocation.  Redirects
> will be Application->Keycloak->Google->Keycloak->Application.
>
> This is a usability issue.  If we go the IdentityBroker route, a
> keycloak user would have to register and create a social account for
> each social provider they want to enable.  If a new social becomes
> popular, they won't automatically get this new provider, they will again
> have to register for an account and configure keycloak.

Yes but then you just do it once for the whole set of your applications. 
3 clicks in the management UI, filling in 3 text forms. Then your N 
applications that are configured with KC/Broker automagically obtain 
support for this new social provider

>
> I'd like to see just one checkbox "Enable Social Login".  When the admin
> checks this, they get everything we can integrate with or will be able
> to integrate with.  Simple easy....

Doesn't you need to register KeyCloak with Google first and obtain 
secret that cannot be share therefore cannot be configured in KC OOTB? 
Our point is that you cannot have global Google/Twitter/etc. KeyCloak 
developer account provided and configured by default - it would violate 
certain set of terms and conditions defined by those providers.

>
>> b) Application User doesn't need to be aware about about existence of
>> keycloak/broker. From the user perspective he is interacting only with
>> the app and social providers (g+, twitter, etc.).
>>
>
> Incorrect.  For the OAuth case, Keycloak will be specifying messages
> like "Application XXX is requesting permission to access your
> inventory."  Google only does OAuth for Google apps, AFAICT.
>
> For single-sign-on, users will be redirected to Keycloak.  If there is a
> keycloak session cookie set, then no social login is required, but the
> 2nd application the user visits still needs to obtain a token.

I think we are a bit lost in the conversation and are talking about a 
bit different things and flows. Did you try to follow the Getting 
Started for the POC that Stian shared?

>
>> On 07/22/2013 01:35 PM, Bill Burke wrote:
>>> This is all stuff keycloak takes care of.  Once a user is logged into
>>> keycloak, they are remembered (until cookie timeout or a logout) and
>>> there's no need to go back to Google.  The same thing goes with "Foo is
>>> requesting permission..."  This is all something Keycloak will take care
>>> of and must take care of anyways as Google only manages its own
>>> applications.
>>>
>>> So, again, I don't see why you couldn't use a global keycloak account.
>>>
>>> On 7/22/2013 4:44 AM, Stian Thorgersen wrote:
>>>> A key/secret in Google (and same for Facebook, Twitter, etc.) maps onto the configuration for a single application. First time a user logs in to an application through Google (with or without Keycloak) they expect to see a message "Foo is requesting permission to ...". Second time they log in to the same application they are just redirected back to the application and automatically logged in (if they are already logged in to Google that is). If they try to log in to a different application they expect the message "Bar is requesting permission to ...". Also in their Google account they can list all the applications that have access to their account, including what information they can access. They can also revoke access to individual applications.
>>>>
>>>> This requires a separate configuration for each application for each enabled social provider. Hence why in IdentityBroker there's a list of social providers, including the key/secret, for each individual application. The plan was that further down the line it would be possible to share social provider configurations between a group of related applications. Maybe "a group of related applications" maps onto a realm, in which case we could have this configured on a realm instead of on individual applications.
>>>>
>>>> In the end it boils down to on what level should users be able to accept/revoke access to their social accounts, and what details are shown on their social account about the application. In my opinion this is definitively not a server wide setting. Also it's not possible to automatically configure this as it has to be linked to some ones social account (to use login with Google+ you have to have a Google+ account).
>>>>
>>>> ----- Original Message -----
>>>>> From: "Bill Burke" <bburke at redhat.com>
>>>>> To: keycloak-dev at lists.jboss.org
>>>>> Sent: Saturday, 20 July, 2013 2:45:17 AM
>>>>> Subject: [keycloak-dev] configuring social providers
>>>>>
>>>>> In looking at your demo, is there any reason you need to define the
>>>>> metadata for the social provider?  Can't you either
>>>>>
>>>>> a) Preconfigure Keycloak server with Twitter, Google+ account?
>>>>> b) Automatically configure the social provider without user input.
>>>>>
>>>>> Since Keycloak is already a broker, why does a user need to input any of
>>>>> that metadata?
>>>>>
>>>>> --
>>>>> Bill Burke
>>>>> JBoss, a division of Red Hat
>>>>> http://bill.burkecentral.com
>>>>> _______________________________________________
>>>>> keycloak-dev mailing list
>>>>> keycloak-dev at lists.jboss.org
>>>>> https://lists.jboss.org/mailman/listinfo/keycloak-dev
>>>>>
>>>> _______________________________________________
>>>> keycloak-dev mailing list
>>>> keycloak-dev at lists.jboss.org
>>>> https://lists.jboss.org/mailman/listinfo/keycloak-dev
>>>>
>>>
>>
>> _______________________________________________
>> keycloak-dev mailing list
>> keycloak-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/keycloak-dev
>>
>



More information about the keycloak-dev mailing list