Jenkins güvenlik ayarlarını komut satırından nasıl sıfırlayabilirim?


217

Kendimi tamamen kilitlemeyi başardığım için komut satırından kullanıcı / parola olmadan tümünü sıfırlamanın (veya yalnızca güvenlik ayarlarını devre dışı bırakmanın) bir yolu var mı Jenkins?

Yanıtlar:


275

En basit çözüm tamamen devre dışı bırakmak güvenliğe olduğu - değişiklik trueiçin falsede /var/lib/jenkins/config.xmldosyaya.

<useSecurity>true</useSecurity>

Sonra Jenkins'i yeniden başlatın.

sudo service jenkins restart

Ardından yönetici paneline gidin ve her şeyi bir kez daha ayarlayın.

Jenkins'inizi bir docker'dan k8s bölmesinin içinde çalıştırıyorsanız, bu benim durumumdur ve servicekomutu çalıştıramazsanız , bölmeyi silerek Jenkins'i yeniden başlatabilirsiniz:

kubectl delete pod <jenkins-pod-name>

Komut verildikten sonra, k8'ler eski bölmeyi sonlandıracak ve yeni bir tane başlatacaktır.


3
Değişikliğin uygulanabilmesi için Jenkins'i yeniden başlatmam gerekiyordu.
Veya Arbel

12
sudo service jenkins restart
MonoThreaded

10
Bulamayanlar için config.xml find / -name "config.xml" terminalinizde kullanır.
Lazer Şahin

Kullanıcı Güvenlik etiketini jenking komutunu komut isteminden yeniden başlatmak için false olarak değiştirdikten sonra --- stackoverflow.com/questions/14869311/…
Anurag_BEHS

1
Ayrıca dosya ~ / .jenkins / klasör altında bulunabilir
Andrii Abramov

181

Bir diğer yol elle düzenlemek için kullanıcı için yapılandırma dosyası (örneğin /var/lib/jenkins/users/username/config.xml) ve içeriğini günceller passwordHash :

<passwordHash>#jbcrypt:$2a$10$razd3L1aXndFfBNHO95aj.IVrFydsxkcQCcLmujmFQzll3hcUrY7S</passwordHash>

Bunu yaptıktan sonra Jenkins'i yeniden başlatın ve şu şifreyi kullanarak giriş yapın:

test

1
bu giriş orada değilse - gerçekte nereye konmalı?
serup

2
<passwordHash>xml etiketi bir çocuktur <hudson.security.HudsonPrivateSecurityRealm_-Details>. Toplam XML yapısı hakkında fikir edinmek için varsayılan yönetici kullanıcısına bakın.
ivandov

2
Bu, kurulumu güvenli tutan iyi bir çözümdür. Meraktan, bu şifre karmasını nasıl üretir?
kontextify

Teşekkür ederim, tam da ihtiyacım olan şey bu!
Matt Cavanagh

C: \ Users \ <USER> \ .jenkins \ users \ admin konumunda bulunan dosyanın içeriğini değiştirmek sorunun çözülmesine yardımcı oldu
Sakshi Singla

45

Söz konusu dosyayı / var / lib / jenkins içinde bulunan config.xml adlı dosyayı buldum, sorunu düzelttim.


1
El-Capitan kullanıyorum ve config.xml konumunda bulunamadı
Durai Amuthan.H

@ DuraiAmuthan.H Bitnami yığını ile kurdunuz mu? Yapılandırma dosyası/Applications/jenkins-2.19.3-0/apps/jenkins/jenkins_home/users/admin/config.xml
siegy22

@ryanzec, Nowakers yanıtı aynı dosyayı kullanıyor ancak daha iyi açıklandı, doğru cevap olarak kabul etmeyi düşünmelisiniz.
Katu

dosyayı yüksekliği
sierra'de bulacağız

44

İçindeki <passwordHash>öğe users/<username>/config.xmlbiçim verilerini kabul edecek

salt:sha256("password{salt}")

