2024-06-04 08:36 PM 0 956
同事報案:某古蹟 ASP.NET 3.5 Web Site Project 無法編譯噴出錯誤:aspnet_merge : error 1027: 這個網站是由舊版 ASP.NET 編譯而得的。請使用對應的舊版 aspnet_merge 來加以合併。 說法是上次用還是好的,沒做什麼今天就忽然不能用了...
2024-05-23 11:38 PM 0 1,226
被問到冷門問題:使用 dotnet publish 發佈 ASP.NET Core 專案時有些會產生 refs 跟 runtimes 目錄有些不會,這兩個資料夾是做什麼用的? 好問題。這部分一直被我當成黑盒子,沒想過深入了解,評估屬於不知道也不會死的等級,但既然遇上了就當成天意,趁此機會搞清楚補充知...
2024-04-28 09:06 AM 1 2,749
自從發現 ASP.NET Core Minimal API,我所有用到 ASP.NET Web 的小專案(小於一個人月)清一色都是用 Minimal API 寫,省去建 Controller,另開 MVC View 的麻煩,加上 UI 走 HTML + Vue.js 輕前端,小專案往往三五個檔案寫完...
2024-04-22 10:55 PM 2 3,477
OpenAPI 已成 Web API 的業界標準,背後有強大的生態體系,豐富的文件/程式碼產生器以測試工具,這些好處過去我已有所體會。(參考:再探 WebAPI 客戶端自動產生器 - AutoRest、NSwag 與 .NET 3.5 支援問題) 而隨著我的專案大多改用 ASP.NET Core M...
2024-02-29 04:55 PM 2 2,501
ASP.NET Core 有個預設行為,開發測試階段會顯示錯誤細節,包含錯誤訊息、Stack Trace 等資訊;當部署到 IIS 後,就只會顯示告知狀態碼為 HTTP ERROR 500,以避免程式資訊外洩形成資安風險: 嚴譯的系統會設計 Log 機制補捉及記錄錯誤,提供介面查詢或是後送 ELK...
2024-01-01 11:03 AM 0 1,432
前幾個星期入手 YubiKey,花了點時間研究 WebAuthn / CTAP2 規格,從 .NET FIDO2 程式庫的 Passwordless 與 Usernameless 範例弄懂 WebAuthn 無密碼登入與 Passkey 的差異,最後我打算整理一個 ASP.NET Core 整合 P...
2023-12-30 08:20 AM 10 1,954
我的部落格這半年來不知為何被印尼的廣告留言廠商盯上,三不五時會跑來留一些印尼文垃圾留言(大多是吃角子老虎、線上賭場... 之類博弈類廣告,但有次是升學求職家教,跨度挺大),頻率一週一兩次,每次會隨機挑五六篇留言,每則間隔一兩分鐘,印尼文居多,但也看過一兩次英文版。 推測對方有花了點心思,破解掉我防...
2023-12-14 10:20 PM 2 8,239
密碼仍是當代最常用的身分識別方式,但密碼也是使用者跟系統管理的痛苦來源之一。密碼太短太簡單容易被猜中,太長太複雜記不住,忘記了要重設自己煩客服也煩;對系統管理者,密碼如燙手山芋,儲存得加鹽並慎選雜湊演算法才安全(延伸閱讀:密碼要怎麼儲存才安全?該加多少鹽?-科普角度)(當然隨便雜湊加密湊數,甚至直接...
2023-12-09 07:38 AM 4 5,017
前陣子專頁有篇貼文談到 WebAPI 出錯時,是否必須必須透過 HTTP Status 反映執行結果,例如:找不到時吐 404、系統出錯時回應 500?,得到不少回響,我也獲了新體悟。 我一直認為 WebAPI 是種 Contract,服務端與客戶端約定好,雙方都覺得 OK 就好。即便執行結果出錯,...
2023-12-04 08:57 PM 0 1,956
近年來,我日常寫 ASP.NET Core 網站的起手式都是先開 Minimal API 專案,功能不太複雜的話,單一 Program.cs 不到 200 行程式把功能寫完,用最少資源搞定,不含半點贅肉,符合我追求的極簡精神。 不過,當程式愈寫愈複雜,就得朝向前後端分離,建個 wwwroot 資料夾...
2023-11-20 10:37 PM 8 3,643
.js/.css 換版後,想防止網頁讀取 Cache 強迫改用新版,最無敵的做法是在網址加個 ?v=XXX 參數,每次換版一併更新,URL 參數不同讓原 Cache 失效,即可確保萬無一失。 但手工維護 ?v=... 參數意味著每次換版必須叫出所有引用該 .js/.css 的網頁,一一修改 URL ...
2023-11-09 11:59 PM 0 848
接獲報案,ASP.NET WebForm 站台更新 DLL 元件後出現安全錯誤,訊息如下: Security Exception Description: The application attempted to perform an operation not allowed by the se...
2023-09-12 10:55 PM 10 9,142
同事分享資安知識一則:在網頁引用 Host Header 可能形成資安弱點,給予攻擊者操作重新導向或引用惡意程式的機會。特筆記備忘。 使用 IIS + ASP.NET 示範如下: <%@Page Language="C#"%> <html> <...
2023-09-09 09:21 PM 0 1,702
雲端是當今顯學,基於保密及資安考量,許多企業還是會選擇在地端甚至網路隔離環境作業。微軟的版控解決方案 - TFS Server 的繼任者是 Azure DevOps Server,雖有 Azure 之名,但可在安裝在企業內部隔離網路環境,稱職扮演地端版控伺服器角色。 最近嘗試在 Azure DevO...
2023-09-08 10:57 PM 0 2,866
裝了最新版 VS2022,想建個 ASP.NET MVC (.NET Framework 4.X) 專案不得其門而入,輸入 ASP.NET 關鍵字,只見 ASP.NET Core 專案範本,沒看到 .NET Framework 版本:(VS2022 表示:那是啥?) 2023 年還在維護開發 .N...
2023-08-31 09:59 PM 0 509
近年來設定 IIS 站台我都改用 PowerShell 指令操作(參考:再談 IIS 與 ASP.NET 網站自動安裝設定 - 使用 PowerShell),用指令檔取代 GUI 操作,能減少人為操作失誤風險,並邁向自動化部署的理想。 最近使用 Set-WebConfigurationPropert...