Mac OS X muốn sử dụng chuỗi khóa hệ thống khi biên dịch dự án


92

Tôi được yêu cầu nhập tên người dùng và mật khẩu quản trị hệ thống khi tôi biên dịch dự án Xcode của mình. Toàn bộ tin nhắn là

Mac OS X muốn thực hiện thay đổi. Nhập tên và mật khẩu của quản trị viên để cho phép điều này. Mac OS X muốn sử dụng chuỗi khóa hệ thống.

Có ai có một giải pháp cho điều này?

Câu trả lời:


242
  1. Mở Quyền truy cập chuỗi khóa.
  2. Ở góc trên bên trái, mở khóa chuỗi khóa (nếu chuỗi khóa bị khóa).
  3. Chọn chuỗi khóa Hệ thống từ góc trên bên trái.
  4. Tìm chứng chỉ phân phối của bạn và nhấp vào hình tam giác tiết lộ.
  5. Nhấp đúp vào 'Khóa riêng tư' bên dưới chứng chỉ phân phối của bạn.
  6. Trong cửa sổ bật lên, hãy chuyển đến tab Kiểm soát truy cập.
  7. Chọn 'Cho phép tất cả các ứng dụng truy cập vào mục này'.
  8. Lưu các thay đổi.
  9. Đóng tất cả các cửa sổ.
  10. Chạy ứng dụng.

3
Tôi không tìm thấy bất kỳ trình đơn thả xuống chứng chỉ phân phối nào. tìm cái này ở đâu?
Ananth Srinivasan

4
@AnanthSrinivasan, PVCS chỉ có nghĩa là danh sách các tài khoản được liệt kê trên cửa sổ chính. Nhấp đúp vào tài khoản buộc bạn nhập tên và mật khẩu quản trị viên.
crazyDiamond

Đây cũng là cách tốt duy nhất để đảm bảo nó hoạt động trên một máy chủ xây dựng tự động mà không làm gián đoạn thông tin đăng nhập.
Ben Butzer

4
Bạn xứng đáng nhận được một cookie lớn cho câu trả lời đó.
Miiite

1
Tôi thấy rằng, trên El Capitan, bạn cần nhấp đúp vào các khóa riêng phù hợp với định dạng yourhostname.domain.identity và sau đó thực hiện các bước 6-8.
Jason D

22

Vấn đề là với Chứng chỉ nhà phát triển trên Keychain trong "Hệ thống", trên bảng điều khiển bên trái, luôn bị khóa và yêu cầu mật khẩu của tôi để mở khóa!

Vì vậy, chỉ cần di chuyển Chứng chỉ nhà phát triển thành "đăng nhập", chứng chỉ này luôn được mở khóa. Bây giờ vấn đề của bạn đã được giải quyết.


1
Điều này đã giúp tôi, ngoại trừ tôi không thể di chuyển chuỗi khóa sang 'đăng nhập'. Tuy nhiên, việc xóa chứng chỉ khỏi Chuỗi khóa hệ thống là điều tôi nghĩ sẽ giải quyết được vấn đề này.
goelakash

Điều này chỉ phù hợp để xây dựng từ Xcode GUI, khi bạn đang xây dựng từ CLI (như trong môi trường CI) thì Khóa & Cert phải nằm trong chuỗi khóa Hệ thống.
RAM237

Tuyệt quá! đã làm cho tôi. Chứng chỉ của tôi nằm trong "Hệ thống", đã chuyển nó sang "Đăng nhập".
lal

Không có gì làm việc cho tôi ngoại trừ cái này. Lưu ý rằng tôi không thể di chuyển nó, tôi đã phải xóa và chỉ cần kéo giấy chứng nhận bằng tay để "Đăng nhập"
Lirik

7
  1. Mở quyền truy cập chuỗi khóa

  2. Nhấp vào Hệ thống ở ngăn bên trái

  3. Mở khóa chuỗi khóa Hệ thống trên cùng bên trái (nếu nó bị khóa)

  4. Sắp xếp các mục Hệ thống theo Loại sao cho các phím ở trên cùng

  5. Tìm khóa cá nhân liên tục yêu cầu mật khẩu

  6. Nhấp đúp vào nó và chọn Access Control

  7. Chọn "Cho phép tất cả các ứng dụng truy cập vào mục này"

  8. Lưu các thay đổi, khóa Chuỗi khóa hệ thống và thoát khỏi ứng dụng Chuỗi khóa

  9. Khởi động lại ứng dụng liên tục yêu cầu sửa đổi chuỗi khóa của bạn


Cách tốt nhất, đối với bước 7, chỉ cho phép (các) ứng dụng cụ thể mà bạn đang cố gắng cấp quyền truy cập. Vì bảo mật.
Mike Rapadas

1
Điều này khác với câu trả lời được cung cấp nhiều năm trước như thế nào?
grg

1
Khi tôi trả lời nó, câu trả lời đã cũ 2 năm và câu trả lời không phù hợp với tôi, vì vậy tôi đã viết ra các bước tôi đã thực hiện để làm cho nó hoạt động, do đó có 5 lượt ủng hộ. Đừng đến đây và cập nhật câu trả lời của ông sau đó hỏi tôi tại sao tôi là khác nhau .. Nếu nó là như nhau Tôi chắc chắn mọi người sẽ đã downvoted nó như bạn ..
emotality

