日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

(原创)OpenStack服务如何使用Keystone(三)---详细配置Keystone中间件

發(fā)布時(shí)間:2025/3/19 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 (原创)OpenStack服务如何使用Keystone(三)---详细配置Keystone中间件 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

  

  (一)Keystone端的操作

  (二)如何在OpenStack服務(wù)上部署Keystone中間件

  (三)詳細(xì)配置keystonemiddleware

?

  前文我們介紹了如何部署Keystone中間件以及中間件的配置點(diǎn). 這里給出所有Keystone中間件的配置項(xiàng). 概括起來, Keystone中間件的配置項(xiàng)具有以下特點(diǎn),

  1. 以 "auth_" 開頭的配置項(xiàng)需要指向Keystone的Admin服務(wù), Keystone中間件使用這些配置信息從Keystone服務(wù)處獲取令牌的有效信息.

  2. 提供管理員身份憑證(admin_user, admin_tenant_name, admin_password)的目的是獲取一個(gè)具有管理權(quán)限的令牌, 該令牌用于給普通用戶的令牌授權(quán).

  3. "cache" 的值可以設(shè)置為swift.cache, 也可以不設(shè)置. 表示中間件緩存令牌的位置, 既可以是Swift的memcache, 也可以是與其他服務(wù)統(tǒng)一的基于memcached的緩存池. 下文將會(huì)詳細(xì)介紹該配置項(xiàng).

  4. "include_service_catalog" 缺省為True, 意味著在驗(yàn)證普通用戶令牌的時(shí)候, 中間件會(huì)從Keystone那里取回服務(wù)目錄并存儲(chǔ)在HTTP頭的"X-Service-Catalog"字段. Swift并不適用"X-Service-Catalog"字段, 因此Swift的"include_service_catalog"推薦設(shè)置為False.

  5. 若使用Keystone的第三版身份API, 需要將配置項(xiàng)"auth_version"設(shè)置為 "v3.0".

?

一. 與Keystone服務(wù)相關(guān)的配置

