我記得我最早在 2008 年就因為一個標案串接過 e 政府服務平臺的單一登入機制,事隔多年後,竟然什麼也沒有變,還是一樣透過 SOAP Web Service 來進行驗證。今天這篇文章我就來說說如何透過 .NET 7 實作 e 政府服務平臺的單一簽入機制,以及說明如何用 .NET 呼叫以 SOAP 為基礎的 Web Service 服務。
... 繼續閱讀 ...
前陣子在研究 TOTP (Time-based One-Time Password) 的實作方式,發現還蠻容易的,這篇文章我就來記錄一下實作的注意事項。
... 繼續閱讀 ...
由於每一家不同的 OAuth 2.0 Provider 對於 Refresh Token 的核發方法都不盡相同,這篇文章我打算記錄一下 Google OAuth 2.0 發出 Refresh Token 的方法。
... 繼續閱讀 ...
從 ASP.NET Core 7.0 開始,.NET SDK 7 內建支援 dotnet user-jwts
命令,可以幫助你管理開發時期所需的金鑰與 JWT Tokens,我深入的把玩了一下,發現還真的好用,這篇文章我就來說說怎樣使用。
... 繼續閱讀 ...
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 資料保護機制,並透過一個簡單範例說明他的加解密的用法。
... 繼續閱讀 ...
我們都知道 OAuth 2.0 提供了一系列授權的流程標準,但各家 OAuth 2.0 提供者通常都有各自的授權管理機制,這部分並沒有規範在 OAuth 2.0 規格中,因此不同平台之間的實作差異相當大。今天我以「使用者」的角度來看「授權」這件事,當我們授權給「用戶端」應用程式之後,若想撤銷授權,這篇文章特別整理各個不同平台撤銷權限的主要網址。
... 繼續閱讀 ...
要體驗強大的 Keycloak 這套開源的身分認證與存取管理系統,最簡單的方式莫過於透過 Docker/Podman 執行 Keycloak 的開發模式了。你可以在短時間內就可以架設出一套擁有 OpenID Connect (OIDC) 與 OAuth 2.0 提供者的完整實作,是一套功能強大同時又免費的解決方案。這篇文章我就來描述一下 Keycloak 啟動與初始化設定的過程。
... 繼續閱讀 ...
我前陣子在研究 LINE Login 使用的 ES256
非對稱加密演算法,當我透過 OpenId Connect 拿到 ID Token 後,我想拿 LINE Login 提供的 JWKs 金鑰組來驗證其有效性,這篇文章我打算分享如何用 C# 搭配 LINE Login 提供的 JWKs 金鑰組來驗證其有效性!
... 繼續閱讀 ...
要透過 Google Cloud Platform (GCP) 的 OAuth 2.0 Client IDs 存取任何 Google 雲端服務,除了要走過 OAuth 2.0 的授權流程外,每個服務都需要事先啟用才能使用。除此之外,你還需要設定 CONSENT SCREEN 才行,這篇文章我打算來解說第一次設定 Google 服務與 OAuth 2.0 Client IDs 的注意事項。
... 繼續閱讀 ...