Chứng chỉ đã hết hạn hoặc đã bị thu hồi


159

Cách đây một thời gian, tôi bắt đầu mã hóa một ứng dụng ios mới, sau một thời gian dài sử dụng nó, tôi đang làm việc lại và hoàn thành nó.

Tôi đã thử nghiệm nó trên trình giả lập nhưng khi tôi cố gắng cài đặt nó trên iphone 6 của tôi (điều mà tôi đã làm trong quá khứ) Tôi đã gặp một lỗi cho tôi biết rằng ứng dụng của tôi không thể được cài đặt vì chứng chỉ đã được sử dụng để ký ứng dụng này đã hết hạn hoặc đã bị thu hồi.

Tôi đã thử nhiều thứ:

  1. Tôi đã xóa tất cả các chứng chỉ và hồ sơ dự phòng từ nhà phát triển xcode, móc khóa và táo và để xcode tạo cho tôi những chứng chỉ mới
  2. Tôi đã xóa xcode và thực hiện toàn bộ việc xử lý từ đầu

Nhưng điều này đã không khắc phục vấn đề của tôi.

Bất cứ ý tưởng những gì có thể là vấn đề?


2
bạn có thể là nạn nhân của việc này
thập phân

sau khi khắc phục sự cố bạn thấy vẫn không gặp may
user6218736

1
bất kể tôi làm gì tôi nhận được: Chứng chỉ được sử dụng để ký "Tên ứng dụng của tôi" đã hết hạn hoặc đã bị thu hồi. Cần có chứng chỉ cập nhật để ký và cài đặt ứng dụng.
dùng6218736

1
Bạn có đúng ngày giờ hệ thống không?
thập lục phân

Tôi vừa xóa tài khoản Apple của mình khỏi Xcode và cũng xóa các khóa khỏi Keychain và thêm lại chúng, Hoạt động như một phép thuật. Tuy nhiên, tôi đã thử hầu hết các bước khác nhưng không hiệu quả với tôi.
Ravi

Câu trả lời:


279

Chỉnh sửa: Câu trả lời này không hoạt động cho Xcode 10 trở lên. Xem câu trả lời của Turkenh.


Giải pháp

Trước hết, làm sạch dự án bằng cách giữ phím Shift (⇧) + Lệnh (⌘) + K hoặc Chọn sản phẩm > Làm sạch

Sau đó:

  1. Chuyển đến Menu Xcode > Tùy chọn

  2. Chọn Tài khoản > Nhóm > Xem chi tiết

  3. Chọn bất kỳ hồ sơ cung cấp nào từ danh sách Hồ sơ cung cấp

  4. Nhấp chuột phải> Chọn Hiển thị trong Finder . Sau đó, bạn sẽ thấy tất cả các danh sách hồ sơ cung cấp

  5. Chọn tất cả danh sách cung cấp từ thư mục và di chuyển nó vào thùng rác

  6. Tải xuống Tất cả các hồ sơ cung cấp bằng cách nhấp vào Tải xuống Tất cả bên dưới danh sách Hồ sơ cung cấp.

Bây giờ, chạy lại và nó sẽ hoạt động!


2
Thật tốt khi nghe điều đó! :)
Md.Riduanul Hồi giáo

2
Vâng, bạn đúng. Cung cấp tự động của Xcode là cách ưa thích để mã hóa các ứng dụng ký trong quá trình phát triển và phân phối. Nói cách khác, đây là cách tiếp cận được đề xuất để thiết lập dự án của bạn cho cả tài khoản nhà phát triển doanh nghiệp và App Store. Hãy xem liên kết bên dưới để biết chi tiết: developer.apple.com/l
Library / ia / qa1814 / _index.html

2
Cuộc sống tiết kiệm! Cảm ơn!
Joel

7
và tôi không có bất kỳ chi tiết nhóm / lượt xem nào
user924

2
và đó là tài khoản không phải tài khoản
user924

80

Chỉnh sửa: Câu trả lời này không hoạt động cho Xcode 10 trở lên. Xem câu trả lời của Turkenh.


Tôi đã trải qua vấn đề này và đã có thể tìm thấy một câu trả lời.

Câu trả lời mà điều này đến từ có thể được tìm thấy ở đây .

