jenkins 全局安全設置

說明:如下內容引用自博文:http://blog.csdn.net/jmyue/article/details/9763021 html

http://www.lai18.com/content/2417621.html 這兩篇博文對jenkins 全局安全設置都有很詳細的介紹。數據庫



   在默認配置下,jenkins是沒有安全檢查的。任何人均可以以匿名用戶身份進入jenkins,設置Jenkins和Job,執行build操做。可是,Jenkins在大多數應用中,尤爲是暴露在互聯網的應用中,安全控制是很是重要的。安全控制主要解決兩個問題:哪些用戶能夠進入Jenkins; 進入Jenkins的用戶能夠作些什麼事。如何進入安全設置界面:瀏覽器


一、在Jenkins的主界面,點擊"系統管理"----> configure Global Security 選項安全

wKioL1dhLO7DHtJmAAEb6rBOKgM983.png-wh_50


二、進入Jenkins的系統安全設置界面。安全界面以下圖。接下來將分別介紹各個選項的功能。服務器

wKiom1dhMIWDJ9jQAACOp2pW2j8457.png-wh_50


啓用安全ide

       啓用安全,若是啓動此項,你必須使用「用戶名/密碼」登陸才能配置和執行構建。若是Jenkins在內網環境(或者是一個"可信任"的環境),一般會禁用此項,以便項目開發人員可以配置他們本身的項目,而不用麻煩管理員 ; 若是Jenkins暴露在公網環境,你最好啓用此項,Jenkins若是在一個不安全的環境下可能會遭到***的***. 
網站


JNLP節點代理的TCP端口ui

  Jenkins使用一個TCP端口和JNLP節點代理通信. 一般這個端口號是隨機選取的,以免衝突,可是這對於系統來講是不固定的.若是不使用JNLP節點代理, 推薦禁用TCP端口.另外一種選擇就是指定一個不變的端口號,以便防火牆作對應的設置. 這裏若是沒有出現問題,建議不要更改,直接默認隨機選取就能夠了。spa


Disable remember me.net

      選擇此選項將刪除「記住我在這臺計算機上的登陸」複選框。每次輸入用戶名密碼都必須手動輸入,而不能讓瀏覽器記住用戶名和密碼。



訪問控制

   接下來就是最重要的訪問控制了。這裏的設置可給Jenkins的用戶設置權限,使某些用戶沒法使用某些功能,或者直接沒法登陸系統。


訪問控制有兩個子選項:

一、安全域 :決定用戶名和密碼,且指定用戶所屬的組。

二、受權策略:分配用戶執行某些操做的權限。


Jenkins專用用戶數據庫:Jenkins自己有個數據庫來管理用戶,不過這個數據庫的容量比較小,當有大量用戶時,這種策略就不合適。在這種策略下,若是容許任何人經過註冊Jenkins的形式,能夠勾」容許用戶註冊「。這樣非用戶在進入Jenkins界面後,能夠經過 點擊右上角的「註冊」按鈕進行註冊,而後再登陸使用Jenkins。  若是不容許他人隨便註冊和使用該Jenkins,就要取消「容許用戶註冊」複選框。此時若是想添加新的用戶,只能由已註冊用戶(或管理員)經過"系統管理"—>管理用戶 —>新建用戶進入 「Jenkins專有用戶數據庫」界面,經過點擊」建立新用戶「來註冊新的用戶。


LDAP:不少組織用LDAP目錄來管理用戶,Jenkins也支持這種安全策略,不過須要進行一些參數的配置,配置方法能夠參考LDAP Plugin Wiki(https://wiki.jenkins-ci.org/display/JENKINS/LDAP+Plugin) 。若是沒有特殊要求,大部分的高級設置均可以空着。


servlet 容器代理:若是你的Jenkins 運行在像Tomcat或GlassFish 等服務器上,這些服務器自己就有安裝控制,選擇這種安全策略,就能夠很是管理地讓服務器接管Jenkins的安全缺控制問題。



受權策略


任何用戶能夠作任何事(沒有任何限制)這種是最簡單,同時也是最不安全的受權策略,它不執行任何受權,任何人都能徹底控制Jenkins,這包括沒有登陸的匿名用戶。(這種狀況對於可信任的環境(好比公司內網)很是有用,或者你只是使用受權作一些個性化的支持,這樣的話,若是某人想快速的更改Jenkins,他就可以避免被強制登陸)


安全矩陣在這種受權模型中,你能夠經過一個大的表格來配置什麼用戶能夠作什麼事.(每一列表明一個權限,把鼠標移動到權限名稱上能夠查看更詳細的權限說明信息)

每一行表明一個用戶或組(一般稱爲'角色',取決於安全域)這其中包含特殊用戶‘anonymous’,其表明未登陸 用戶,一樣還有‘authenticated’,其表明全部已認證的用戶(也就是除了匿名用戶的全部用戶)可使用表格下方的輸入框來添加 新的用戶/組/角色到表格中,而且能夠點擊[x] l 圖標將其從表格中刪除。


登陸用戶能夠作任何事這種受權模式下,每一個登陸用戶都持有對Jenkins的所有控制權限.只有匿名用戶沒有所有控制權,匿名用戶只有查看權限. 

這種受權模式的好處是強制用戶登陸後才能執行操做,這樣你能夠隨時記錄誰都作了什麼操做.這種設置也適用於公共使用的Jenkins,只有你信任的人才擁有帳戶.


遺留模式適用於Jenkins1.164之前的版本.也就是說,若是你是"admin"角色,那麼你將擁有Jenkins的一切控制權,其它角色(包括匿名用戶) 只有查看權限. 


項目矩陣受權策略這個受權模型擴展自「安全矩陣」,容許把下面的ACL(訪問控制列表)矩陣附加到每一個項目定義中(在Job 配置頁面)

這容許你宣佈相似這樣的聲明"john可以訪問A,B和C,可是不能訪問D."



Markup Formatter

  選擇job description寫的html代碼是顯示代碼仍是顯示html源碼。選擇raw HTML的時候,顯示的是本身寫的源代碼。選擇escaped HTML的時候,顯示的是html的源碼。


防止跨站點請求僞造

  跨站點請求僞造(或CSRF/XSRF),它是一種利用你的身份經過未經受權的第三方手段在網站上執行操做.對於Jenkins進行刪除任務,構建或者更改配置. 當啓用此項,Jenkins會檢查臨時生成的值,以及任何致使Jenkins服務器改變的請求.這包括任何形式的提交和遠程API調用. 


Enable Slave → Master Access Control

  容許子節點控制父節點,具體有哪些權限能夠被子節點控制。能夠在一個經過點擊rules can be tweaked here 這句話中的here來設置。

相關文章
相關標籤/搜索