Yani, tuzunuz barve şifreniz ise fooSHA256'yı şu şekilde üretebilirsiniz:

echo -n 'foo{bar}' | sha256sum

7f128793bc057556756f4195fb72cdc5bd8c5a74dee655a6bfb59b4a4c4f4349Sonuç olarak almalısın . Karma alın ve tuz ile içine koyun <passwordHash>:

<passwordHash>bar:7f128793bc057556756f4195fb72cdc5bd8c5a74dee655a6bfb59b4a4c4f4349</passwordHash>

Jenkins'i yeniden başlatın, ardından şifre ile giriş yapmayı deneyin foo. Ardından şifrenizi başka bir şeye sıfırlayın. (Jenkins varsayılan olarak bcrypt kullanır ve bir tur SHA256 parolaları saklamanın güvenli bir yolu değildir. Parolanızı sıfırladığınızda bcrypt karması depolanır.)


1
Bu işe yaramıyor gibi görünüyor. bir örnek #jbscrypt tuzuyla başlar ve sonra şifreleme alanlarını $ 2a $ 10 $ olarak tanımlar. Bunlar ne anlama geliyor?
jrwren

Cevabım benim için çalıştı. Gördüğünüz ek alanlar farklı bir karma biçimi içindir. Jenkins karma şifreleri işlemek için kullandığı kütüphane birden fazla biçimi destekler. Bahsettiğiniz jbcrypt formatı bir tuzla sha256'dan daha güvenlidir, ancak sha256 + tuz formatı komut satırından kolayca üretilebilir --- egzersizin amacının Jenkins'e geri dönmek olduğunu hatırlayın ve sonra Jenkins'in web arayüzünden şifreyi değiştirin.
uckelman

Bu benim için de işe yaramadı. Ben Bcrypt bölümünde daha fazla bilgi bulmak için çalışacağım
Laurent Picquet

benim için çalıştı. Aşağıdaki komutları kullandım: `` PASSWORD_DIGEST = "$ (echo -n" $ {ADMIN_PASSWORD} {$ {SALT}} "| sha256sum | awk '{print $ 1}')" echo "şifre özeti: $ PASSWORD_DIGEST" sed -i -e "s # <passwordHash>. * </passwordHash> # <passwordHash> $ {SALT}: $ {PASSWORD_DIGEST} </passwordHash> #" "/ usr / share / jenkins / ref / users / admin / config .xml "sed -i -e" s # <apiToken>. * </apiToken> # <apiToken> $ {API_TOKEN} </apiToken> # "" / usr / share / jenkins / ref / users / admin / config. xml "` `
Laurent Picquet

Teşekkürler mil. Aynı değerleri kullandı ve bir cazibe gibi çalıştı. Kendimi geri aldım ve kartı sıfırla.

26

El-Capitan'da config.xml adresinde bulunamadı

/ Var / lib / Jenkins /

Mevcut

~ / .Jenkins

bundan sonra da belirtildiği gibi config.xml dosyasını açın ve aşağıdaki değişiklikleri yapın

  • Bu ise yerini <useSecurity>true</useSecurity>ile<useSecurity>false</useSecurity>

  • Kaldır <authorizationStrategy>ve<securityRealm>

  • Kaydet ve jenkins'i yeniden başlat ( sudo service jenkins restart )


Aslında config.xml dosyasını düzenleyemiyorum. Ben vim kullanarak kaydetmeye çalıştığınızda bu salt okunur bir dosya olduğunu ve yazma erişimi yapmak için işlem izin verilmez atar.
Emjey

19

Değiştirme cevabı doğruydu. Yine de, /var/lib/jenkins/config.xml"Proje Tabanlı Matris Yetkilendirme Stratejisi" ni etkinleştirdiyseniz böyle bir şeyin göründüğünden bahsetmek gerekir . /var/lib/jenkins/config.xmlJenkinleri silmek ve yeniden başlatmak da hile yapar. Ayrıca kullanıcıları /var/lib/jenkins/userssıfırdan başlamak için sildim .