Đây là những gì bạn phải làm:

  1. Chuyển đến Tùy chọn-> Tài khoản
  2. Nhấn vào tài khoản của bạn
  3. Nhấp vào "Xem chi tiết"
  4. Nhấp vào "Tải xuống tất cả" ở góc dưới bên trái.

Những bước này đã giải quyết vấn đề cho tôi.


1
Đã làm việc. Cảm ơn Anthony
GMHSJ

7
xem chi tiết - không có nút nào như vậy
user924

55

Đối với những người không thể tìm thấy nút "xem chi tiết" tại Tài khoản> Nhóm> Xem chi tiết , đây là cách tôi giải quyết vấn đề này trên Xcode 10 :

  1. Xóa tất cả các hồ sơ cung cấp tại ~ / Library / MobileDevice / Cấp phép \ Profiles /
  2. Làm sạch dự án bằng cách giữ Shift (⇧) + Lệnh (⌘) + K hoặc chọn Sản phẩm> Sạch (có thể được gắn nhãn "Thư mục xây dựng sạch" )
  3. Khởi động lại Xcode

và thử lại.


1
Tôi đã giúp tôi. Tôi đang sử dụng fastlane và tôi phải xóa tất cả các hồ sơ trực tiếp từ ~ / Library / MobileDevice / Cung cấp \ Profiles / Làm sạch dự án và cài đặt lại các hồ sơ với trận đấu
fastlane

1
Đối với tôi trên Xcode 11, nó chỉ cần bước 2 mỗi lần trước khi tôi chạy ứng dụng
Tahan

Thực sự rất hữu ích. Cảm ơn cậu!
Harsh Chaurasia

34

Tôi đã có một giải pháp hơi khác nhau. Nó có thể là từ các bản cập nhật, hoặc trường hợp sử dụng cụ thể của tôi.

Sử dụng Xcode 7.3.1

Tôi đang sử dụng một hệ thống chia sẻ tệp (dropbox) để phát triển trên hai máy khác nhau. Sử dụngDownload All giải pháp đã không sửa nó cho tôi.

Theo liên kết trên, tôi đã lấy lời khuyên của

xóa tất cả các cấu hình trong ~ / Library / MobileDevice / Cung cấp hồ sơ

(đây là một biện pháp cực đoan, nhưng Xcode hiện nên tải xuống những gì bạn cần)

Xcode nhắc nhở để tự cập nhật.

Tôi vẫn gặp sự cố khi chuyển đổi giữa phát triển trên các máy khác nhau. Nó trình bày cảnh báo / thất bại sau đây:

Quyền nhận dạng ứng dụng của ứng dụng này không khớp với ứng dụng đã cài đặt. Các giá trị này phải phù hợp để nâng cấp được cho phép.

Giải pháp cho vấn đề đó là xóa mục phát triển khỏi thiết bị và sau đó nó sẽ cài đặt lại.


Điều này làm việc cho tôi. Không có Hồ sơ cung cấp nào được hiển thị trong XCode, vì vậy tôi không thể xóa chúng khỏi đó.
henrikmerlander

Điều gì xảy ra với các chứng chỉ bị xóa? Tôi vẫn có thể chạy các dự án đó chứ? (điều này làm việc cho tôi mặc dù tôi có những truy vấn đó)
Gel

@gel các chứng chỉ đã xóa sẽ được tải lại bằng Xcode khi bạn cần chúng
bshirley

25

Một câu lệnh "Clean" ( Shift (⇧) + Command (⌘) + K ) đơn giản đã giải quyết cho tôi


Tôi là một fan hâm mộ của xây dựng sạch sẽ, nhưng tôi chưa bao giờ nghĩ làm điều này trong vấn đề này! Cảm ơn yoiu! :) Vui lòng thực hiện Command + AltOption + Shift + K để dọn dẹp bản dựng của bạn chỉ để đảm bảo.
Glenn

Điều này là tốt (tôi làm điều đó mỗi lần) nhưng không đủ. Xóa tất cả các hồ sơ cung cấp tại ~ / Library / MobileDevice / Cung cấp \ Profiles / làm việc cho tôi mặc dù.
Raphael Pinel

11