identity_uri

  完整的Keystone管理API端點(diǎn), 這里不應(yīng)該在路徑中指明身份API版本(如http://localhost:35357/).?該選項(xiàng)給keystone中間件一個(gè)keystone服務(wù)端的終端,keystone中間件在向該終端認(rèn)證后才可以執(zhí)行驗(yàn)證用戶令牌、獲取令牌撤銷列表等API。

?auth_uri

  完整的Keystone公共API端點(diǎn)(如 http://localhost:5000/). 配置該選項(xiàng)的目的是一旦用戶的請求中沒有攜帶令牌或者攜帶的令牌已經(jīng)失效,那么將這個(gè)地址通過HTTP響應(yīng)頭“www-Authenticate”返回給用戶,告訴他這里可以獲取一個(gè)新的令牌。

admin_user,?admin_password,?admin_tenant_name   如果沒有提供"admin_token", 那么這三個(gè)選項(xiàng)應(yīng)是已經(jīng)在Keystone中配置好的服務(wù)賬戶.? auth_version   要使用的Keystone管理API版本. delay_auth_decision   (默認(rèn)False). 如果是True, 中間將將不會(huì)拒絕無效的認(rèn)證請求,而是將決策的權(quán)利委托給下游的WSGI組件. http_connect_timeout (默認(rèn)None). 向Keystone服務(wù)端請求的超時(shí)秒數(shù). http_request_max_retries   (默認(rèn)3). 向Keystone服務(wù)端請求的最大重試次數(shù). certfile keystone中間件的公鑰證書。如果Keystone服務(wù)端要求客戶端提供證書,那么該項(xiàng)必須設(shè)置. keyfile   keystone中間件的私鑰,用于簽名。如果Keystone服務(wù)端要求客戶端提供證書, 那么該項(xiàng)必須設(shè)置. cafile

  (默認(rèn)None). 給keystone中間件公鑰證書簽名的CA證書。用來驗(yàn)證https連接的PEM編碼的CA 文件路徑.

insecure

  (默認(rèn)False). 是否驗(yàn)證https連接. True代表允許不安全的連接; False代表不允許不安全的連接。

signing_dir

儲(chǔ)存與PKI令牌相關(guān)文件的目錄. 用來存放keystone的公鑰證書、CA證書和從keystone那里獲取的令牌撤銷列表。 include_service_catalog (可選, 默認(rèn)True). 指示是否設(shè)置 "X-Service-Catalog" 字段. 如果為False, 中間件在驗(yàn)證令牌的過程中將不獲取服務(wù)目錄, 也不會(huì)設(shè)置 "X-Service-Catalog" 字段. enforce_token_bind (默認(rèn)?permissive). 用來控制令牌綁定的使用和類型. 設(shè)置為 "disabled" ?將不會(huì)檢查令牌綁定, 設(shè)為"permissive" 將會(huì)驗(yàn)證系統(tǒng)已知的綁定類型,忽略那些系統(tǒng)中沒有定義的綁定類型; 設(shè)為 "strict" 驗(yàn)證系統(tǒng)已知的綁定類型, 拒絕系統(tǒng)未知類型的令牌綁定; 設(shè)為 "required" 允許任何類型的令牌綁定. 最后, 令牌綁定的方法必須出現(xiàn)在令牌中.

二. 與memcached服務(wù)端相關(guān)的配置

memcached_servers (舊名: memcache_servers). 如果設(shè)置, 指定用于緩存令牌的 memcached?server(s); 如果沒有設(shè)置, 中間件會(huì)將令牌緩存在進(jìn)程中(cached in-process).   cache (默認(rèn)None). Swift緩存的環(huán)境鍵, 可以設(shè)置成 "swift.cache", 表示在Swift中使用其自帶的緩存機(jī)制. memcache_security_strategy (可選, 默認(rèn)None). 如果設(shè)置, 指示令牌數(shù)據(jù)是否需要認(rèn)證或認(rèn)證加密。可接受的值包括MAC、ENCRYPT和空值(或None). MAC選項(xiàng)將會(huì)在緩存中采用HMAC算法認(rèn)證令牌, ENCRYPT選項(xiàng)將會(huì)在緩存中加密和認(rèn)證. 任何不是這兩個(gè)值或空值中的一個(gè), 那么中間件將會(huì)在初始化階段報(bào)錯(cuò). memcache_secret_key

  (如果設(shè)置了"memcache_security_strategy", 則必須設(shè)置該選項(xiàng)). 該選項(xiàng)用來導(dǎo)出存儲(chǔ)令牌的鍵

memcache_pool_dead_retry

  (可選, 默認(rèn)5*60). ?重試memcached服務(wù)端前等待的秒數(shù).

memcache_pool_maxsize

  (可選, 默認(rèn)10). 每個(gè)memcached服務(wù)端最大開放連接數(shù).

memcache_pool_socket_timeout

(可選). 套接字連接memcache服務(wù)端的超時(shí)上限(秒). memcache_pool_unused_timeout (可選). 不使用的memcached連接多久會(huì)被關(guān)閉(秒). memcache_pool_conn_get_timeout (可選, 默認(rèn)10). 從連接池中獲得一個(gè)memcache客戶端連接的超時(shí)上限(秒). memcache_use_advanced_pool   (可選, 默認(rèn)False). 是否采用高級(jí)(eventlet安全的)memcache客戶池, 當(dāng)前該高級(jí)連接池僅適用于Python 2.x.  token_cache_time (默認(rèn)300). 令牌緩存時(shí)間(秒). 為了避免過度請求和驗(yàn)證, 中間件會(huì)緩存每一個(gè)自己見到額令牌. 該選項(xiàng)僅在設(shè)置了 "memcached_servers" 選項(xiàng)后才生效,設(shè)為-1將會(huì)完全關(guān)閉緩存. hash_algorithms (默認(rèn)md5). ?中間件存儲(chǔ)PKI令牌時(shí)用來哈希PKI令牌的算法. 可以設(shè)為一個(gè)或多個(gè)值, 只要是Python的hashlib.new()方法支持的算法即可. 中間件會(huì)按照該選項(xiàng)給出的順序?qū)KI令牌進(jìn)行哈希, 所以將偏好的算法靠前設(shè)置. 當(dāng)從一個(gè)較不安全的哈希算法向一個(gè)較安全的哈希算法過渡時(shí), 該選選項(xiàng)通常設(shè)置為多個(gè)值, 一旦所有舊令牌都過期, 該項(xiàng)應(yīng)該被設(shè)置成單一的值從而提升性能. check_revocations_for_cached   (默認(rèn)False). 是否檢查已緩存令牌是否被撤銷. 如果設(shè)為True, 則會(huì)檢查已被緩存令牌的撤銷列表, 要求Keystone服務(wù)端使用的是PKI令牌. revocation_cache_time   (默認(rèn)10).?多少秒從Keystone服務(wù)端獲取一次令牌撤銷列表,撤銷行為發(fā)生得越頻繁, 撤銷列表緩存的時(shí)間越短, 那么性能越差.

轉(zhuǎn)載于:https://www.cnblogs.com/Security-Darren/p/4140708.html

與50位技術(shù)專家面對面20年技術(shù)見證,附贈(zèng)技術(shù)全景圖

總結(jié)

以上是生活随笔為你收集整理的(原创)OpenStack服务如何使用Keystone(三)---详细配置Keystone中间件的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。