ใบรับรองนี้มี Apple Push Services ของผู้ออกที่ไม่ถูกต้อง


465

ฉันสร้างใบรับรองเพื่อเปิดใช้งาน Push Services ในแอปของฉัน แต่ทุกครั้งที่ฉันพยายามเพิ่มใบรับรองใน Keychain ของฉันหลังจากเพิ่มใบรับรองแล้วจะแสดงข้อผิดพลาดดังต่อไปนี้:

ใบรับรองนี้มีผู้ออกที่ไม่ถูกต้อง

ป้อนคำอธิบายรูปภาพที่นี่



3
ตรวจสอบหนึ่งstackoverflow.com/a/35406327/5512225
Avaan

52
หมายเหตุสำหรับผู้ที่ลงคะแนนให้ปิด: นี่เป็นแบบทรอปิคอลเนื่องจากเป็นเรื่องเกี่ยวกับเครื่องมือที่โปรแกรมเมอร์ใช้งาน
Ian Ringrose

ผู้อ่านควรทราบว่าปัญหานี้ไม่ได้เฉพาะเจาะจงสำหรับบริการพุช แต่พบอย่างเท่าเทียมกันสำหรับใบรับรอง iOS และ Mac Developer และ Distribution ที่หมดอายุ (วิธีแก้ปัญหาทำงานได้ดีพอ ๆ กันสำหรับสิ่งเหล่านี้)
David

ขอแสดงความยินดีกับคำถามที่เกี่ยวข้องมากที่สุด Q นี้เชื่อมโยงกับเครื่องมือ CI มาตรฐานอุตสาหกรรมสำหรับ fastlane iOS ในระหว่างขั้นตอนสำหรับการดาวน์โหลดรหัสการเซ็นชื่อรหัสที่เรียกว่าการจับคู่
Sajjon

คำตอบ:


621

ฉันคิดว่าฉันหาอันนี้แล้ว ฉันนำเข้าใบรับรอง WWDR ใหม่ที่หมดอายุในปี 2566แต่ฉันยังคงประสบปัญหาในการสร้างและใบรับรองนักพัฒนาของฉันยังคงแสดงข้อผิดพลาดของผู้ออกที่ไม่ถูกต้อง

  • ในการเข้าถึงพวงกุญแจให้ไปดู -> แสดงใบรับรองหมดอายุ จากนั้นในพวงกุญแจเข้าสู่ระบบของคุณเน้นใบรับรอง WWDR ที่หมดอายุแล้วและลบออก
  • ฉันยังมีใบรับรองหมดอายุเหมือนกันใน Keychain System ของฉันดังนั้นฉันจึงลบออกจากที่นั่นด้วย (สำคัญ)

หลังจากลบใบรับรองที่หมดอายุจากการเข้าสู่ระบบและระบบพวงกุญแจฉันก็สามารถสร้างสำหรับการกระจายอีกครั้ง


5
ขอบคุณมาก. สิ่งนี้ใช้ได้สำหรับฉันเช่นกัน เป็นสิ่งสำคัญที่จะลบใบรับรองที่หมดอายุออกจากทั้งการเข้าสู่ระบบและระบบพวงกุญแจ
dfmuir

37
ทำตามคำแนะนำก่อนหน้านี้เพื่อลบตาม 'แสดงใบรับรองที่หมดอายุ' แต่เข้าสู่ระบบแล้วเท่านั้น การลบจากระบบก็ใช้กลอุบาย
markdwhite

13
โปรดทราบว่าคุณจำเป็นต้องลบออกจากระบบด้วย
Soufiane.ess

5
สำหรับฉันฉันมีใบรับรองใหม่แล้ว (หมดอายุในปี 2566) แต่ฉันก็มีใบรับรองเก่าที่หมดอายุแล้วด้วย ทั้งคู่อยู่ในพวงกุญแจระบบของฉัน เมื่อฉันลบใบรับรองเก่าฉันสามารถสร้างโดยใช้ใบรับรองการกระจายของฉัน
CoBrA2168

5
การลบใบรับรองที่หมดอายุจากระบบค่อนข้างสำคัญที่สุด
Nitish

256
  1. ดาวน์โหลดhttps://developer.apple.com/certificationauthority/AppleWWDRCA.cer และดับเบิลคลิกเพื่อติดตั้งลงใน Keychain
  2. เลือก "ดู" -> "แสดงใบรับรองที่หมดอายุ" ในแอป Keychain
  3. ยืนยันการเลือกหมวดหมู่ "ใบรับรอง"

    ป้อนคำอธิบายรูปภาพที่นี่

  4. ลบใบรับรองผู้ออกใบรับรองความสัมพันธ์กับผู้พัฒนา Apple Worldwide ที่หมดอายุแล้วจากแท็บ "เข้าสู่ระบบ" และแท็บ "ระบบ"