Tìm thấy một trường hợp khác dẫn đến Certificate has either expired or has been revokedlỗi máu Xcode 9. Nếu bạn đang cố ký với chứng chỉ hợp lệ nhưng bạn có một chứng chỉ bị thu hồi khác trong cùng một nhóm trên móc khóa của bạn, Xcode sẽ ném lỗi này. Để kiểm tra xem bạn có bị thu hồi chứng chỉ không Xcode -> Preferences -> Accounts -> Your Apple ID -> Your Team -> Manage Certificates. Xóa chứng chỉ bị thu hồi với Keychain Accessgiải quyết này. Trông giống như một lỗi ký mã khác trong Xcode.


Đây là một trong những làm việc cho tôi. Tôi đã tự tìm ra giải pháp, nhưng tôi rất vui vì nó đã được chia sẻ
Gee.E 23/2/18

3

Trong Xcode 8,

  1. Chuyển đến Tùy chọn-> Tài khoản
  2. Nhấn vào tài khoản của bạn
  3. Nhấp vào "Xem chi tiết"
  4. Xóa hồ sơ mà bạn cần
  5. Nhấp vào "Tải xuống tất cả" ở góc dưới bên trái.

Điều này đã giải quyết nó cho tôi, ngoại trừ tôi phải nhấn "Tải xuống tất cả" như 3 lần vì các thông báo lỗi ngẫu nhiên.
sudo

2

-Mở móc khóa - Kiểm tra tất cả các chứng chỉ bằng cách chọn nó. - Kiểm tra trạng thái nếu nó hợp lệ hay không. -Nếu chứng chỉ không hợp lệ thì nhấp chuột phải vào nó và xóa chứng chỉ đó


2

Một vấn đề mới với Xcode 8, điều làm việc với tôi là tắt hộp kiểm "tự động quản lý ký" trên tab Chung cho mục tiêu, sau đó bật lại.

Điều này khởi tạo một trình hướng dẫn trên máy bay để thiết lập mọi thứ chính xác cho Xcode 8.


Điều này hiệu quả với tôi, nhưng cho đến khi tôi cũng khởi động lại máy Mac của mình, tại thời điểm đó (khi bắt đầu XCode), một hộp thoại cung cấp cho tôi tùy chọn thu hồi chứng chỉ ... Tôi đã làm, sau đó bật quản lý ký tự động (mà tôi đã bỏ chọn trước khi khởi động lại). +1 vì không phải xóa bất kỳ chứng chỉ nào!
kwishnu

2

Điều cuối cùng làm việc cho tôi là tắt và khởi động lại MacBook, sau khi tải xuống hồ sơ cung cấp mới nhất.


Làm việc cho tôi là tốt. Nhưng tôi tự hỏi, vấn đề thực sự là gì.
umairhhh

2

Tôi chỉ bỏ chọn "Tự động quản lý ký và kiểm tra lại bằng cách chọn Nhóm và nó hoạt động với tôi nhập mô tả hình ảnh ở đây


2

Tôi đã gặp sự cố này và nó trông giống như một lỗi trong hệ thống xây dựng mới 10.x của xcode .

  1. Chuyển đến Tệp> Cài đặt dự án Thay đổi hệ thống Xây dựng để sử dụng Legacy build system.

  2. Làm sạch sâu dự án bằng cách giữ Tùy chọn (⎇) + Shift (⇧) + Lệnh (⌘) + K hoặc giữ Tùy chọn (⎇) và chọn Sản phẩm> Làm sạch Thư mục Xây dựng

  3. Chạy trên thiết bị


2

Trong Xcode 11 .3.1, giao diện đã thay đổi từ tất cả các câu trả lời hiện tại.

  1. Chuyển đến menu "Xcode"> Tùy chọn> Tài khoản.
  2. Chọn ID Apple thích hợp ở bên trái cho dự án.
  3. Nếu cấu hình vẫn hoạt động, nhấp vào "Quản lý chứng chỉ".
  4. Nếu có bất kỳ chứng chỉ bị thu hồi nào, nhấp chuột phải vào (các) chứng chỉ bị thu hồi và "Xóa chứng chỉ". Trong ảnh chụp màn hình đính kèm, chứng chỉ được đóng hộp màu đỏ sẽ bị xóa.

