Mac OS X, projeyi derlerken sistem anahtar zincirini kullanmak istiyor


94

Xcode projemi derlerken sistem yöneticisi kullanıcı adı ve şifresini yazmam isteniyor. Bütün mesaj

Mac OS X değişiklik yapmak istiyor. Buna izin vermek için bir yönetici adı ve parolası yazın. Mac OS X, sistem anahtar zincirini kullanmak istiyor.

Bunun için herhangi birinin çözümü var mı?

Yanıtlar:


249
  1. Anahtar Zinciri Erişimini açın.
  2. Sol üst köşede anahtar zincirinin kilidini açın (kilitliyse).
  3. Sol üst köşeden Sistem anahtar zincirini seçin.
  4. Dağıtım sertifikanızı bulun ve açıklama üçgenini tıklayın.
  5. Dağıtım sertifikanızın altındaki "Özel anahtar" ı çift tıklayın.
  6. Açılır pencerede Erişim Kontrolü sekmesine gidin.
  7. 'Tüm uygulamaların bu öğeye erişmesine izin ver'i seçin.
  8. Değişiklikleri kaydedin.
  9. Tüm pencereleri kapatın.
  10. Uygulamayı çalıştırın.

3
Dağıtım sertifikası açılır listesi bulamıyorum. bunu nerede bulabilirim?
Ananth Srinivasan

4
@AnanthSrinivasan, PVCS sadece ana pencerede listelenen hesapların listesi anlamına gelir. Sizi yönetici adını ve şifresini girmeye zorlayan hesaba çift tıklayın.
crazyDiamond

Bu aynı zamanda, kimlik bilgilerini kesintiye uğratmadan otomatik bir derleme sunucusunda çalıştığından emin olmanın tek iyi yoludur.
Ben BUTZER

4
Bu cevap için büyük bir kurabiyeyi hak ediyorsun.
Miiite

1
El Capitan'da, hostname.domain.identity biçimiyle eşleşen özel anahtarlara çift tıklamanız ve ardından 6-8. Adımları uygulamanız gerektiğini öğrendim.
Jason D

22

Sorun, her zaman kilitli olan ve kilidi açmak için şifremi gerektiren sol paneldeki "Sistem" altında bulunan Anahtar Zinciri üzerindeki Geliştirici Sertifikası ile ilgilidir!

Bu nedenle, Geliştirici Sertifikasını her zaman kilidi açık olan "giriş" e taşıyın. Şimdi sorunun çözüldü.


1
Bu bana yardımcı oldu, ancak anahtar zincirini 'giriş'e taşıyamadım. Ancak, sertifikayı Sistem anahtarlığından kaldırmak, bence bu sorunu çözer.
goelakash

Bu, yalnızca Xcode GUI'den derlemek için uygundur, CLI'den (CI ortamında olduğu gibi) derlerken, Anahtar ve Sertifika Sistem anahtar zincirinde olmalıdır.
RAM237

Harika! benim için çalıştı. Sertifikam "Sistem" altındaydı, "Giriş" e taşındı.
lal

Benim için bunun dışında hiçbir şey işe yaramadı. Taşıyamayacağımı unutmayın, sertifikayı manuel olarak "Oturum Aç" a sürüklemem gerekiyordu
Lirik

8
  1. Anahtar Zinciri Erişimini Aç

  2. Sol bölmede Sistem'e tıklayın

  3. Sol üst Sistem anahtar zincirinin kilidini açın (kilitliyse)

  4. Sistem öğelerini Türe göre sıralayın, böylece anahtarlar en üstte olur

  5. Parola soran özel anahtarı arayın

  6. Üzerine çift tıklayın ve Erişim Kontrolü'nü seçin

  7. "Tüm uygulamaların bu öğeye erişmesine izin ver" seçeneğini seçin

  8. Değişiklikleri kaydedin, Sistem anahtar zincirini kilitleyin ve Anahtar Zinciri uygulamasından çıkın

  9. Anahtar zincirinizi değiştirmenizi isteyen uygulamayı yeniden başlatın


En iyi uygulama olarak, 7. adım için yalnızca erişim izni vermeye çalıştığınız belirli uygulamalara izin verin. Çünkü güvenlik.
Mike Rapadas

1
Bunun yıllar önce verilen cevaptan farkı nedir?
grg

1
Cevap verdiğimde, cevap 2 yaşındaydı ve cevap benim için işe yaramadı, bu yüzden işe yaraması için attığım adımları, dolayısıyla 5 olumlu oyu yazdım. Buraya gelip cevabını güncelleme ve sonra bana neden benimkinin farklı olduğunu sor .. Aynı olsaydı eminim herkes senin gibi olumsuz oy kullanırdı ..
duygusallık

1
8. adımda değişiklikleri kaydedemiyorum. Yönetici geçişini giriyorum (iki kez soruyor), ancak anahtarı yeniden açtığımda değişiklikler kaydedilmedi! Bu neden böyle?
Danijel