นี่คือคำตอบของ Apple

ขอขอบคุณที่แจ้งเรื่องนี้แก่ชุมชนและขออภัยสำหรับปัญหาที่คุณพบ ปัญหานี้เกิดจากการมีสำเนาของใบรับรอง WWDR Intermediate ที่หมดอายุในทั้งระบบและพวงกุญแจเข้าสู่ระบบของคุณ ในการแก้ไขปัญหาคุณควรดาวน์โหลดและติดตั้งใบรับรองระดับกลาง WWDR ใหม่ (โดยดับเบิลคลิกที่ไฟล์) ถัดไปในแอปพลิเคชัน Keychain Access ให้เลือก System keychain ตรวจสอบให้แน่ใจว่าได้เลือก“ แสดงใบรับรองที่หมดอายุ” ในเมนูมุมมองจากนั้นลบเวอร์ชันที่หมดอายุของใบรับรองผู้มีอำนาจกลางของ Apple Worldwide Developer Relations Certificate Intermediate (หมดอายุในวันที่ 14 กุมภาพันธ์ 2016) ตอนนี้ใบรับรองของคุณควรปรากฏในการเข้าถึง Keychain และสามารถใช้ได้กับ Xcode สำหรับการส่งไปยัง App Store

https://forums.developer.apple.com/thread/37208


การลบใบรับรองผู้พัฒนา Apple Worldwide ที่หมดอายุจากพวงกุญแจจะช่วยได้ แต่บางครั้งพวงกุญแจไม่ปรากฏว่าคุณออกจากและเปิดพวงกุญแจจากนั้นค้นหานักพัฒนา Apple Worldwide อีกครั้งและตรวจสอบให้แน่ใจว่าคุณควรเลือก Allkeys ต้องใช้เวลามากมายในการแก้ไขปัญหานี้เนื่องจากใบรับรองของ Apple Worldwide Developer ที่หมดอายุนั้นยังคงปรากฏอยู่หลังจากการลบหลายครั้ง
เถ้าแก่

ฉันจำเป็นต้องส่งออกใบรับรองบริการแอปเปิ้ลพุชใหม่หลังจากทำตามขั้นตอนข้างต้นแล้วอัพโหลดในเซิร์ฟเวอร์ของฉันหรือไม่ ทันใดนั้นการแจ้งเตือนแบบพุชไม่ทำงาน
Azik Abdullah

ฉันติดอยู่ในส่วนที่ฉันควรจะลบใบรับรองเก่า - ทำไม่ได้เนื่องจากข้อผิดพลาดของการอนุญาต UNIX - และกระทู้นี้เพิ่งช่วยชีวิตฉัน: stackoverflow.com/questions/35511314/ …
o.shnn

156

นี่ไม่ใช่ปัญหาการพัฒนาจริง ๆ มันเกิดขึ้นเนื่องจากการหมดอายุของแอปเปิ้ลทั่วโลกนักพัฒนาสัมพันธ์ระดับกลางหนังสือรับรองที่ออกโดยแอปเปิ้ลทั่วโลกนักพัฒนาสัมพันธ์ Certificate Authority WWDRCA ออกใบรับรองให้ลงชื่อซอฟต์แวร์ของคุณสำหรับอุปกรณ์ Apple ทำให้ระบบของเรายืนยันว่าซอฟต์แวร์ของคุณถูกส่งมอบให้กับผู้ใช้ตามที่ตั้งใจไว้และไม่ได้ทำการแก้ไข

ในการแก้ไขปัญหานี้คุณต้องทำตามขั้นตอนด้านล่าง:

  1. เปิดการเข้าถึง Keychain
  2. ไปที่มุมมอง -> แสดงใบรับรองที่หมดอายุ