<authorizationStrategy class="hudson.security.ProjectMatrixAuthorizationStrategy">
    <permission>hudson.model.Computer.Configure:jenkins-admin</permission>
    <permission>hudson.model.Computer.Connect:jenkins-admin</permission>
    <permission>hudson.model.Computer.Create:jenkins-admin</permission>
    <permission>hudson.model.Computer.Delete:jenkins-admin</permission>
    <permission>hudson.model.Computer.Disconnect:jenkins-admin</permission>
    <!-- if this is missing for your user and it is the only one, bad luck -->
    <permission>hudson.model.Hudson.Administer:jenkins-admin</permission>
    <permission>hudson.model.Hudson.Read:jenkins-admin</permission>
    <permission>hudson.model.Hudson.RunScripts:jenkins-admin</permission>
    <permission>hudson.model.Item.Build:jenkins-admin</permission>
    <permission>hudson.model.Item.Cancel:jenkins-admin</permission>
    <permission>hudson.model.Item.Configure:jenkins-admin</permission>
    <permission>hudson.model.Item.Create:jenkins-admin</permission>
    <permission>hudson.model.Item.Delete:jenkins-admin</permission>
    <permission>hudson.model.Item.Discover:jenkins-admin</permission>
    <permission>hudson.model.Item.Read:jenkins-admin</permission>
    <permission>hudson.model.Item.Workspace:jenkins-admin</permission>
    <permission>hudson.model.View.Configure:jenkins-admin</permission>
    <permission>hudson.model.View.Create:jenkins-admin</permission>
    <permission>hudson.model.View.Delete:jenkins-admin</permission>
    <permission>hudson.model.View.Read:jenkins-admin</permission>
  </authorizationStrategy>

14

Matris izinlerini kullanıyorsanız (muhtemelen diğer giriş yöntemlerine kolayca uyarlanabilir) güvenliği devre dışı bırakmadan sıfırlamak için :

  1. Olarak config.xml, set disableSignupiçin false.
  2. Tekrar başlatJenkins'i .
  3. Jenkins web sayfasına gidin ve yeni bir kullanıcıyla kaydolun .
  4. Konumunda config.xml, <permission>hudson.model.Hudson.Administer:username</permission>satırlardan birini kopyalayın ve değiştirinusername ve yeni kullanıcıyla .
  5. Özel bir sunucuysa disableSignuptekrar truegiriş yapın config.xml.
  6. Tekrar başlatJenkins'i .
  7. Jenkins web sayfasına gidin ve yeni kullanıcı olarak oturum açın .
  8. Orijinal kullanıcının şifresini sıfırlayın .
  9. Oturum orijinal kullanıcı olarak.

İsteğe bağlı temizleme:

  1. Yeni kullanıcıyı silin.
  2. İçindeki geçici <permission>satırı silin config.xml.

Bu cevap sırasında menkul kıymetlere zarar verilmedi.


Temizleme kümesine ekle devre dışı bırakYeniden imzala ve tekrar jenkinleri yeniden başlat
Marc

14

Linux'ta basit adımlarla Jenkins güvenliğini devre dışı bırakmak için şu komutları çalıştırın:

sudo ex +g/useSecurity/d +g/authorizationStrategy/d -scwq /var/lib/jenkins/config.xml
sudo /etc/init.d/jenkins restart

Kaldırılacak useSecurityve authorizationStrategysatırlarınızconfig.xmlKök yapılandırma dosyanızdan ve Jenkins'iniz yeniden başlatılır.

Ayrıca bkz: Jenkins web sitesinde güvenliği devre dışı bırakma


Jenkins'e eriştikten sonra , Erişim Denetimi / Güvenlik Bölgesi'ni seçerek Global Güvenliği Yapılandırma sayfanızda güvenliği yeniden etkinleştirebilirsiniz . Sonra yönetici kullanıcı oluşturmayı unutmayın .


Benim için çalıştı, ancak şimdi izni atlıyor.
hemanto

