「資安 ISSUE
」,此語一出,誰與爭鋒?約莫 15 年前,跟前輩在閒聊,說客戶那邊丟了一句「資安 ISSUE」,所以這個元件不准用、那個 SDK 不准裝,結果東西做好了,案子結不了案。時間回到今天,資安那邊丟了一個訊息:
appsettings.Development.json 裡面的 Server=(localdb)\MSSQLLocalDB;Database=dev;Integrated Security=true 這個連線字串有資安疑慮,請修正。
「資安 ISSUE
」,此語一出,誰與爭鋒?約莫 15 年前,跟前輩在閒聊,說客戶那邊丟了一句「資安 ISSUE」,所以這個元件不准用、那個 SDK 不准裝,結果東西做好了,案子結不了案。時間回到今天,資安那邊丟了一個訊息:
appsettings.Development.json 裡面的 Server=(localdb)\MSSQLLocalDB;Database=dev;Integrated Security=true 這個連線字串有資安疑慮,請修正。
如果資料庫都隸屬於同一台伺服器,資料庫之間要 JOIN 彼此的資料表是相對容易的,在有權限的前提下,只要在資料表的前面加上「[資料庫名稱].[結構描述]
」,就能存取得到其他資料庫的資料表,就像這樣:[DB].[dbo].[Table]
。
但是在 Entity Framework Core 中,似乎沒有那麼容易,通常一個資料庫會建成一個 DbContext,當我們直接把隸屬於不同 DbContext 的 DbSet 拿來做 Join,我們得到以下的錯誤訊息:
Cannot use multiple context instances within a single query execution. Ensure the query uses a single context instance.
微軟有一個 System.Net.Mail.SmtpClient 類別,被建議說不要在新開發的應用程式中使用,並且給了非常明確的指示「請改用 MailKit
」,MailKit 是建構在 MimeKit 上面的一個跨平台郵件發送套件,既然微軟爸爸都這麼說了,我們直接上手。
根據外部傳入參數,動態組裝資料庫查詢條件,這是一個很常見的需求,多數的程式設計師應該都有實作過,這天我在使用 Entity Framework Core 做動態條件組裝的時候,「OR
」條件讓我卡了一下。
這是一個冷門的問題,我不知道有多少程式設計師會用螢幕校色器來校準螢幕的顏色,我自己長期使用多個螢幕工作,不同螢幕的色差,終於讓我在某一天忍不住買了 Datacolor Spyder5PRO,它現在是已經停產了,雖然使用頻率不高,不過它讓我們從 Windows 7 用到了 Windows 11,現在還在用,一台才五千多塊,夠本了。
最近換了新的電腦,新電腦的螢幕在從節電模式喚醒的時候,校準設定會跑掉,即使用原廠的常駐程式 SpyderUtility
重新載入校準也會失敗,幸好有找到解決方法。
有考量到資訊安全的程式設計專案,通常都會要求機敏資訊,例如:連線字串、API 金鑰等等,不得直接簽入版控當中,等到應用程式要部署的時候,另外在正式環境中進行設定,這篇文章就來介紹如何在 IIS 上透過環境變數來覆寫 ASP.NET Core 網頁應用程式的組態設定。
講到要讓我們正在開發的網頁應用程式,臨時生一個網址來對外服務,就不能不提到 ngrok 這個服務,而且它有免費版,但是免費版斷線重連會重新產生新的網址,即使付 $10 鎂/月(年繳 $8 鎂/月),也只能固定一組網址。
如果不嫌免費版 ngrok 一直換網址麻煩,那 ngrok 就能滿足我們,但如果想要有固定的網址,可是一個月 $10 鎂又付不太下去,那麼 Cloudflare Tunnel 是可以考慮的服務。
在雲端上取用資源是非常方便,動動手指我們就能輕輕鬆鬆拿到我們想要的軟硬體資源,不過,相對的,當我們拿到資源的那一刻就開始算錢,以虛擬機器為例,即使在大半夜沒人用,只要開著,錢就一直在算,這篇文章就來記錄 Azure 虛擬機器(VM)如何設定自動關機與自動開機。
30天挑戰精通 PowerShell【第四版】是 PowerShell 經典書籍 Learn PowerShell in a Month of Lunches
的第四版,這一版對比上一版最大的差別在於它不再僅限於 Windows 平台,增加了 Linux、macOS 的內容。
要部署應用程式到 Azure App Service 的方式有好幾種,其中我認為最簡單直接的就是把應用程式打包成 Zip 檔案後上傳,讓 Kudu 服務來幫忙處理我們上傳的 Zip 檔案,而且自從 curl 在 Windows 10 version 1803 內建之後,就讓這件事變得更容易了。