Timothy Coding Ground

沒貓在手, 寫code會抖
有貓可吸, 全家開心

0%

前言

OWASP是一個線上社群、非營利組織,全名為開放軟體安全計畫Open Web Application Security Project,在全世界有許多分會,這個組織主要目標是研究及討論網路軟體安全的標準、工具、文件。

這個組織同時會進行許多計畫,不過我們今天要討論的是他發佈的「十大網路弱點防護守則」,這個守則也被許多組織列為必要文件。

在2017年有一版,可以看這個參考資料; 而在2021年時做了更新,來看一下最新版的Top 10提到了什麼?

Read more »

前言

今天的資訊安全主題是(content security policy, CSP),也是一種藉由擴充Header的約定,來達成網站安全的目的。

我們會先從同源政策same-origin policy說起,接著提到惡意攻擊者如何成功突破這項限制,並說明常見的漏洞攻擊。

然後我們就會談到什麼是CSP,包括他如何偵測及防範攻擊,以及如何使用的內容。

那就開始吧~

Read more »

前言

之前曾經談過關於Internet Protocol Suite(IPS),提到過Web中的各個網站就是HTTP的應用,又提到過IPS可以以四層來理解:

  1. 應用(application): HTTP
  2. 傳輸(transport): TCP
  3. 網路互連(internet): IP
  4. 網路存取(Network Access (link))。

但我們都曾經在瀏覽器上的網址欄看到https開頭的網址
圖 12

這樣,https又是什麼呢?

那就來了解一下吧

Read more »

前言

現代Web最影響使用者是否使用服務的其中一項重大因素來自於服務響應使用者互動的速度。

白話的意思就是說點開網站內的內容有多快,就有多影響使用者體驗。

影響服務響應的原因可能很多,但大檔案或是常用的資料不斷重複的在服務之間流通絕對是影響速度的其中一大原因,因此為了解決這樣的服務瓶頸,出現了一個概念: Cache(緩存/快取)。

這也是今天要介紹的部分,那就開始吧~

Read more »

前言

前面不管是在提到HTTP這個應用協定或是REST的風格,都有提到無狀態(stateless)這個特性。

這個特性其中一個目的是希望可以將每次的request都隔離,讓各request不用依賴其他的請求,僅依靠自己單個請求身上所帶的資料完成目的。

但我們回想類似FB, Google,有許多服務的商業模式都是以「會員制」作為基礎,那我們該如何在維持無狀態的特性下,實現這樣的會員制,讓伺服器「認得」請求呢?

今天就會談到這個部分: 「驗證Authenticate」。

Read more »

前言

在網路開發中,最常見的就是以HTTP協定與其他端點溝通,但各自使用不同的內容及結構可能會造成困擾。
比如不同的服務都需要閱讀各自的文件並適應不同的格式,於是為了解決這個問題,出現了諸如SOAP, REST, gRPC, graphQL等用來規範彼此如何規範的技術。

雖然聽起來有點複雜,但大致來說,他們想解決的事情就是:

如何訪問 Web 服務

今天會對不同的架構各自有些介紹,那就開始吧~

Read more »

前言

有個好故事可以回答什麼是N+1 problems:

假如有一天你拿到一份食譜,希望製作蘋果派,你待在廚房裡,食材都在儲藏室,你需要去拿:

  1. 你需要蘋果,於是你去了一趟儲藏室。
  2. 你需要糖,於是你是去了一趟儲藏室。
  3. 你需要麵粉,於是你去了一趟儲藏室,然後你發現今天已經快過完了XD
Read more »

前言

在真實的網路行為上,一個只是點擊的動作常常會牽動對於多個數據的動作,這樣一系列動作的組成被稱為Transaction,中文有人說事務,也有人稱呼他為交易。
而ACID則是確保Transaction能正確可靠的四個特性。

後面會來稍微了解這個部分~

Read more »

前言

談到NoSQL時常有兩種說法,一種說不是SQL,一種說不僅僅是SQL,但總之,這一類的資料庫相對於SQL,不再採用昨天所說的關係表。

關聯式資料庫最大的特色是可以減少冗餘,除了減少儲存成本,在資料更新上也會佔到優勢。
不過在儲存成本大幅降低的時候開始,開始出現了已管理而非最少資料為導向的NoSQL DB。

除此之外,資料與資料間具有關係的關聯式資料庫在分散式系統設計上的困難也讓NoSQL冒出頭來。

雖然我所在的工作使用的是mongoDB,但今天也會稍稍看一下其他不同種類的DB,拓展一點視野,那就開始吧~

Read more »