Keycloak: Setting up Social Identity Providers
Summary
TLDRВ этом видео о Keycloak, Chesteve показывает, как настроить поставщика социальной идентичности, используя GitHub в качестве примера. Он объясняет, как добавить нового клиента, настроить конфигурацию в GitHub для использования OAuth2 и создать приложение 'hotel'. После этого он демонстрирует, как пользователи могут войти в Keycloak через кнопку GitHub и автоматически получить свои данные имени пользователя, имени и фамилии из GitHub. В конце видео Chesteve удаляет приложение для безопасности и подводит итог, обещая в следующем видео рассказать о синхронизации Keycloak с LDAP-каталогами.
Takeaways
- 🔑 В видео рассматривается настройка поставщиков социальной идентичности в Keycloak, используя GitHub в качестве примера.
- 👤 Для начала создается новый клиент в Keycloak, предположительно для клиента, который хочет использовать GitHub для аутентификации.
- 🔗 В Keycloak выбирается опция 'Identity Providers', где доступны различные предустановленные коннекторы, в примере выбран GitHub.
- 📝 В процессе настройки копируется конечная точка для дальнейшего использования на GitHub.
- 💻 Переход на GitHub для завершения настройки приложения, создание тестового приложения с названием 'hotel'.
- 🏠 Указываются URL-адреса и описание для тестового приложения GitHub, также задается обратный вызов (callback), скопированный из Keycloak.
- 🔑 Регистрация приложения на GitHub для получения идентификатора клиента и секрета клиента.
- 👁️ Для приложения GitHub выбираются области (scopes), которые определяют доступ к информации пользователя.
- 📌 Keycloak автоматически сопоставляет атрибуты пользователя из GitHub, такие как имя пользователя, имя и фамилию.
- 🎯 После настройки на странице входа в Keycloak появляется кнопка GitHub, позволяющая пользователям авторизоваться через аккаунт GitHub.
- 🗑️ В конце видео демонстрируется удаление тестового приложения GitHub для безопасности.
- 📺 В следующем видео планируется рассмотрение синхронизации Keycloak с LDAP-каталогами.
Q & A
Что такое Keycloak и для чего оно используется?
-Keycloak - это открытая платформа управления удостоверениями и доступом, которая позволяет упростить процесс аутентификации и авторизации для приложений, используя различные протоколы, такие как OpenID Connect и SAML2.
Как настроить Keycloak для использования социальной учетной записи, например, GitHub?
-Для настройки Keycloak с GitHub следует добавить социального поставщика удостоверений в Keycloak, перейти в настройки разработчика на GitHub, создать приложение OAuth2 и настроить его с копированным обратным вызовом (callback URL) из Keycloak.
Что такое обратный вызов (callback URL) и как его использовать?
-Обратный вызов (callback URL) - это URL, на который GitHub будет перенаправлять пользователя после успешной аутентификации. Этот URL должен быть зарегистрирован в настройках приложения OAuth2 на GitHub.
Как получить Client ID и Client Secret для приложения GitHub?
-После создания приложения OAuth2 на GitHub, можно получить Client ID и Client Secret в разделе настроек приложения. Важно сохранить их в безопасности и не раскрывать их, особенно Client Secret.
После настройки социальной учетной записи на GitHub, что происходит при входе через кнопку GitHub в Keycloak?
-При нажатии на кнопку GitHub для входа, пользователь будет перенаправлен на страницу GitHub для аутентификации. После авторизации, GitHub перенаправит пользователя обратно в Keycloak, где будет произведена проверка данных и пользователь получит доступ.
Какие данные Keycloak может получить от GitHub при использовании социальной учетной записи?
-Keycloak может получать такие данные, как имя пользователя, адрес электронной почты и имя (включая имя и фамилию), которые определены в профиле пользователя на GitHub.
Чем отличается процесс настройки аутентификации через GitHub от использования протокола SSO с использованием SAML2?
-Процесс настройки аутентификации через GitHub включает в себя добавление социального поставщика удостоверений в Keycloak и настройку приложения OAuth2 на GitHub. В то время как SSO с использованием SAML2 требует настройки утверждений и атрибутов в Keycloak для интеграции с другими приложениями.
Какие преимущества предлагает использование социальной учетной записи для входа в Keycloak?
-Использование социальной учетной записи упрощает процесс входа для пользователей, так как они могут использовать уже существующие аккаунты, что ускоряет процесс регистрации и аутентификации. Это также может уменьшить нагрузку на администраторов, связанную с управлением учетными записями.
Что означает SSO (Single Sign-On) и как это работает в Keycloak?
-SSO (Single Sign-On) - это механизм, который позволяет пользователям аутентифицироваться один раз и получать доступ к нескольким приложениям или службам без необходимости повторной аутентификации. В Keycloak это реализуется через настройку соответствующих протоколов и утверждений для каждого приложения.
Какие дополнительные настройки доступны при использовании социальных поставщиков удостоверений в Keycloak?
-В Keycloak при использовании социальных поставщиков удостоверений доступны дополнительные настройки, такие как выбор области (scopes), которые определяют, какие данные пользователь разрешает обмениваться с приложениями, и настройка пользовательских утверждений для более точной интеграции.
Какие действия предпринимаются для обеспечения безопасности при использовании социальных учетных записей в Keycloak?
-Для обеспечения безопасности при использовании социальных учетных записей в Keycloak рекомендуется скрыть Client Secret от глаз и не раскрывать его. Также важно правильно настроить разрешения доступа и периодически проверять и обновлять настройки приложений.
Outlines
🔐 Настройка поставщика социальной идентичности с использованием GitHub в Keycloak
В этом видео представитель Chesteve демонстрирует, как настроить поставщика социальной идентичности на примере GitHub в Keycloak. Он рекомендует просмотреть предыдущие видео о настройке реалмов, клиентов, пользовательских политик паролей и MFA. В видео описывается процесс добавления нового клиента, который предпочитает использовать GitHub для аутентификации вместо SSO с использованием протокола OpenID Connect. В видео показан переход в настройки GitHub, создание приложения OAuth2, копирование и регистрация обратных вызовов, а также получение идентификатора клиента и секрета клиента. После этого, пользователь может войти в Keycloak через кнопку GitHub, и информация о пользователе, включая имя и адрес электронной почты, будет корректно прочитана и передана в Keycloak.
🔄 Предстоящее видео о синхронизации Keycloak с LDAP-каталогами
В заключительной части видео Chesteve сообщает о предстоящем видео, в котором он расскажет о синхронизации Keycloak с LDAP-каталогами. Он подчеркивает важность подписки на канал и нажатия кнопки 'Нравится', если пользователь заинтересован в продолжении серии видео. Также он благодарит за просмотр и поддержку, что подчеркивает его стремление предоставить полезные и интересные материалы для своих подписчиков.
Mindmap
Keywords
💡Keycloak
💡Social Identity Provider
💡GitHub
💡OAuth2
💡SSO (Single Sign-On)
💡Realms
💡Clients
💡Custom Password Policies
💡MFA (Multi-Factor Authentication)
💡Scopes
Highlights
Introduction to setting up a social identity provider in Keycloak.
Using GitHub as an example for setting up a social identity provider.
Assumption of a new customer wanting to use GitHub for authentication instead of SSO sum20.
Accessing the list of out-of-the-box connectors available in Keycloak.
Demonstration of adding a new customer in Keycloak.
Switching to GitHub to finish setting up the application.
Navigating to GitHub account settings and Developer settings.
Creating a new OAuth2 application on GitHub called 'hotel'.
Setting the homepage URL and callback URL for the GitHub application.
Registering the application and obtaining the client ID and secret.
Explanation of the importance of client secret security.
Copying the client secret and setting up scopes for the application.
Trusting the email and completing the GitHub application setup.
Demonstration of the GitHub login button appearing on the Keycloak login page.
Authorizing the 'hotel' application to access GitHub account information.
Keycloak correctly reading and mapping GitHub username, email, first name, and last name.
Comparison with previous video on SSO integration and attribute mapping.
Successful login into Keycloak using GitHub credentials.
Teaser for the next video on syncing Keycloak with LDAP directories.
Encouragement to like, subscribe, and follow for more content.
Transcripts
hello everybody hola todos
chesteve in this video about keyclaw
i'm going to show you how to set up
social identity provider
as an example i will use github
also please check out my previous videos
the first about setting up realms
clients custom password policies and mfa
in key cloak the second one about
setting up single sign-on using sum20
protocol okay but in this
video let's talk about the social
identity providers
let's assume we have yet another
customer
let's add it
and this customer
doesn't want to use sso sum20
instead they would like to use github or
auth2
okay so we go into the identity
providers from the list
as you can see there are quite a few
out of the box connectors available but
i will go with github in our example
okay i will copy this endpoint
and now i will switch to github to
finish
setting up this application
so this is my github
[Music]
account i'm under the settings
i will go into the developer settings
oauth2 apps i have one
test application and i'm going to add a
new one
i will call it hotel that's our
imaginary system that we are working on
in this
key cloud series
homepage url let's use this one
description is optional callback is
the callback which i copied from
key cloak so i'm going to register the
application now
i need client id
i also need the client secret
as the client secret will be visible on
my screen
for security reasons i'm going to delete
this application at the end of the video
and copy the secret
i can provide scopes for this
application i will go with the default
one you can read in github
documentation what information is
provided
in the default scope
or you can comma separate your own
scopes
i'm going to trust the email and that's
really
all that i have to do
okay everything is ready i will go into
the clients and just
open this url to login into the
account on the login page you can see
that i have now
github button available so i'm going to
click it
and yeah do i want to authorize hotel
yes i do
and i'm in key cloak
and the github connector
correctly read my username that's my
username in github that is the
email that i have set in github and
my first name and last name
if you are familiar with github api you
will
know that in github
there's only name field which contains
both
the first name and last name
and key cloak correctly
passed first name and last name
automatically
if you recall the previous video when i
was showing
samuel to zero integration we had to
explicitly
map some assertion attributes to
key clock attributes here i didn't have
to do anything
everything is correct i will hit save so
yeah everything
worked fine and i can from now on
logging into key cloak using
github okay and that's really all
that's super simple before i
wrap up uh as promised uh i will
did this application well let's just
refresh it so yeah we can see that
we have now uh one user it was used
within the last week and i will delete
this
application okay the application is gone
so guys that's everything
for this video in the next video
i'm going to show you how to sync
keyclock with
ldap directories so
stay tuned if you like the video hit the
like button
and subscribe to my channel thanks
Browse More Related Video
![](https://i.ytimg.com/vi/C6b7fWmWkP0/hq720.jpg)
Обновленный Selenium и работа с прокси | Python, Selenium и proxy | Подмена IP адреса
![](https://i.ytimg.com/vi/NKQvnTnrTko/hq720.jpg)
ЭКОНОМИЯ ВРЕМЕНИ И ДЕНЕГ ПРИ ВЫБОРЕ НЕЙРОСЕТИ (МОДЕЛИ ТИПА LLM)
![](https://i.ytimg.com/vi/jb8pJraU3RA/hq720.jpg)
STALKER Anomaly Basic Addon Tutorial - Creating/Editing Weapons
![](https://i.ytimg.com/vi/F32mikTDWsk/hq720.jpg)
Quarantine Rehab Plants In A Clear Shoe Box
![](https://i.ytimg.com/vi/ooQW0OnRtag/hq720.jpg?sqp=-oaymwEmCIAKENAF8quKqQMa8AEB-AH-CYAC0AWKAgwIABABGGUgVyhNMA8=&rs=AOn4CLDyRn7a8WEZrBXwV0DMAB9z8ZZ91A)
Глава 1 Базовый Синтаксис ; День 36 ; 36.2
![](https://i.ytimg.com/vi/tRZGeaHPoaw/hq720.jpg)
Git and GitHub Tutorial for Beginners
5.0 / 5 (0 votes)