Thu hồi chứng chỉ ảnh chụp màn hình

Xóa chứng chỉ "Ngày tạo" mới nhất sẽ làm mới chứng chỉ của bạn, nhưng xóa tất cả các chứng chỉ bị thu hồi được khuyến nghị.

Sau khi xóa (các) chứng chỉ bị thu hồi, bạn sẽ có thể xây dựng lại ứng dụng.


1

Sau tất cả các bước trên sạch và Rebuild cũng là một yếu tố.


1

Khi không xóa và tải xuống lại các cấu hình, cũng không "Làm sạch" giúp tôi làm điều này:

Tùy chọn> Tài khoản> ID Apple> chọn acc của bạn > chọn nhóm của bạn > Xem chi tiết ...> đặt lại danh tính ký của bạn (Phát triển iOS trong trường hợp của tôi).

Điều này luôn làm việc cho tôi.


có thể xác nhận điều này hiệu quả với tôi khi mọi câu trả lời / giải pháp khác đều thất bại, ngoài ra tôi cũng đã tải xuống tất cả các hồ sơ
hajn

3
Không thấy "Xem chi tiết" và không "Đặt lại danh tính ký tên của bạn"
gman

@gman, bạn nói đúng, họ đã thay đổi UI một lần nữa. Bây giờ tôi không chắc làm thế nào để làm điều đó.
Alexander Sosnovshchenko

1

1. Thay đổi cài đặt Thời gian Mac của bạn thành Tự động (Kiểm tra tùy chọn ngày và giờ mở tự động đặt ngày và giờ tự động).

2.Sau đó đi đến Mã X của bạn, Làm sạch và Chạy Mã.

3.Nếu không thành công, hãy đăng xuất khỏi Hồ sơ Apple của bạn và xóa tất cả Hồ sơ cung cấp được tạo tự động trong XCode - Tùy chọn và Di chuyển tất cả các cấu hình Cung cấp vào thùng rác và tải xuống dưới dạng tệp mới. Sau đó đăng nhập lại và chạy Mã của bạn.


1

Nếu bạn có mục tiêu kiểm tra máy chủ mà bạn chạy trên thiết bị, hãy đảm bảo rằng nó sử dụng cùng một danh tính ký mã mà mục tiêu ứng dụng sử dụng. Nếu không, bạn sẽ phải dọn dẹp khi bạn chuyển đổi giữa kiểm tra và gỡ lỗi ứng dụng.

Tôi đã gặp vấn đề này trong Xcode 11.4.1 khi chúng tôi tắt đăng nhập mã trong mục tiêu thử nghiệm máy chủ của chúng tôi dưới dạng nâng cao thời gian xây dựng. Khi tôi bật lại mã đăng nhập cho thử nghiệm máy chủ, tôi không còn gặp phải sự cố này khi chuyển đổi giữa việc chạy mục tiêu thử nghiệm máy chủ và ứng dụng!


0

đổi tên danh mục của bạn, không chứa Điểm thập phân & 0 (không).

như thế này, tôi giải quyết nó


0

Không có giải pháp nào được cung cấp cho đến nay vẫn hoạt động (mặc dù tất cả đều đúng) và xóa dự án Xcode khỏi đĩa và sao chép lại từ repo đã giải quyết nó cho tôi.


0

Đôi khi, trong Xcode 8, bạn có thể thấy mình đang trong chu kỳ thu hồi-tái tạo, trong đó bạn để Xcode 8 "sửa" chứng chỉ và cung cấp, sau đó Xcode thấy các chứng chỉ mới / được tái tạo cũng không hợp lệ và bạn quay lại thu hồi và nó cứ xảy ra

Trong những trường hợp như vậy, hãy kiểm tra thời gian MacOS của bạn! Nếu bạn đặt nó vào một thời điểm khác, không phải thời gian thực hiện tại, chứng chỉ mới có thể luôn "chưa" có hiệu lực.


0

Đó không phải là một vấn đề lớn mà tôi phải đối mặt. Chỉ cần làm sạch dự án và khởi động lại xcode của bạn !! Hy vọng nó sẽ làm việc cho bạn! Nó làm việc cho tôi. :)