ป้อนคำอธิบายภาพที่นี่

  1. ไปที่ระบบใน Keychain ป้อนคำอธิบายภาพที่นี่

  2. ที่นี่คุณจะพบว่า "หน่วยงานผู้ออกใบรับรองความสัมพันธ์นักพัฒนาทั่วโลกของ Apple" ถูกทำเครื่องหมายว่าหมดอายุแล้ว ดังนั้นลบทิ้ง ตรวจสอบภายใต้แท็บเข้าสู่ระบบและลบ WWDRCA ที่หมดอายุ

  3. ดาวน์โหลดใบรับรองระดับกลาง WWDRใหม่ได้จากที่นี่ (ใบรับรองระดับกลางของผู้พัฒนาสัมพันธ์ Apple ทั่วโลกที่ได้รับการรับรองจะหมดอายุในวันที่ 7 กุมภาพันธ์ 2566)

  4. ติดตั้งโดยดับเบิลคลิกที่มัน

หากคุณยังคงประสบปัญหากับแอพ iOS, แอพ Mac, ส่วนขยาย Safari, Apple Wallet และการแจ้งเตือนแบบพุชของ Safari โปรดไปที่ลิงก์หมดอายุนี้

ใบรับรองระดับกลางของนักพัฒนาสัมพันธ์ทั่วโลกของ Apple จะหมดอายุในไม่ช้าและเราได้ออกใบรับรองการต่ออายุซึ่งจะต้องรวมเมื่อลงชื่อ Apple Wallet Passes ใหม่ทั้งหมดแพคเกจพุชสำหรับการแจ้งเตือน Safari Push และ Safari เสริมเริ่มตั้งแต่ 14 กุมภาพันธ์ 2559

แม้ว่านักพัฒนาซอฟต์แวร์และผู้ใช้ส่วนใหญ่จะไม่ได้รับผลกระทบจากการเปลี่ยนแปลงใบรับรองเราขอแนะนำให้นักพัฒนาซอฟต์แวร์ทั้งหมดดาวน์โหลดและติดตั้งใบรับรองที่ต่ออายุในระบบและเซิร์ฟเวอร์ของพวกเขาเพื่อเป็นแนวทางปฏิบัติที่ดีที่สุด แอพทั้งหมดจะยังคงมีอยู่ใน App Store สำหรับ iOS, Mac และ Apple TV


จำเป็นต้องตรวจสอบให้แน่ใจว่ามันถูกลบจริงๆ .. ตอนนี้ทำงาน ขอบคุณ
preetam

มันสนุก. ฉันมีปัญหากับใบรับรองนั้นด้วย แต่ในทางกลับกัน
CocoaBean

2
ฉันติดค้างอยู่พยายามลบใบรับรองเก่า - ทำไม่ได้เนื่องจากข้อผิดพลาดการอนุญาต UNIX - และเธรดนี้เพิ่งช่วยชีวิตฉัน: stackoverflow.com/questions/35511314/ …
o.shnn

101

นี่คือวิธีที่เราแก้ไขสิ่งนี้

ขั้นตอนที่ 1: การเข้าถึง Open Keychain ลบ "ผู้มีสิทธิ์ออกใบรับรองความสัมพันธ์กับนักพัฒนาทั่วโลกของ Apple" (ซึ่งจะหมดอายุในวันที่ 14 กุมภาพันธ์ 2016) จากทั้ง " เข้าสู่ระบบ " และ " ระบบ " หากคุณหาไม่พบให้ใช้“ แสดงใบรับรองที่หมดอายุ” ในเมนูมุมมอง

ขั้นตอนที่ 2: ดาวน์โหลดนี้และเพิ่มการเข้าถึงพวงกุญแจ -> ใบรับรอง (ซึ่งหมดอายุในวันที่ 8 กุมภาพันธ์ 2023)

ขั้นตอนที่ 3: ทุกอย่างควรกลับมาเป็นปกติและทำงานได้ในขณะนี้

อ้างอิง: ความสัมพันธ์กับผู้พัฒนาสำหรับ Apple ทั่วโลกการหมดอายุใบรับรองระดับกลาง


1
ฉันติดอยู่ที่ที่ฉันควรจะลบใบรับรองเก่า - ไม่สามารถทำได้เนื่องจากข้อผิดพลาดการอนุญาต UNIX - และเธรดนี้เพิ่งช่วยชีวิตของฉัน: stackoverflow.com/questions/35511314/…
o.shnn