1
Tôi không thể lưu các thay đổi ở bước 8. Tôi nhập mật khẩu quản trị (hỏi tôi hai lần), tuy nhiên, khi tôi mở lại khóa, các thay đổi vẫn chưa được lưu! Tại sao cái này rất?
Danijel

5

Tôi gặp sự cố này vì tôi có chứng chỉ trùng lặp trong đăng nhập và móc khóa hệ thống của mình. Bằng cách mở Keychain Access và xóa tất cả các chứng chỉ khỏi Hệ thống cũng đã đăng nhập đã giải quyết được vấn đề này. Hi vọng điêu nay co ich.


Điều này chỉ phù hợp để xây dựng từ Xcode GUI, khi bạn đang xây dựng từ CLI (như trong môi trường CI) thì Khóa & Cert phải nằm trong chuỗi khóa Hệ thống. Trên một máy Mac Tôi có hoàn cảnh tương tự: nhân bản trong đăng nhập và hệ thống keychain và mọi thứ hoạt động tốt, nhưng không phải trên một vì một lý do ...
RAM237

3

Tôi nhận thấy rằng vấn đề là của hồ sơ cấp phép. Tôi đã xóa tất cả các cấu hình cấp phép trước đó và sau đó cài đặt lại một cấu hình tôi cần.


2

Trong trường hợp của tôi, tôi đã truy cập Keychain Access, đã chọn "hệ thống" trong "Keychains" (trên cùng bên trái). Sau đó, đối với mỗi mục: nhấp chuột phải, "Nhận thông tin", "Kiểm soát truy cập" và thêm Xcode trong danh sách "Luôn cho phép gia nhập bởi các ứng dụng này:".


2

Di chuyển khóa cá nhân của bạn từ Hệ thống để đăng nhập trong quyền truy cập chuỗi khóa. Sau đó, chuyển chứng chỉ nhà phát triển của bạn vào đăng nhập. Điều này đã hiệu quả với tôi.


1

Tôi đã làm theo một giải pháp tương tự như những gì @krafter đã làm, nhưng thay vì cấp quyền truy cập vào mọi thứ trong chuỗi khóa hệ thống, tôi chỉ cần thêm xcode vào hồ sơ cấp phép trong chuỗi khóa -> hệ thống -> "hồ sơ cung cấp của bạn" -> nhận thông tin -> Access Control sau đó chỉ cần thêm xcode. Đây là những gì làm việc cho 4,6


0

Có - chỉ chạy XCode với đặc quyền của quản trị viên. Nó cần quyền của quản trị viên để thực hiện một loạt các tác vụ, cài đặt, phiên gỡ lỗi và những thứ khác.


làm cách nào để thay đổi prefs xcode để nó chạy với previliges quản trị viên?
Singh

Ý tôi là, chạy nó từ một người dùng được xác định là quản trị viên.
Stavash

0

Bạn có chắc nó nói "Mac OS X" không liên quan đến công cụ dành cho nhà phát triển không?

Điều bình thường là nếu Công cụ nhà phát triển muốn bật Chế độ nhà phát triển trên máy Mac của bạn, do đó, bạn không cần nhập mật khẩu quản trị viên mỗi khi bắt đầu gỡ lỗi ứng dụng của mình trong trình mô phỏng lần đầu tiên sau mỗi lần khởi chạy Xcode.

Nhưng nếu bạn chưa bật Chế độ nhà phát triển, khi nó được cung cấp bởi Xcode, thì hãy chuẩn bị, Xcode đó sẽ yêu cầu mật khẩu quản trị viên cho mỗi lần đầu tiên bạn khởi chạy gỡ lỗi trong trình mô phỏng sau mỗi lần khởi chạy Xcode.


vâng nó nói MAC OS X và khi tôi biên dịch bản dựng cho trình mô phỏng, nó không hiển thị cho tôi thông báo này và khi tôi chạy bất kỳ dự án nào trên thiết bị, nó sẽ hiển thị cho tôi thông báo
Singh

tôi nhận thấy vấn đề đó là do hồ sơ cấp phép. tôi đã xóa tất cả các cấu provisionning trước và sau đó cài đặt lại một i cần thiết để giải quyết vấn đề
Singh

Ya Đồng ý với @developersaremad. Tôi có giải pháp ... Cảm ơn
kb920

0

Bạn cần thêm tên người dùng OSx của mình vào _developernhóm. Đã làm cho tôi.

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

0

Có vẻ như Xcode không làm mới lựa chọn đội nên việc chọn lại từ tab chung của các mục tiêu đã giải quyết nó.


0

Cài đặt Kiểm soát truy cập dường như không còn để lưu cho các khóa cá nhân được lưu trữ trong chuỗi khóa Hệ thống, vì vậy việc cố gắng thêm Xcode vào danh sách trắng ở đó không hiệu quả với tôi.

Để giữ lại các thay đổi Kiểm soát truy cập, tôi phải sao chép khóa cá nhân + chứng chỉ vào chuỗi khóa Đăng nhập. Điều này giúp Xcode không làm phiền tôi khi ký mã lưu trữ để phân phối.

Lưu ý rằng Xcode sẽ tạm dừng phân phối nếu cài đặt Tin cậy của chứng chỉ bị thay đổi (ví dụ: Luôn cho phép ký mã); bạn phải giữ những thiết lập này là Mặc định Hệ thống.

Tôi hy vọng có một giải pháp tốt hơn điều này, bởi vì điều này không cảm thấy đúng. Nhưng nó hoạt động cho bây giờ.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.