5

Bu sorunu alıyordum çünkü oturum açma bilgilerimde ve Sistem anahtar zincirlerimde yinelenen sertifikalar vardı. Anahtar Zinciri Erişimini açarak ve aynı zamanda oturum açmış olan tüm sertifikaları Sistemden silerek bu sorunu çözdü. Bu yardımcı olur umarım.


Bu, yalnızca Xcode GUI'den derlemek için uygundur, CLI'den (CI ortamında olduğu gibi) derlerken, Anahtar ve Sertifika Sistem anahtar zincirinde olmalıdır. Bir Mac'te de aynı duruma sahibim: oturum açma ve Sistem anahtar zincirinde çoğaltma ve her şey gayet iyi çalışıyor, ancak nedense başka
birinde

3

Bu sorunu ön hazırlık profillerinde buldum. Önceki tüm ön hazırlık profillerini sildim ve ihtiyacım olanı yeniden yükledim.


2

Benim durumumda Keychain Access'e gittim, "Keychains" de (sol üstte) "system" i seçtim. Sonra her öğe için: "Bilgi Al", "Erişim Kontrolü" öğesini sağ tıklayın ve "Bu uygulamaların erişimine her zaman izin ver:" listesine Xcode ekleyin.


2

Anahtar zinciri erişiminde oturum açmak için özel anahtarınızı Sistem'den taşıyın ve ardından geliştirici sertifikanızı oturum açmaya taşıyın.Bu benim için çalıştı.


1

@Krafter'ın yaptığına benzer bir çözüm izledim, ancak sistem anahtar zincirindeki her şeye erişim vermek yerine, yalnızca anahtar zinciri -> sistem -> "ön hazırlık profiliniz" -> bilgi al altındaki ön hazırlık profiline xcode eklemem gerekiyordu -> Erişim Kontrolü daha sonra xcode ekledi. 4.6 için işe yarayan şey buydu


1

Erişim Kontrolü ayarları artık Sistem anahtar zincirinde depolanan özel anahtarları kaydediyor gibi görünmüyor, bu nedenle oradaki beyaz listeye Xcode eklemeye çalışmak benim için işe yaramadı.

Erişim Kontrolü değişikliklerini korumak için, özel anahtarı + sertifikayı Oturum Açma anahtar zincirine kopyalamam gerekiyordu. Bu, Xcode'un dağıtım için arşivleri kod imzalarken beni rahatsız etmesini engelledi.

Sertifikanın Güven ayarları değiştirilirse Xcode'un dağıtımı durduracağını unutmayın (örn. Kod İmzalamaya Her Zaman İzin Ver); Eğer gereken bu sete yeni Sistem Öntanımlı tutun.

Umarım bundan daha iyi bir çözüm vardır, çünkü bu doğru gelmiyor. Ama şimdilik işe yarıyor.


0

Evet - XCode'u yalnızca yönetici ayrıcalıklarıyla çalıştırın. Bir dizi görevi, yüklemeyi, hata ayıklama oturumlarını vb. Gerçekleştirmek için yönetici haklarına ihtiyacı vardır.


xcode tercihlerini yönetici öncelikleriyle çalışacak şekilde nasıl değiştirebilirim?
Singh

Demek istediğim, yönetici olarak tanımlanan bir kullanıcıdan çalıştırın.
Stavash

0

Geliştirici araçlarıyla ilgili bir şey olmadığı için "Mac OS X" yazdığından emin misiniz?

Geliştirici Araçlarının Mac'inizde Geliştirici Modunu etkinleştirmek istemesi normaldir, bu nedenle, her Xcode başlatıldıktan sonra her ilk seferde simülatörde uygulamanızda hata ayıklamaya her başladığınızda bir yönetici parolası girmeniz gerekmez.

Ancak, Geliştirici Modunu etkinleştirmediyseniz, Xcode tarafından sunulduğunda hazırlıklı olun, Xcode, her Xcode başlatıldıktan sonra simülatörde hata ayıklamayı her başlattığınızda bir yönetici şifresi isteyecektir.


evet, MAC OS X diyor ve simülatör için yapıyı derlediğimde bana bu mesajı göstermiyor ve cihazda herhangi bir proje çalıştırdığımda bana mesajı gösteriyor
Singh

Bu sorunu ön hazırlık profillerinde buldum. önceki tüm ön hazırlık profillerini sildim ve ardından sorunu çözmek için ihtiyacım olan birini yeniden
Singh

@Developersaremad ile Katılıyorum. Çözüm buldum ... Teşekkürler
kb920

0

OSx kullanıcı adınızı _developergruba eklemeniz gerekir . Benim için çalıştı.

sudo dscl . append /Groups/_developer GroupMembership <username>

0

Görünüşe göre Xcode takım seçimini yenilemedi, bu yüzden hedeflerin genel sekmesinden tekrar seçilmesi sorunu çözdü.

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.