亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

前端必須知道的 HTTP 安全頭配置

OnlyMyRailgun / 3811人閱讀

摘要:在本文中,我將介紹常用的安全頭信息設(shè)置,并給出一個(gè)示例。響應(yīng)頭指定了該響應(yīng)的資源是否被允許與給定的共享。示例指定可以送達(dá)的域名,默認(rèn)為當(dāng)前域名不包含子域名只有在協(xié)議時(shí)才會被發(fā)送到服務(wù)端。

在本文中,我將介紹常用的安全頭信息設(shè)置,并給出一個(gè)示例。在本文的最后,我將介紹用于常見應(yīng)用程序和web服務(wù)器的安全頭信息示例設(shè)置。

Content-Security-Policy

內(nèi)容安全策略(CSP)常用來通過指定允許加載哪些資源來防止跨站點(diǎn)腳本攻擊。在接下來所介紹的所有安全頭信息中,CSP 可能是創(chuàng)建和維護(hù)花費(fèi)時(shí)間最多的而且也是最容易出問題的。在配置你的網(wǎng)站 CSP 過程中,要小心徹底地測試它,因?yàn)樽柚鼓承┵Y源有可能會破壞你的網(wǎng)站的功能。

功能

CSP 的主要目標(biāo)是減少和報(bào)告 XSS 攻擊, XSS 攻擊利用了瀏覽器對于從服務(wù)器所獲取的內(nèi)容的信任。使得惡意腳本有可能在用戶的瀏覽器中執(zhí)行,因?yàn)闉g覽器信任其內(nèi)容來源,即使有時(shí)候這些腳本并非來自該站點(diǎn)的服務(wù)器當(dāng)中。

CSP 通過指定允許瀏覽器加載和執(zhí)行那些資源,使服務(wù)器管理者有能力減少或消除 XSS 攻擊的可能性。 一個(gè) CSP 兼容的瀏覽器將會僅執(zhí)行從白名單域獲取得到的腳本文件,忽略所有其他的腳本(包括內(nèi)聯(lián)腳本)。

示例

一個(gè)最佳的 CSP 可能是下面這樣(注釋按照配置值的順序),在站點(diǎn)包含的每一部分資源請求相關(guān)都加入域名限制。

# 所有的內(nèi)容(比如: JavaScript,image,css,fonts,ajax request, frams, html5 Media等)均來自和站點(diǎn)的同一個(gè)源(不包括其子域名)
# 允許加載當(dāng)前源的圖片和特定源圖片
# 不允許 objects(比如 Flash 和 Java)
# 僅允許當(dāng)前源的腳本下載和執(zhí)行
# 僅允許當(dāng)前源的 CSS 文件下載和執(zhí)行
# 僅允許當(dāng)前源的 frames
# 限制  標(biāo)簽中的 URL 與當(dāng)前站點(diǎn)同源
# 僅允許表單提交到當(dāng)前站點(diǎn)

Content-Security-Policy: default-src "self"; img-src "self" https://img.com; object-src "none"; script-src "self"; style-src "self"; frame-ancestors "self"; base-uri "self"; form-action "self";

關(guān)于 CSP 更加詳細(xì)的介紹可以看 https://content-security-poli...

Strict-Transport-Security

Strict-Transport-Security(HSTS) 告訴瀏覽器該站點(diǎn)只能通過 HTTPS 訪問,如果使用了子域,也建議對任何該站點(diǎn)的子域強(qiáng)制執(zhí)行此操作。

功能

一個(gè)站點(diǎn)如果接受了一個(gè) HTTP 請求,然后跳轉(zhuǎn)到 HTTPS,用戶可能在開始跳轉(zhuǎn)前,通過沒有加密的方式和服務(wù)器對話。這樣就存在中間人攻擊的潛在威脅,跳轉(zhuǎn)過程可能被惡意網(wǎng)站利用來直接接觸用戶信息,而不是原來的加密信息。

網(wǎng)站通過HTTP Strict Transport Security通知瀏覽器,這個(gè)網(wǎng)站禁止使用HTTP方式加載,瀏覽器應(yīng)該自動(dòng)把所有嘗試使用HTTP的請求自動(dòng)替換為HTTPS請求。

示例
# 瀏覽器接受到這個(gè)請求后的 3600 秒內(nèi)的時(shí)間,凡是訪問這個(gè)域名下的請求都是用https請求
# 指定 includeSubDomains 此規(guī)則適用該站點(diǎn)下的所有子域名

Strict-Transport-Security: max-age=3600; includeSubDomains
X-Content-Type-Options

X-Content-Type-Options 響應(yīng)頭相當(dāng)于一個(gè)提示標(biāo)志,被服務(wù)器用戶提示瀏覽器一定要遵循 Content-Type 頭中 MIME 類型的設(shè)定,而不能對其進(jìn)行修改。

功能

它減少了瀏覽器可能“猜測”某些內(nèi)容不正確的意外應(yīng)用程序行為,例如當(dāng)開發(fā)人員將一個(gè)頁面標(biāo)記為“HTML”,但瀏覽器認(rèn)為它看起來像JavaScript并試圖將其呈現(xiàn)為JavaScript時(shí)。這個(gè)頭將確保瀏覽器始終按照服務(wù)器設(shè)置的MIME類型來解析。

示例
X-Content-Type-Options: nosniff
Cache-Control

Cache-Control 通用消息頭字段,被用于在 http 請求和響應(yīng)中,通過指定指令來實(shí)現(xiàn)緩存機(jī)制。緩存指令是單向的,這意味著在請求中設(shè)置的指令,不一定被包含在響應(yīng)中。

功能

這一個(gè)比其他的稍微復(fù)雜一些,因?yàn)槟憧赡苄枰槍Σ煌膬?nèi)容類型使用不同的緩存策略。

任何包含有敏感信息的網(wǎng)頁,例如用戶個(gè)人信息頁面或客戶結(jié)帳頁面,都應(yīng)該設(shè)置為 no-cache。原因是防止共享計(jì)算機(jī)上的某人按下后退按鈕或?yàn)g覽歷史并查看個(gè)人信息。

示例
Cache-Control: no-cache
X-Frame-Options

X-Frame-Options 響應(yīng)頭是用來給瀏覽器指示允許一個(gè)頁面可否在 ,