iT邦幫忙

2021 iThome 鐵人賽

DAY 30
2
Software Development

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

iT鐵人賽完賽感想 - 30天的結束不是完結

今天原本要發表的內容是「用Keycloak學習JWT權杖格式」,然後應該還會有1-2篇與JWT相關的內容,以及Open-Id、Social Login的一些細節。

不過以鐵人賽角度可能要先在這邊結束了。

Hi~Hi~~ 各位,不知道有多少人是從第一篇跟隨看到現在的?那可能潛在的30多位看官能不能留個言讓我知道?
畢竟一篇內容幾乎至少都是2個小時起跳的,儘管自己寫的還算蠻開心的,但有時候看到自己文章的點閱率還是有點傷心。(還是網頁開發和機器學習相關的內容比較多人看啊)

這系列內容幾乎存在於現今所有系統之中,卻因爲不是開發上主要的業務邏輯內容,也就經常被人遺忘。同樣地,也有很多服務處理了這部分問題,故不需要自行處理。但是有時候「知識遠比技術更爲重要」,其之所以,還需要之其所以然。能夠了解來龍去脈,思考細節,絕對會對於軟體設計、開發有所幫助。不過是不是還是沒多少人有興趣(苦笑)。

因為詢問後得知,明天之後就部能夠在鐵人發文了,所以決定先把這次一路寫下的一些感想先寫下來。希望這不完整的系列文章不會影響到評分XD

系列規劃前

這次主題雖然啓發於年初1、2月,但是完整規劃確實在快開賽前,也就8-9月吧!不如上一次規劃「Lua重拾筆記」的早,其中一部分原因是主題範圍有點大,內容繁雜,順序更是不好規劃,甚至到有點焦慮,畢竟這次內容儘管不是第一次接觸,卻是第一次深入,很怕寫的自己不滿意。

反覆咀嚼。無招勝有招

與所有工具一樣,了解工具的工作原理及其優點非常重要。畢竟,用錘子雖然可以將螺絲釘打入牆壁,但用螺絲刀可能會更省力。希望你了解OAuth適用於哪些場景,同樣也了解它不適用於哪些場景。

-- OAuth 2.0 實戰

我認爲會使用工具以外,了解其原理、歷史脈絡也同樣有幫助。在細部規劃內容的時候,不斷反覆理解這些習以爲常的事物,甚至跨個範圍有所頓悟。對於那些「設計模式(Design Pattern)」的技術文章,頓然覺得沒什麼,自己對於一部分模式有其他的理解方式,豁然開朗。四人幫在其著作--設計模式,寫下過:「設計模式並不要求使用獨特的語言特性,也不採用那些足以使你的朋友或老闆大吃一驚的神奇的程式技巧。」不是記住從程式語言上制式的寫法,更需理解其應用場景、設計思想。做到無招勝有招,模式信手拈來。

風清揚道:「活學活使,只是第一步。要做到出手無招,那才真是踏入了高手的境界。你說『各招渾成,敵人便無法可破』,這句話還只說對了一小半。不是『渾成』,而是根本無招。你的劍招使得再渾成,只要有跡可尋,敵人便有隙可乘。但如你根本並無招式,敵人如何來破你的招式?」令狐沖一顆心怦怦亂跳,手心發熱,喃喃的道:「根本無招,如何可破?根本無招,如何可破?」陡然之間,眼前出現了一個生平從所未見、連做夢也想不到的新天地。

https://kknews.cc/zh-tw/culture/xn896lr.html


知識並不是記住而已,反覆咀嚼思考內容化爲智慧,這仍然是許多人應該做得。這系列文章也僅僅是我粗淺的見解,若有發現錯誤,或是不同看法,還請留言讓我知道

「只聽張三丰問道:『孩兒,你看清楚了沒有?』張無忌道:『看清楚了。』張三丰道: 『都記得了沒有?』張無忌道:『已忘記了一小半。』張三丰道:『好,那也難為了你。你自己去想想罷。』張無忌低頭默想。過了一會,張三丰問道:『現下怎樣了?』張無忌道: 『已忘記了一大半。』


這裡引用一段《莊子·大宗師》的譯文。

「顏回說:『我進步了。』孔子問道:『你的進步指的是什麼?』顏回說:『我已經忘卻仁義了。』孔子說:『好哇,不過還不夠。』過了幾天顏回再次拜見孔子,說:『我又進步了。』孔子問:『你的進步指的是什麼?』顏回說:『我忘卻禮樂了。』孔子說:『好哇,不過還不夠。』過了幾天顏回又再次拜見孔子,說:『我又進步了。』孔子問:『你的進步指的是什麼?』顏回說:『我『坐忘』了』。孔子驚奇不安地問:『什麼叫『坐忘』?』顏回答道:『毀廢了強健的肢體,退除了靈敏的聽覺和清晰的視力,脫離了身軀並拋棄了智慧,從而與大道渾同相通為一體,這就叫靜坐心空物我兩忘的『坐忘』。』孔子說:『與萬物同一就沒有偏好,順應變化就不執滯常理。你果真成了賢人啊!我作為老師也希望能跟隨學習而步你的後塵。』」


