[keycloak-user] Allow google login without reauthentication
Marek Posolda
mposolda at redhat.com
Fri Sep 23 09:58:40 EDT 2016
The linking is done in IdentityBrokerService once the firstBrokerLogin
flow is finished. I suggest to look at sources of existing
authenticators in firstBrokerLogin and to IdentityBrokerService .
Good luck,
Marek
On 15/09/16 02:13, Harits Elfahmi wrote:
> Hi Marek,
>
> Any pointer on this? I've looked through the source code, but can't
> seem to find the place where it does the actual linking. Must I
> replace the entire default First Broker Login flow, or is it possible
> to just make some changes into some if its authenticator?
>
> Thanks
>
> 2016-06-21 13:08 GMT+07:00 Marek Posolda <mposolda at redhat.com
> <mailto:mposolda at redhat.com>>:
>
> You mean that if in keycloak database is already existing user
> "john at gmail.com" <mailto:john at gmail.com> and you authenticate the
> same user "john at gmail.com" <mailto:john at gmail.com> with google
> identity provider, you want to automatically link google provider
> with this keycloak account?
>
> We didn't want to support this OOTB because of possible security
> implications. For example if identity provider doesn't verify
> emails, you can see security issues similar to this:
> - There is user "john at gmail.com" <mailto:john at gmail.com> in keycloak
> - Attacker registers the account on identity provider side with
> email "john at gmail.com" <mailto:john at gmail.com> . If identity
> provider doesn't verify emails, attacker can easily do it.
> - Now attacker login to keycloak with identity provider and
> keycloak will automatically link with the existing keycloak
> account "john at gmail.com" <mailto:john at gmail.com> . So now attacker
> was able to login to keycloak as user "john at gmail.com"
> <mailto:john at gmail.com> because 3rd party identity provider didn't
> verify emails and accounts were linked automatically just based on
> emails.
>
> You can admit that this one issue doesn't exist in case that
> identity provider properly verify emails. However there are still
> in theory some other issues...
>
> So feel free to implement your own authenticator, which will do
> the linking automatically based on email and then configure "first
> broker login" flow with your authenticator. See docs for "First
> broker login" and "Authentication SPI" for more details.
>
> Also feel free to create JIRA if you really want this OOTB. We may
> eventually add it if there is big requirement for this. However we
> will never change the default "first broker login" flow to behave
> like this and automatically link accounts.
>
> Marek
>
>
> On 17/06/16 08:46, Harits Elfahmi wrote:
>> Hello,
>>
>> Currently we use google login using the identity provider in
>> keycloak. The first broker login states that we must verify
>> existing account and then reauthenticate using user password
>> form. Is it possible to use the already available
>> executions/flows and skip the reauthentication part?
>>
>> So if the google email already exist in a keycloak account, we
>> allow them to login without the form.
>>
>> Or must we create a custom execution? Is it possible using custom
>> execution?
>>
>> Thanks
>> --
>> Cheers,
>> *
>> *
>> *Harits* Elfahmi
>>
>>
>> _______________________________________________
>> keycloak-user mailing list
>> keycloak-user at lists.jboss.org <mailto:keycloak-user at lists.jboss.org>
>> https://lists.jboss.org/mailman/listinfo/keycloak-user
>> <https://lists.jboss.org/mailman/listinfo/keycloak-user>
>
> --
> Cheers,
> **
> *Harits* Elfahmi
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/keycloak-user/attachments/20160923/f8fb79a4/attachment.html
More information about the keycloak-user
mailing list