Hoặc Trước hết, làm sạch dự án bằng cách giữ phím Shift (⇧) + Lệnh (⌘) + K hoặc Chọn sản phẩm> Làm sạch

Sau đó

Chuyển đến Menu XCode> Tùy chọn

Chọn Tài khoản> Nhóm> Xem chi tiết

Chọn bất kỳ hồ sơ cung cấp nào từ danh sách Hồ sơ cung cấp

Nhấp chuột phải > Chọn Hiển thị trong Finder . Sau đó, bạn sẽ thấy tất cả các danh sách hồ sơ cung cấp

Chọn tất cả danh sách cung cấp từ thư mục và di chuyển nó vào thùng rác

Tải xuống Tất cả các hồ sơ cung cấp bằng cách nhấp vào Tải xuống Tất cả bên dưới danh sách Hồ sơ cung cấp.

Bây giờ, Chạy lại và nó sẽ hoạt động!


0

Với Xcode Version 10.1tôi đã giải quyết với các bước sau:

  1. Tới Xcode, Preferencesvà chọn Accountstab
  2. Trong phần tài khoản, nhấp vào bánh răng ở góc dưới bên trái của góc cửa sổ và sau đó nhấp vào Export Apple ID and Code Signing Assets... xuất dữ liệu này trong một tệp, ví dụTest.developerprofile
  3. Xóa hồ sơ mà bạn đang sử dụng
  4. Nhấp lại vào bánh răng chọn Import Apple ID and Code Signing Assets...và chọn tệp đã xuất trước đó của bạnTest.developerprofile
  5. Bây giờ thực hiện một Clean( Shift (⇧) + Lệnh (⌘) + K ) và a Build( Lệnh (⌘) + B )
  6. Chạy lại

0

Tôi đã gặp vấn đề này sau khi thay đổi tài khoản Email của mình.

Sau khi thử rất nhiều giải pháp khả thi, cách duy nhất hiệu quả là chỉ xóa chứng chỉ được tạo trong ngày đó khỏi tài khoản nhà phát triển Apple của tôi . (Đó không phải là chứng chỉ duy nhất trong tài khoản của tôi) Có vẻ như một chứng chỉ mới được tạo tự động và nó bị xung đột với chứng chỉ chính.


0

Tôi có cùng một vấn đề. Tôi đã giải quyết sau khi làm sạch Project (Shift (⇧) + Lệnh (⌘) + K), thoát Xcode và mở lại.


0

Sử dụng Xcode 10.3

Thực hiện theo các bước sau:

  1. Đi đến https://developer.apple.com
  2. Theo dõi Account>Certificates, Identifiers & Profiles >Devices
  3. Tìm iPhone của bạn từ danh sách và bấm vào nó. Nó sẽ mở trang chi tiết
  4. Vô hiệu hóa và sau đó kích hoạt nó
  5. Đi để Xcodechọn iPhone của bạn và chạy nó

Đừng quên đi Settings> General> Device Managementđể tin tưởng vào tài khoản nhà phát triển



0

Đôi khi "Số nhận dạng gói" trong Xcode đang thay đổi do một số thứ bạn đã tạo. Đảm bảo Mã nhận dạng gói bạn đã xác định trong tài khoản Nhà phát triển Apple của mình giống hệt với mã nhận dạng trong Xcode.


0

Trong trường hợp nó giúp được bất cứ ai: Xcode 11.x tôi cũng đã thu hồi (đã xóa) một chứng chỉ trong tài khoản Nhà phát triển ứng dụng. Sau đó, tôi nghĩ rằng mình cũng đã xóa chứng chỉ trong quyền truy cập Keychain nhưng vẫn nhận được thông báo lỗi khi cố gắng tải lên bản cập nhật ứng dụng lên AppStore.

Sau đó tôi phát hiện ra rằng có hai vị trí riêng biệt trong truy cập móc khóa, trong đó một chứng chỉ được giữ (đủ vui dưới các khóa, một khi đăng nhập được chọn trong móc khóa) và ở một nơi khác là khóa riêng (tất nhiên là theo chứng chỉ vật phẩm trong móc khóa). Tôi chắc chắn rằng cả hai đều bị xóa và bây giờ tất cả đều tốt.

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.