所謂將學到的東西忘掉,就是將形式與外表的部分拋掉,其他的變成你自己的一部分。但是這要經過消化、反芻、以及人生經驗不斷地精練、淬煉和回饋。只有你自己的知識才是有用的,別人的知識對你而言是沒有用的。這也是奧修說的,只有你自己的真理才是真理,別人的真理不是真理。這與客觀與否無關,客觀在這裡是沒有用的。

https://blog.xuite.net/lichanglee/kuastm/28938733


現在感覺有總緩緩在 達克曲線 爬坡,而且有所成就的感覺。

image alt

內容的規劃。30天的結束並不是完結

我並不知道爲什麼,其實一開始想到的是英文「Learn Authentication and Authorization with Keycloak」,然後才有了這才中文主題「用Keycloak學習身份驗證與授權」。

也就與各位知道的,到目前爲止的內容並不是最初規劃的全部。除了目前尚未提到的JWT權杖格式、Open-Id與Social Login細節外,另一大我覺得很重要的部分「存取控制(Access Control)」也還沒提到。此外,先前在「Day20 - 【概念篇】OAuth flows: Device Code(2)」實現的應用,如何實現也沒有分享。更原本實戰篇想規劃一個連存取控制都相對完整的應用,以及更多不直接與身份驗證與授權相關的「進階篇」內容。大概只能發表在個人部落格或是另做規劃了。

OpenId-client

另外有點遺憾的是使用的oidc-client似乎有點舊了,若改用openid-client也許會更實用。

Keycloak管理的設計

在經過了解一部分Keycloak後,我個人還蠻喜歡Keycloak管理的設計的。尤其用自己管理核心應用的方式,讓我蠻愉快的。

心情上的轉變

其實一開始與上次寫Lua重拾筆記一樣,只是想寫寫,整理整理自己所知道的東西而已。但寫到後來,這次是真的有些希望能夠得獎。(真心希望不完整的系列內容不會影響評分阿XD)

但看到這次「Software Development」高達117人報名,更大概有75、76人完賽大概沒問題。更有認識的人表現的也蠻好的,頗有壓力阿Orz。

呵呵,我原本還想說多報個ARM主題,隨意寫寫一些相關內容,拿個保底的獎品啥的XD
但這系列花費我心力就蠻大的了...

在最後

雖然之前不是沒有發表超過30天,但這次選在最後一天開賽,也就可能沒辦法發表超過30天。原本規劃上就超過30天,更是在邊寫的過程中衝到40天以上。雖然最後一兩週的週末有些怠惰,但姑且還是留有一些草稿內容,蒐集的資料更是多很多沒好好看過分享,其中也有不少略看很有意思的內容。

其實原本是想先詢問大家還有沒有興趣看一下,週末在多補幾篇,繼續發表。雖然目前也做了一些措施,佔位草稿什麼的,但不清楚作用如何?各位看官想法又如何?當然我也有自己的規劃。還有寫有點累,懶了(吐舌)

各位能夠留個言我會很開心~

最近在了解PDF格式、影像處理與影像辨識。不知道會不會成為我下次主題(汗

有不少事要了解要做阿Orz


上一篇
Day28 - 【概念篇】Keycloak使用基本概念 - 第二部分: Role
下一篇
Day29 - 【概念篇】用Keycloak學習JWT權杖格式 - JWT權杖格式介紹(1)
系列文
用Keycloak學習身份驗證與授權40
1
lulu_meat
iT邦新手 3 級 ‧ 2021-10-15 09:17:25

恭喜完賽!! 我是默默關注的淺水觀眾><

恭喜完賽! 按成回應了好像不能修改

lagagain iT邦新手 3 級 ‧ 2021-10-15 20:10:40 檢舉

謝謝兩位~~
希望內容對各位有所幫助~~

0
Bill_Lin
iT邦新手 5 級 ‧ 2021-10-15 09:32:35

恭喜方丈完賽!
(追玩30天的觀眾)

lagagain iT邦新手 3 級 ‧ 2021-10-15 20:16:06 檢舉

感謝忠實讀者
讓這系列初次亮面還有點點閱率填補我的心靈

0
Tree
iT邦新手 4 級 ‧ 2021-10-15 10:44:35

恭喜完賽 /images/emoticon/emoticon12.gif

lagagain iT邦新手 3 級 ‧ 2021-10-15 20:17:14 檢舉

謝謝~
話說出版狀況如何?

Tree iT邦新手 4 級 ‧ 2021-10-18 14:20:59 檢舉

/images/emoticon/emoticon20.gif

0
今晚打老虎
iT邦新手 5 級 ‧ 2021-10-15 14:10:44

方丈,這曲線duck不必

lagagain iT邦新手 3 級 ‧ 2021-10-15 20:18:20 檢舉

哇哈哈哈!
這不是真的系列內容,就別計較了。
不過這真的有些東西是沒整理,想到什麼就寫什麼了/images/emoticon/emoticon07.gif

0
Siqing47
iT邦新手 5 級 ‧ 2021-10-15 15:49:19

恭喜完賽~
原來明天就不能發文了嗎(驚

lagagain iT邦新手 3 級 ‧ 2021-10-15 20:20:02 檢舉

謝謝~~ 我之前是有發表超過30天。但那好像是因爲提前開賽,而非最後一天開賽。
那個時候記得突然「鐵人發文」的按鈕就消失了。所以這次有問一下小財神。是喔,明天就不能發鐵人文章了。

我要留言

立即登入留言