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

溫馨提示×

溫馨提示×

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

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

kubernetes中安全機制API Server認證之Service Account Token的示例分析

發布時間:2021-12-24 16:03:44 來源:億速云 閱讀:530 作者:小新 欄目:大數據

這篇文章主要介紹了kubernetes中安全機制API Server認證之Service Account Token的示例分析,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

一:前言
Kubernetes有User Account和Service Account兩套獨立的賬號系統。
1.User Account是給人用的,Service Account 是給Pod 里的進程使用的,面向的對象不同。
2.User Account是全局性的,Service Account 是屬于某個具體的Namespace
3.User Account是與后端的用戶數據庫同步的。

二:Kubernetes API Server簡介

Kubernetes API Server通過一個名為kube-apiserver的進程提供服務,該進程運行在Master節點上。在默認情況下,kube-apiserver進程在本機的8080端口(--insecure-port)提供REST服務。我們可以同時啟動HTTPS安全端口(--secure=6443)來啟動安全機制,加強REST API訪問的安全性。

通常我們使用kubectl來與Kubernetes API Server交互,它們之間的接口是REST調用。也可以使用curl命令行工具進行快速驗證。


kubernetes中安全機制API Server認證之Service Account Token的示例分析

另外是通過編程的方式調用Kubernetes API Server 具體又細分為以下兩種場景:

1.     運行在POD里的進程調用Server API. Pod中的進程如何指定API Server的訪問地址呢?答案很簡單,因為Kubernetes API Server本身也是一個Service,它的名字是“kubernetes”,IP地址是ClusterIP地址池里面的第一個地址。服務端口是HTTPS端口443.

kubernetes中安全機制API Server認證之Service Account Token的示例分析

2.       開發基于Kubernetes的管理平臺,比如調用Kubernetes API來完成Pod,Service,RC等資源對象的圖形化創建和管理界面。可采用社區中相關的Client Library.

正常情況下,為了確保Kubernetes集群的安全,API Server都會對客戶端進行身份認證,認證失敗則無法調用API。此外,Pod中訪問Kubernetes API Server服務的時候,是以Service方式訪問服務名為kubernetes的這個服務,而kubernetes服務又只在HTTPS 443上提供服務,那么如何進行身份認證呢? 答案是 Service Account Token.


三: Service  Account

公鑰證書,用于Pod中的Process對API Server的服務端數字證書進行校驗時使用的),namespace和token被放到了容器內,這樣容器就可以通過https的請求訪問apiserver了。

四:

API Server的service account驗證過程

以kube-system namespace下的“default” service account為例,Pod的usrname全稱為:system:serviceaccount:kube-system:default。有了username,那么credentials呢?就是上面提到的service-account-token中的token。API Server的驗證環節支持多種身份校驗方式:CA 證書認證、Token 認證、Base 認證。一旦API Server發現client發起的request使用的是service account token的方式,API Server就會自動采用signed bearer token方式進行身份校驗。而request就會使用攜帶的service account token參與驗證。該token是API Server在創建service account時用API server啟動參數:–service-account-key-file的值簽署(sign)生成的。如果–service-account-key-file未傳入任何值,那么將默認使用–tls-private-key-file的值,即API Server的私鑰。

kubernetes中安全機制API Server認證之Service Account Token的示例分析

五:

Secret

Kubernetes提供了Secret來處理敏感信息,目前Secret的類型有3種: 

1.Opaque(default): 任意字符串 
2.kubernetes.io/service-account-token: 作用于ServiceAccount,就是上面說的。 
3.kubernetes.io/dockercfg: 作用于Docker registry,用戶下載docker鏡像認證使用。

每個Namespace下有一個名為default的默認的Service Account對象,這個Service Account里面有一個名為Tokens的可以當作Volume一樣被Mount到Podcast里的Secret,當Pod 啟動時,這個Secret會自動被Mount到Pod的指定目錄下,用來協助完成Pod中的進程訪問API Server時的身份鑒權過程。

感謝你能夠認真閱讀完這篇文章,希望小編分享的“kubernetes中安全機制API Server認證之Service Account Token的示例分析”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!

向AI問一下細節

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

AI

白朗县| 陆良县| 双辽市| 灵台县| 肥西县| 六枝特区| 安塞县| 汉阴县| 麻栗坡县| 简阳市| 武功县| 孝昌县| 台山市| 吉安市| 印江| 冕宁县| 深州市| 皮山县| 布拖县| 潞城市| 顺昌县| 万盛区| 朝阳区| 望江县| 章丘市| 银川市| 永丰县| 连云港市| 达州市| 遵义县| 南充市| 六枝特区| 洱源县| 石首市| 桓台县| 武川县| 长泰县| 黎城县| 当阳市| 曲沃县| 类乌齐县|