1. 程式人生 > >keystone認證原理

keystone認證原理

一 認證原理圖二 UUID認證的原理當用戶拿著有效的使用者名稱和密碼去keystone認證後,keystone就會返回給他一個token,這個token就是一個uuid。以後使用者進行其他操作時,都必須出示這個token。例如當nova接到一個請求後,就會用這個token去向keystone進行請求驗證,keystone通過比對token,以及檢查token的有效期,來判斷token是否合法,然後返回給nova這一個請求是否合法。這一方式十分簡單,但是在大業務量的情況下,keystone將會成為效能瓶頸。三 UUID認證的流程圖四 PKI認證的原理在keystone初始化時,keystone生成了CA的公鑰CA.pem和私鑰CA.key。同時,產生了自己的公鑰keystone.pub和私鑰keystone.key, 然後將keystone.pub進行了CA的簽名,生成了keystone.pem。當用戶拿著有效的使用者名稱和密碼去keystone認證後,keystone就將使用者的基本資訊通過keystone.key進行了加密,將這一密文作為token返回給使用者。當用戶發出一個請求,例如nova拿到token後,首先需要拿到keystone的證書keystone.pem(這一過程只需要進行一次),然後通過keystone.pem來解密,獲得使用者資訊,就可以知道使用者是否合法。對於使用者的token,還需要對token的合法時間,以及token是否還存在進行判斷。所以當nova每一次拿到token後還要向keystone詢問一次token的失效列表,來檢視token是否失效。當然這一過程對於keystone負載還是相對輕的,所以PKI還是有效解決了keystone成為效能瓶頸的問題。五 PKI認證流程圖