1
ขอบคุณมันใช้งานได้ดี ก่อนที่จะลบใบรับรองนั้นฉันมีปุ่มรีเซ็ตในบัญชี Xcode ถัดจากข้อมูลประจำตัวที่เซ็นชื่อของฉัน แต่การกดปุ่มเหล่านั้นไม่ได้ทำอะไรเลย หลังจากลบใบรับรอง "ผู้มีสิทธิ์ออกใบรับรองความสัมพันธ์นักพัฒนาสัมพันธ์ทั่วโลกของ Apple" ที่หมดอายุแล้วฉันสามารถกดรีเซ็ตในแต่ละรายการใน Xcode และลบออก (ปุ่มรีเซ็ตหายไป) ในหมายเหตุด้าน ... พระเจ้าของฉัน Apple คุณไม่สามารถทำให้สิ่งนี้ทำงานได้ดีขึ้นหรือไม่? ฉันสาบานว่าเวลานักพัฒนาหลายหมื่นชั่วโมงได้สูญเสียไปกับปัญหาใบรับรอง / โปรไฟล์ / การลงชื่อที่บ้าเหล่านี้ ... เพียงแค่ทำให้มันใช้งานได้ !!
Ben Stahl

37

ในพอร์ทัลของ Apple Developer ให้เพิ่มใบรับรองใหม่และเมื่อถามว่า "คุณต้องการใบรับรองประเภทใด" เลือก "ใบรับรองนักพัฒนาความสัมพันธ์ WorldWide" สร้างใบรับรองใหม่ดาวน์โหลดและติดตั้ง ทันทีที่คุณทำเช่นนั้นคุณจะไม่เห็นข้อความที่คุณอธิบายอีกต่อไป

แก้ไข:
สามารถดาวน์โหลดใบรับรองได้จากหน้าต่อไปนี้: https://www.apple.com/certificateauthority/ คุณสามารถเลือกหนึ่งในสองใบรับรองต่อไปนี้: "ใบรับรอง WWDR (หมดอายุ 02/07/23)" หรือ "ใบรับรอง WWDR (หมดอายุ 02/14/16) "


1
ไม่มีตัวเลือกดังกล่าวจะปรากฏขึ้นเมื่อเราเพิ่มใบรับรองใหม่
Aamir

8
ดาวน์โหลดและติดตั้งใบรับรองใหม่ แต่ยังคงมีปัญหาเดียวกัน - มีอะไรอีกที่ต้องทำ?
Mr Zorn

@MrZorn ฉันมีปัญหาเดียวกัน แต่เพียง FYI ฉันพยายามที่จะส่งออก p12 และมันก็ทำงานได้
superarts.org

4
@MrZorn U ต้องไปดู -> รายการหมดอายุ -> ลบใบรับรอง WWDR เก่า
Tj3n

32

ทำตามขั้นตอนด้านล่าง:

  1. ดาวน์โหลดและติดตั้งจากที่นี่ ดับเบิลคลิกและติดตั้ง
  2. เลือก "ดู" -> "แสดงใบรับรองที่หมดอายุ" ในแอป Keychain
  3. ลบใบรับรองหน่วยงานผู้ออกใบรับรองความสัมพันธ์นักพัฒนาทั่วโลกของ Apple ออกจากแท็บ "เข้าสู่ระบบ" และแท็บ "ระบบ" ในแอป Keychain

หากคุณไม่พบใบรับรอง WWDR ของคุณในแท็บเข้าสู่ระบบหรือระบบให้เลือกหมวดหมู่ " รายการทั้งหมด " ทางด้านซ้าย ส่วนใหญ่คุณจะได้รับใบรับรอง WWDR ที่หมดอายุที่นี่และคุณสามารถลบออกได้ ใบรับรองที่หมดอายุจะแสดงด้วยเครื่องหมายดอกจันสีแดงเสมอ


28

หากคุณพบข้อผิดพลาด "ใบรับรองนี้มีผู้ออกไม่ถูกต้อง" สำหรับใบรับรองทั้งหมดของคุณให้ทำตามขั้นตอนต่อไปนี้

ขั้นตอน:

  • เปิด Keychain และคลิกที่ Login -> All items จากแผงด้านซ้าย
  • ตอนนี้คลิกที่มุมมอง -> แสดงใบรับรองที่หมดอายุจากเมนูการนำทางด้านบน
  • ค้นหา "ผู้ให้บริการออกใบรับรองความสัมพันธ์กับผู้พัฒนาสัมพันธ์ทั่วโลกของ Apple" และลบใบรับรองที่หมดอายุ
  • หลังจากลบใบรับรองที่หมดอายุแล้วให้ไปที่ URL ต่อไปนี้และดาวน์โหลดใบรับรองใหม่ https://developer.apple.com/certificationauthority/AppleWWDRCA.cer https://developer.apple.com/certificationauthority/AppleWWDRCA.cer
  • ดับเบิลคลิกที่ใบรับรองที่ดาวน์โหลดใหม่และติดตั้งในพวงกุญแจของคุณ
  • ตรวจสอบอีกครั้ง: แสดงรายการใบรับรองที่หมดอายุโดยทำตามขั้นตอนที่ 3
  • ขณะนี้คุณมี "ผู้ให้บริการออกใบรับรองความสัมพันธ์นักพัฒนาทั่วโลกของ Apple" ที่ถูกต้องซึ่งมีวันหมดอายุ 2023-02-07

