中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

實現Istio13:Istio基礎認證講析

發布時間:2020-04-30 13:49:39 來源:億速云 閱讀:208 作者:三月 欄目:云計算

本文主要給大家簡單講講實現Istio13:Istio基礎認證講析,相關專業術語大家可以上網查查或者找一些相關書籍補充一下,這里就不涉獵了,我們就直奔實現Istio13:Istio基礎認證講析主題吧,希望可以給大家帶來一些實際幫助。

前言

微服務架構提供了更好的靈活性、可伸縮性以及服務復用的能力,但,微服務也有特殊的安全需求,Istio Security嘗試提供全面的安全解決方案。為了提供靈活的服務訪問控制,需要雙向 TLS 和細粒度的訪問策略。Istio 提供兩種類型的身份驗證:傳輸身份驗證和來源身份驗證。通過配置不同級別的認證策略,可以快速控制不同的安全訪問粒度。

典型的使用場景:

1.在未啟用雙向TLS的安裝好 Istio 的 Kubernetes 集群中,需要快速啟用全網格雙向TLS;

2.網格內某些服務之間需要使用雙向TLS,可以將這些服務放入同一命名空間并在命名空間啟用雙向TLS;

3.當單個服務需要啟用TLS時,可以在配置策略中通過spec字段指定;

認證策略是對服務收到的請求生效的,要在雙向 TLS 中指定客戶端認證策略,需要在DetinationRule 中設置 TLSSettings,每個認證策略需要和目的地規則共同生效。下面通過實例來演示在不同存儲范圍內配置傳輸身份認證策略的過程,來源身份驗證通過spec中的origins字段指定。

環境準備:裝好istio的集群,禁用全局雙向TLS;Httpbin應用鏡像和sleep應用鏡像

1.創建命名空間、部署應用

創建3個命名空間:foo、bar、legacy,foo和bar中部署帶sidecar的httpbin應用和sleep應用,legacy中部署不帶sidecar的httpbin應用和sleep應用。

實現Istio13:Istio基礎認證講析

實現Istio13:Istio基礎認證講析

實現Istio13:Istio基礎認證講析

將sleep作為客戶端,httpbin作為服務端,驗證客戶端服務端可達性

實現Istio13:Istio基礎認證講析

2.驗證系統中目前不存在認證策略

實現Istio13:Istio基礎認證講析

實現Istio13:Istio基礎認證講析

可以看到在foo、bar和legacy命名空間中沒有任何策略和規則

3.為網格中的所有服務啟用雙向TLS認證

配置網格認證策略:

實現Istio13:Istio基礎認證講析

配置目的地規則:

實現Istio13:Istio基礎認證講析

需要注意的是,網格范圍內的認證策略名稱必須是default,其它名稱的策略都會被拒絕和忽視,它的策略類型是MeshPolicy,不同于其它級別的策略類型

這些認證策略和目的地規則有效地配置了所有的sidecars,使服務在雙向TLS模式下收發請求。但是對不帶sidecar的服務并不適用。

實現Istio13:Istio基礎認證講析

可以看到上面有兩種連接不適用:從帶有 sidecar 的客戶端到不帶 sidecar 的服務端的連接以及從不帶 sidecar 的客戶端到帶有 sidecar 的服務端的連接。

①   為了修復從帶有 sidecar 的客戶端到不帶 sidecar 的服務端的連接,可以專門為這些服務端添加目的地規則來覆蓋 TLS 設置:

實現Istio13:Istio基礎認證講析

重新測試連接

實現Istio13:Istio基礎認證講析

當啟用全局雙向 TLS 認證時,這種方法也可以用來配置 Kubernetes 的 API 云服務器

②   從不帶 sidecar 的客戶端到帶有 sidecar 的服務端(工作在雙向 TLS 模式)的連接,唯一的選擇是從雙向 TLS 模式切換到 PERMISSIVE 模式,該模式允許服務端接收 HTTP 或(雙向) TLS 流量

實現Istio13:Istio基礎認證講析

從 sleep.legacy 到 httpbin.foo 的請求應當是成功的,但是到 httpbin.bar 的請求依然會失敗。

實現Istio13:Istio基礎認證講析

  1. 為一個命名空間中的所有服務啟用雙向TLS

可以配置策略為每一個命名空間單獨啟用雙向 TLS 而不必啟用全局雙向 TLS:
實現Istio13:Istio基礎認證講析

注意:命名空間范圍內的策略必須命名為 default,并且不限定任何特定的服務(沒有 targets 設置域)

添加相應的目的地規則:
實現Istio13:Istio基礎認證講析

測試連接:

實現Istio13:Istio基礎認證講析

由于當前配置的策略和目的地規則只對命名空間foo有效,可以看到,只有從不帶 sidecar 的客戶端 (sleep.legacy) 到 httpbin.foo 的請求會失敗。

5.為單個服務啟用雙向TLS

你也可以為某個特定的服務設置認證策略和目的地規則。執行以下命令只為 httpbin.bar 服務新增一項策略。

實現Istio13:Istio基礎認證講析

配置目的地規則:

實現Istio13:Istio基礎認證講析

  1. 同時啟用命名空間層級和服務層級

假設我們已經為命名空間 foo 中所有的服務添加了啟用雙向 TLS 的命名空間層級的策略并且觀察到從 sleep.legacy 到 httpbin.foo 的請求都失敗了(見上文)。現在專門為 httpbin 服務添加額外的策略來禁用雙向 TLS (peers 域留空):

實現Istio13:Istio基礎認證講析

實現Istio13:Istio基礎認證講析

實現Istio13:Istio基礎認證講析

可以看到服務層級的策略覆蓋了命名空間層級的策略,連接成功。

對于以上關于實現Istio13:Istio基礎認證講析,大家是不是覺得非常有幫助。如果需要了解更多內容,請繼續關注我們的行業資訊,相信你會喜歡上這些內容的。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

胶南市| 迁安市| 枣庄市| 禄丰县| 塘沽区| 岢岚县| 雅江县| 宿松县| 安塞县| 兰溪市| 富宁县| 河北区| 淮安市| 湛江市| 思南县| 彝良县| SHOW| 商都县| 霞浦县| 水城县| 三河市| 无锡市| 沙洋县| 贵定县| 岳池县| 九江县| 宁晋县| 丰宁| 丰原市| 富平县| 老河口市| 蚌埠市| 东乡族自治县| 铜山县| 丽江市| 无锡市| 罗甸县| 湟中县| 闻喜县| 太康县| 雅江县|