iT邦幫忙

2021 iThome 鐵人賽

DAY 6
1
Software Development

用Keycloak學習身份驗證與授權系列 第 6

Day05 - 【入門篇】什麼是Keycloak

本系列文之後也會置於個人網站


logo

終於要來好好介紹一下甚麼是Keycloak了~

收先先來看一下Keycloak的基本資訊:


快速開始 提到過起始畫面有一些細節:

注意到右下角的 JBoss 和 JBoss Community
是的, Keycloak 和JBoss是有關係的。 實際接觸過 JBossWildFly 應該會比我熟悉許多。
我只能夠從一部分查詢到的資料和自己使用及觀察的狀況來介紹一下。
所以同樣地,在我們使用 Docker 起動 Keycloak服務時,同樣有出現 JBossWildFly

其實這兩者也有非常密切的關係,JBoss是WildFly的前身。不過再回到 Keycloak ,同 WildFly 也是在 Red Hat 下的開源產品。
所以在我們第一天的「快速開始」裡,其實同樣有看到Red Hat(這次在左下角):


Keycloak是拿來做什麼的?

首先,他是一個單點登入(Single Sign On, SSO)系統服務。換句話說如果「快速開始」所展示的,他可以協助你驗證身份與管理會話(Session)。
除此之外,他可以嫁接許多現有的驗證系統,支援LDAP、keyberos。

此外支援多種社交登入(Social Login)。

以及支援多個標準協議,包含 OAuth 2.0 、 OpenID 和 saml 。 且支援授權服務。

關於我來看Keycloak

起初會看到 Keycloak 是因爲,當時在思考一個授權設計的相關軟體開發問題。然後授權又與驗證不是那麼容易分開來看。
找著找著就發現Keycloak這蠻有去的玩具。雖然文件上有些過時,但功能齊全、更新更讓我意外。

2020年底、2021年初,剛接觸時才12版,一部分OAuth的Flow也沒有實現。半年才過去一些,現在不但有了,主板號更是直接跳到15版。

  • 2021年7月30 發佈 15.0.0 版
  • 2021年8月7日 發佈 15.0.1 版
  • 2021年8月20日 發佈 15.0.2 版

我並不清楚Red Hat這家公司對於開源產品的態度。也不清楚Keycloak的廣泛度。儘管調查的資料看到算是上游有高優先的產品,
但畢竟有時候花錢買服務要簡單多了。這點上Keycloak同樣也有,但我更早了解到的是 Firebase 和 Auth0 。

不過在了解過它的功能和這更新速度,我服了。此外,在我後來的一些需求尋找的工具中,也看得到一些與Keycloak配合的身影。

參考文獻


上一篇
Day04 - 【入門篇】淺談身份驗證與授權(2)
下一篇
Day06 - 【入門篇】Keycloak的替代品
系列文
用Keycloak學習身份驗證與授權40

1 則留言

1
Bill_Lin
iT邦新手 5 級 ‧ 2021-09-22 21:01:57

Jboss 就 java 常用的 server 跟大眾用的 tomcat 差不多

lagagain iT邦新手 3 級 ‧ 2021-09-23 07:19:05 檢舉

Cool~感謝補充~
另外雖然是不同時間,但是有找到一個PatternFly的東西,類似Material Design或是Apple Design這種設計風格指南。感覺Keycloak有遵照PatternFly的設計原則呢!

PatterFly也是紅帽的。PatterFly、WildFly.../images/emoticon/emoticon13.gif都是紅帽的。會不會是這家紅色帽子的命名風格呢?不知道還有什麼Fly呢

比爾補充的不錯,方丈也很巧妙的回應

我要留言

立即登入留言