@hemanto Yetkilendirmeyi yeniden etkinleştirmek için güvenliği etkinleştirmeniz gerekir. Cevabı güncelledim.
kenorb

12

Offchance üzerinde yanlışlıkla izin hatası nedeniyle Jenkins dışında kilitlemek ve jenkins kullanıcı veya kök geçmek için sunucu tarafı erişiminiz yok ... Jenkins bir iş yapabilir ve bunu Kabuk komut dosyasına ekleyebilirsiniz:

sed -i 's/<useSecurity>true/<useSecurity>false/' ~/config.xml

Ardından Şimdi Oluştur'u tıklayın ve Jenkins'i (veya gerekirse sunucuyu!) Yeniden başlatın.


1
Kendinizi kilitlemeniz durumunda Jenkins'te nasıl bir iş yaratırsınız?
GeroldBroser, Monica

Bu durumda, normal bir Chrome pencerem vardı ve güvenlik ayarlarını değiştirdim ve ana pencereden çıkış yapmadan önce Gizli Pencere'de test ettim. Test, giriş yapmama izin vermedi, ancak oturumlarım ana pencerede devam etti, böylece hasarı onarabildim.
Nick

1
Değiştirdiğim güvenlik ayarlarının bir kısmının, kimlik doğrulama oturumumun artık Jenkins güvenlik yapılandırmalarını değiştirme izni olmadığı anlamına geldiğine inanıyorum.
Nick

Etkinleştirdikten sonra bu sorunla karşılaşın ProjectMatrixAuthorization. Değişikliği yapıp Jenkins'i yeniden başlattığımda Jenkins-UI'de bir Java-istisnası görüyorum. Bunu düzeltmek için, hattı da kaldırdım authorizationStrategyve tekrar iyiydi. Jenkins bir sonraki başlangıçta boş bir etiket olarak okudu.
Peter Schneider

12

Güvenliği açık bırakırken şifreyi sıfırlayabiliriz.

/ Var / lib / Jenkins / users / admin / içindeki config.xml dosyası, / etc / shadow dosyası Linux veya UNIX benzeri sistemler veya Windows'daki SAM dosyası gibi, hesabınızın şifresi.

Giriş yapmadan şifreyi sıfırlamanız gerekirse, bu dosyayı düzenleyebilir ve eski karmayı bcrypt'ten oluşturulan yeni bir adla değiştirebilirsiniz:

$ pip install bcrypt
$ python
>>> import bcrypt
>>> bcrypt.hashpw("yourpassword", bcrypt.gensalt(rounds=10, prefix=b"2a"))
'YOUR_HASH'

Bu, karma 2a önekiyle Jenkins karma için doğru öneki verir.

Şimdi config.xml dosyasını düzenleyin:

...
<passwordHash>#jbcrypt:REPLACE_THIS</passwordHash>
...

Yeni karmayı ekledikten sonra Jenkins'i sıfırlayın:

(systemd olan bir sistemdeyseniz):

sudo systemctl restart Jenkins

Şimdi giriş yapabilirsiniz ve sisteminizi bir saniyeliğine açık bırakmadınız.


5
\.jenkins\secrets\initialAdminPassword

Parolayı initialAdminPassword dosyasından kopyalayın ve Jenkins'e yapıştırın.


4

Windows işletim sisteminde jenkinlerin varsayılan güvenliğini kaldırmak için,