อ้างอิง:


23

ตามที่อธิบายไว้ในการหมดอายุใบรับรองระดับกลางสำหรับนักพัฒนาสัมพันธ์ทั่วโลกของ Apple :


ใบรับรองระดับกลางนักพัฒนาความสัมพันธ์สำหรับผู้พัฒนา Apple Worldwide ก่อนหน้านี้ใบรับรองระดับกลางหมดอายุในวันที่ 14 กุมภาพันธ์ 2559และตอนนี้ต้องใช้ใบรับรองที่ต่ออายุเมื่อลงชื่อ Apple Wallet Passes แพคเกจพุชสำหรับการแจ้งเตือน Safari Push ส่วนขยาย Safari และการส่งไปยัง App Store, Mac App Store และ App Store สำหรับ Apple TV

นักพัฒนาทั้งหมดควรดาวน์โหลดและติดตั้งใบรับรองต่ออายุบนระบบและเซิร์ฟเวอร์ของพวกเขา แอพทั้งหมดจะยังคงมีอยู่ใน App Store สำหรับ iOS, Mac และ Apple TV


ใบรับรองที่ถูกต้องใหม่จะมีลักษณะดังนี้:

ผู้มีอำนาจออกใบรับรองสัมพันธ์นักพัฒนาสัมพันธ์ทั่วโลกของ Apple

มันจะแสดง (ใบรับรองนี้ถูกต้อง) ด้วยเครื่องหมายสีเขียว

ดังนั้น, ไปที่การเข้าถึงพวงกุญแจของคุณ เพียงลบใบรับรองเก่าและแทนที่ด้วยใบรับรองใหม่ ( ใบรับรองที่ต่ออายุแล้ว ) ตามที่ Apple อธิบายไว้ในเอกสาร ปัญหาส่วนใหญ่เกิดขึ้นกับบริการแจ้งเตือนและส่วนขยายของ Apple เท่านั้นตามที่อธิบายไว้ในเอกสาร Apple

คุณสามารถตรวจสอบรายชื่อใบรับรองได้ที่https://www.apple.com/certificateauthority/

รายการเพิกถอนใบรับรอง:

รายการเพิกถอนใบรับรอง

ตอนนี้ใบรับรองที่อัปเดตนี้จะหมดอายุใน 2023-02-08


หากคุณไม่สามารถมองเห็นใบรับรองเก่าแล้วไปที่ระบบพวงกุญแจและจากเมนูแก้ไขและเลือกตัวเลือกที่แสดงใบรับรองหมดอายุ

แสดงใบรับรองที่หมดอายุ

ตอนนี้คุณสามารถเห็นใบรับรองต่อไปนี้ที่คุณต้องลบ:

ลบใบรับรองนี้


20

คุณต้องค้นหาโลกจากแถบค้นหาด้านบนขวาและลบใบรับรองที่หมดอายุ ให้แน่ใจว่าคุณเลือกเข้าสู่ระบบและรายการทั้งหมด

ป้อนคำอธิบายภาพที่นี่


16

เพียงลองตั้งวันที่ในท้องถิ่นก่อนวันที่ 14 ก.พ. ใช้ได้กับฉัน! ไม่ใช่วิธีการแก้ปัญหาที่สมบูรณ์ แต่เป็นการแก้ปัญหาชั่วคราว


อย่างที่คุณพูดนี่ไม่ใช่วิธีแก้ปัญหา แต่ก็ยังน่าสนใจว่าทำไมฉันจะไม่ลงคะแนน
Martin

6
  • ใบรับรองของฉันทั้งหมดได้รับการติดตั้งและวันหมดอายุก็ใช้ได้
  • ฉันลบและติดตั้งใบรับรองทั้งหมดของฉันใหม่แล้วยังไม่มีโชค

ในท้ายที่สุดฉันคลิกขวาที่ใบรับรองและเลือก "รับข้อมูล" ภายใต้ส่วนความเชื่อถือฉันเลือก "เชื่อถือได้ตลอดเวลา" และสิ่งนี้สามารถแก้ไขปัญหาของฉันได้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.