ASP.NET Core Data Protection 提供了一組加密 API (cryptographic API) 來保護資料安全,其中還自動包含了密鑰管理(key management)與密鑰更換(key rotation)等機制。這套技術主要用來長期取代 .NET Framework 的 ASP.NET 1.x ~ 4.x 中 web.config
定義的 <machineKey>
元素,我研究之後發現這套機制不但簡單好上手,背後的金鑰管理也有一定程度的複雜度,可算是相當不錯的資料保護解決方案。這篇文章我想帶大家快速上手 ASP.NET Core 資料保護機制,並透過一個簡單範例說明他的加解密的用法。
... 繼續閱讀 ...
今天我體驗了 GitLab EE on Docker 的安裝程序,我覺得文件寫的相當不錯,安裝的過程也頗為順利,只是在 Ubuntu 22.04 LTS 還是踩到了一些地雷,有些注意事項在官方文件上並沒有詳細提及,這篇文章我就帶大家來體驗一下完整的安裝設定流程。
... 繼續閱讀 ...
昨天有個五年前的專案,由於正式環境出了一點狀況想要重新部署,但卻發現 CI 已經無法正常執行,不是版本不對就是套件異常,弄了好幾個小時才搞定。這篇文章我想分享一下這次處理的經驗與心得分享。
... 繼續閱讀 ...
今天我嘗試把 GitLab 安裝到我的 Ubuntu 22.04 LTS 作業系統中,過程頗為順利,安裝體驗還不錯,我也特別記錄下完整的安裝設定過程,並透過這篇文章分享。
... 繼續閱讀 ...
我們都知道 OAuth 2.0 提供了一系列授權的流程標準,但各家 OAuth 2.0 提供者通常都有各自的授權管理機制,這部分並沒有規範在 OAuth 2.0 規格中,因此不同平台之間的實作差異相當大。今天我以「使用者」的角度來看「授權」這件事,當我們授權給「用戶端」應用程式之後,若想撤銷授權,這篇文章特別整理各個不同平台撤銷權限的主要網址。
... 繼續閱讀 ...
要體驗強大的 Keycloak 這套開源的身分認證與存取管理系統,最簡單的方式莫過於透過 Docker/Podman 執行 Keycloak 的開發模式了。你可以在短時間內就可以架設出一套擁有 OpenID Connect (OIDC) 與 OAuth 2.0 提供者的完整實作,是一套功能強大同時又免費的解決方案。這篇文章我就來描述一下 Keycloak 啟動與初始化設定的過程。
... 繼續閱讀 ...
在開發 ASP․NET Core Web API 的 [HttpPost]
動作方法用來建立資料時,我們可以使用 CreatedAtAction
或 CreatedAtRoute
來回應訊息,但是可能會遇到 No route matches the supplied values
的問題,這篇文章我來說說問題發生的原因與解決方案。
... 繼續閱讀 ...
從 Angular 14 開始,全新架構獨立元件(Standalone Component)騰空出世,帶給 Angular 開發者一個全新感受,用更簡潔的程式碼、更清晰的架構,幫助開發人員架構元件與管理元件之間的依賴關係。而從 Angular 15.2.0 開始,更提供了一個 Schematics (程式碼產生器與編修工具) 可以幫助你快速移轉傳統元件為獨立元件,甚至於可以連同 AppComponent 也一併轉換成獨立元件,讓整個 Angular 應用程式都變成以獨立元件為主。這篇文章我來說說這套工具的使用方式!
... 繼續閱讀 ...
我前陣子在研究 LINE Login 使用的 ES256
非對稱加密演算法,當我透過 OpenId Connect 拿到 ID Token 後,我想拿 LINE Login 提供的 JWKs 金鑰組來驗證其有效性,這篇文章我打算分享如何用 C# 搭配 LINE Login 提供的 JWKs 金鑰組來驗證其有效性!
... 繼續閱讀 ...