/Users/{UserName <//.jenkins içinde oluşturulan Config.xml dosyasında gezinebilirsiniz.

Bu dosyanın içinde kodu

<useSecurity>true</useSecurity>

için,

<useSecurity>false</useSecurity>

4

1 Savaş veya Linux veya Windows yüklerseniz konumu kontrol edin.

örneğin Linux altında savaş ve yönetici kullanıcı için

/home/"User_NAME"/.jenkins/users/admin/config.xml

#jbcrypt'den sonra bu etikete git:

<passwordHash>#jbcrypt:$2a$10$3DzCGLQr2oYXtcot4o0rB.wYi5kth6e45tcPpRFsuYqzLZfn1pcWK</passwordHash>

bcrypt hash generator için herhangi bir web sitesi kullanarak bu şifreyi değiştirin

https://www.dailycred.com/article/bcrypt-calculator

$ 2a ile başladığından emin olun çünkü bu bir jenkens kullanır


4

adım-1: cd .jenkins / secrets dizinine giderseniz, 'initialAdminPassword' alırsınız.

2. adım: nano initialAdminPassword

bir şifre alacaksın


2

Değişen <useSecurity>true</useSecurity>için <useSecurity>false</useSecurity>yeterli olmayacak, kaldırmak gerekir <authorizationStrategy>ve <securityRealm>çok element ve yaparak Jenkins sunucuyu yeniden başlatın sudo service jenkins restart.

Bu, set hatırlamak <usesecurity>içinfalse bu talimatlar hırsız resmi belgelerinde söz ettiği, sizin için bir sorun neden olabilir sadece burada .


1

Bunun kolay yolu, yönetici kullanıcı ile giriş yapmak için yönetici psw'sini kullanmaktır:

  • Kök kullanıcı olarak değiştir: sudo su -
  • Parolayı kopyalayın: xclip -sel clip < /var/lib/jenkins/secrets/initialAdminPassword
  • Yönetici ile giriş yapın ve basın ctrl + v giriş yapın şifre giriş kutusuna .

Eğer yoksa xclip'i yükleyin:

  • $ sudo apt-get install xclip

Varsayılan şifreyi kullanmak benim için çalıştı. Basit tutmak için, bir kereye mahsus xclip kurmak yerine 'cat secrets / initialAdminPassword' yapabilirsiniz.
Paul

Bazen bu şifre mevcut olmayabilir. Bu yapılandırmayı nasıl atlayabileceğinizden emin değilim ama benim için mevcut değil ve config.xml dosyasını düzenlemek zorunda kaldım
vinicius.hisao

1

Jenkins, KUBENETES ve Docker üzerinden

Durumunda Jenkins bir tarafından yönetilen bir kap üzerinde Kubernetes POD biraz daha karmaşık beri geçerli: kubectl exec PODID --namespace=jenkins -it -- /bin/bashdoğrudan Jenkins çalışan kaba ulaşmak için yeterli olacaktır, ancak kök erişemez , sudo, vive birçok komutları dolayısıyla geçici bir çözüm mevcut değildir ve gereklidir.

kubectl describe pod [...]Kapsülünüzü çalıştıran düğümü ve kapsayıcı kimliğini bulmak için kullanın(docker://...)

  • SSH düğüme
  • docker exec -ti -u root -- /bin/bashRoot ayrıcalıklarıyla kaba erişmek için çalıştırın
  • apt-get update
  • sudo apt-get install vim

İkinci fark , Jenkins yapılandırma dosyasının kalıcı birimin montaj noktasına karşılık gelen farklı bir yola yerleştirilmesidir, yani /var/jenkins_homebu konum gelecekte değişebilir, çalışıp çalışmadığını kontrol edebilir df.

Ardından güvenliği devre dışı bırakın - /var/jenkins_home/jenkins/config.xmldosyada true değerini false olarak değiştirin .

<useSecurity>false</useSecurity>

Şimdi Jenkins'i, kap ve Pod'un ölmesine neden olacak eylemi yeniden başlatmak yeterli, kalıcı hacim sayesinde güncellenen yapılandırma (ve vi, güncelleme silme gibi tüm şanslar) ile birkaç saniye içinde tekrar oluşturulacak.

Tüm çözüm Google Kubernetes Engine'de test edildi. GÜNCELLEMEps -aux Parolayı düz metin olarak da çalıştırabileceğinize dikkat edin, root erişimi olmasa bile.

jenkins@jenkins-87c47bbb8-g87nw:/$ps -aux
[...]
jenkins [..] -jar /usr/share/jenkins/jenkins.war --argumentsRealm.passwd.jenkins=password --argumentsRealm.roles.jenkins=admin
[...]

1

Çoğu zaman config.xml dosyasını düzenleme izniniz olmaz.

En basit şey, config.xml sudo komutunu kullanarak ve silmek olacaktır.

Jenkins komutunu kullanarak yeniden başlatın sudo /etc/init.d/jenkins restart

Bu, Jenkins'teki tüm güvenliği devre dışı bırakır ve oturum açma seçeneği kaybolur


Config.xml dosyasını sudo ile silebilirseniz, sudo ile de düzenleyebilirsiniz. örneğin sudo vi ...
Lee Meador

1

Bcrypt kullanarak bu sorunu çözebilirsiniz. Bash ve python kullanarak işlemi otomatikleştirmeye çalışan biri için @ Reem yanıtını genişletme.

#!/bin/bash

pip install bcrypt
yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
yum -y install xmlstarlet

cat > /tmp/jenkinsHash.py <<EOF
import bcrypt
import sys

if not sys.argv[1]:
  sys.exit(10)

plaintext_pwd=sys.argv[1]
encrypted_pwd=bcrypt.hashpw(sys.argv[1], bcrypt.gensalt(rounds=10, prefix=b"2a"))
isCorrect=bcrypt.checkpw(plaintext_pwd, encrypted_pwd)

if not isCorrect:
   sys.exit(20);

print "{}".format(encrypted_pwd)
EOF

chmod +x /tmp/jenkinsHash.py
cd /var/lib/jenkins/users/admin*
pwd
while (( 1 )); do
    echo "Waiting for Jenkins to generate admin user's config file ..."

    if [[ -f "./config.xml" ]]; then
        break
    fi

    sleep 10
done

echo "Admin config file created"

admin_password=$(python /tmp/jenkinsHash.py password 2>&1)

# Repalcing the new passowrd
xmlstarlet -q ed --inplace -u "/user/properties/hudson.security.HudsonPrivateSecurityRealm_-Details/passwordHash" -v '#jbcrypt:'"$admin_password" config.xml

# Restart
systemctl restart jenkins
sleep 10

Şifreyi burada kodlanmış olarak sakladım, ancak gereksinime bağlı olarak bir kullanıcı girişi olabilir. Ayrıca, sleepaksi takdirde Jenkins'in etrafında dönen diğer komutların başarısız olacağını da eklediğinizden emin olun .


1

Hem güvenliği hem de başlatma sihirbazını çok basit bir şekilde devre dışı bırakmak için JAVA özelliğini kullanın:

-Djenkins.install.runSetupWizard=false

Bununla ilgili güzel olan şey, bir Docker görüntüsünde kullanabilmenizdir, böylece konteyneriniz her zaman giriş ekranı olmadan hemen başlayacaktır:

# Dockerfile
FROM jenkins/jenkins:lts
ENV JAVA_OPTS -Djenkins.install.runSetupWizard=false

Başkaları tarafından belirtildiği gibi, Jenkins config.xml dosyasının /var/jenkins_homegörüntüde olduğunu, ancak sedDockerfile'dan değiştirmek için kullanmanın başarısız olduğunu unutmayın, çünkü (muhtemelen) config.xml sunucu başlatılana kadar mevcut değildir.


0

Benzer bir sorunum vardı ve ArtB'nin yanıtını takiben,

Kullanıcımın uygun yapılandırmalara sahip olmadığını buldum. yani ne yaptım:

Not: Bu tür XML dosyalarını manuel olarak değiştirmek risklidir. Kendi sorumluluğunuzdadır. Zaten kilitli olduğum için kaybedecek çok şeyim yoktu. AFAIK En kötü durumda ~ / .jenkins / config.xml dosyasını önceki yazı olarak silebilirdim.

**> 1. ssh için jenkins makinesi

  1. cd ~ / .jenkins (Bazı kurulumların /var/lib/jenkins/config.xml altına koyduğunu düşünüyorum, ancak benim durumumda değil)
  2. vi config.xml ve authorizationStrategy xml etiketi altında aşağıdaki bölümü ekleyin ("kullanıcı adınızı girin" yerine kullanıcı adımı kullandım)
  3. cenkins'i yeniden başlatın. benim durumumda kök hizmet olarak tomcat7 dur; ; hizmet tomcat7 başlangıç
  4. Tekrar giriş yapmayı deneyin. (benim için çalıştı) **

altında

Ekle:

<permission>hudson.model.Computer.Build:put-your-username</permission>
<permission>hudson.model.Computer.Configure:put-your-username</permission>
<permission>hudson.model.Computer.Connect:put-your-username</permission>
<permission>hudson.model.Computer.Create:put-your-username</permission>
<permission>hudson.model.Computer.Delete:put-your-username</permission>
<permission>hudson.model.Computer.Disconnect:put-your-username</permission>
<permission>hudson.model.Hudson.Administer:put-your-username</permission>
<permission>hudson.model.Hudson.ConfigureUpdateCenter:put-your-username</permission>
<permission>hudson.model.Hudson.Read:put-your-username</permission>
<permission>hudson.model.Hudson.RunScripts:put-your-username</permission>
<permission>hudson.model.Hudson.UploadPlugins:put-your-username</permission>
<permission>hudson.model.Item.Build:put-your-username</permission>
<permission>hudson.model.Item.Cancel:put-your-username</permission>
<permission>hudson.model.Item.Configure:put-your-username</permission>
<permission>hudson.model.Item.Create:put-your-username</permission>
<permission>hudson.model.Item.Delete:put-your-username</permission>
<permission>hudson.model.Item.Discover:put-your-username</permission>
<permission>hudson.model.Item.Read:put-your-username</permission>
<permission>hudson.model.Item.Workspace:put-your-username</permission>
<permission>hudson.model.Run.Delete:put-your-username</permission>
<permission>hudson.model.Run.Update:put-your-username</permission>
<permission>hudson.model.View.Configure:put-your-username</permission>
<permission>hudson.model.View.Create:put-your-username</permission>
<permission>hudson.model.View.Delete:put-your-username</permission>
<permission>hudson.model.View.Read:put-your-username</permission>
<permission>hudson.scm.SCM.Tag:put-your-username</permission>

Şimdi, farklı yönlere gidebilirsiniz. Örneğin github oauth entegrasyonu vardı, bu yüzden authorizationStrategy'yi aşağıdaki gibi bir şeyle değiştirmeye çalışabilirdim:

Not :, Benim durumumda çalıştı, çünkü önceden yapılandırılmış belirli bir github oauth eklentisi vardı. Yani önceki çözümden daha risklidir.

  <authorizationStrategy class="org.jenkinsci.plugins.GithubAuthorizationStrategy" plugin="github-oauth@0.14">
    <rootACL>
      <organizationNameList class="linked-list">
        <string></string>
      </organizationNameList>
      <adminUserNameList class="linked-list">
        <string>put-your-username</string>
        <string>username2</string>
        <string>username3</string>
        <string>username_4_etc_put_username_that_will_become_administrator</string>
      </adminUserNameList>
      <authenticatedUserReadPermission>true</authenticatedUserReadPermission>
      <allowGithubWebHookPermission>false</allowGithubWebHookPermission>
      <allowCcTrayPermission>false</allowCcTrayPermission>
      <allowAnonymousReadPermission>false</allowAnonymousReadPermission>
    </rootACL>
  </authorizationStrategy>

0

$ JENKINS_HOME / config.xml dosyasını düzenleyin ve güvenlik yapılandırmasını şu şekilde değiştirin:

<authorizationStrategy class="hudson.security.AuthorizationStrategy$Unsecured"/>

Bundan sonra Jenkins'i yeniden başlatın.


0

MacOS kullanan biri için, yeni sürüm sadece homebrew tarafından yüklenebilir. bu nedenle dinlenme için bu komut satırı aşağıdakileri kullanmalıdır:

brew services restart jenkins-lts
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.