หยุด "การเข้าถึงเครื่องมือของนักพัฒนาจำเป็นต้องควบคุมกระบวนการอื่นเพื่อแก้ไขข้อบกพร่องเพื่อดำเนินการต่อ" การแจ้งเตือน


124

ฉันเพิ่งอัปเกรดเป็น 10.7.3 และเมื่อฉันพยายามดีบักโปรเจ็กต์ iOS ของฉันในโปรแกรมจำลองเป็นครั้งแรกหลังจากเข้าสู่ระบบฉันจะได้รับการแจ้งเตือนสองครั้งต่อไปนี้:

การเข้าถึงเครื่องมือสำหรับนักพัฒนาจำเป็นต้องควบคุมกระบวนการอื่นเพื่อแก้ไขข้อบกพร่องเพื่อดำเนินการต่อ  พิมพ์รหัสผ่านของคุณเพื่ออนุญาตสิ่งนี้

gdb-i386-apple-darwin จำเป็นต้องควบคุมกระบวนการอื่นสำหรับการดีบักเพื่อดำเนินการต่อ  พิมพ์รหัสผ่านของคุณเพื่ออนุญาตสิ่งนี้

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

แก้ไข

ฉันได้ตรวจสอบแล้วว่าฉันเป็นสมาชิกของ_developerกลุ่มโดยใช้id -aไฟล์.


3
ฉันเชื่อว่าคุณต้องเพิ่มตัวเองใน_developerกลุ่มเช่นนี้stackoverflow.com/questions/1837889/…แต่ถ้าคุณเป็นส่วนหนึ่งของ_developerกลุ่มอยู่แล้ว(เหมือนฉัน) ฉันก็ไม่แน่ใจว่ามีอะไรเปลี่ยนแปลง ฉันรู้ว่า/etc/authorizationไฟล์มีการเปลี่ยนแปลงใน 10.7.3 และการทดสอบบางส่วนแสดงให้เห็นว่าฉันสามารถกำจัดพรอมต์บางส่วนได้โดยการแก้ไขเพื่อallowดีบักเสมอแต่ด้วยกฎเริ่มต้นดูเหมือนว่าจะล้มเหลวใน_developerการทดสอบกลุ่ม :( ฉันกำลังสังเกตสิ่งที่ฉันพบดังนั้นคนอื่นอาจขุดรายละเอียดเพิ่มเติมและทำความเข้าใจกับสิ่งที่พังมากขึ้น
Cyberfox

3
ง่อยว่านี่ปิด
Walrus the Cat

ไม่แน่ใจว่าเหตุใดจึงมีการแปลมากเกินไป พบคำถามซ้ำกัน (พร้อมคำตอบ) ที่นี่: stackoverflow.com/a/11416025/2063546
Ian

นี่ถามก่อนเลย อีกอันคือรายการที่ซ้ำกัน
Heath Borders

คำตอบ:


199

มีวิธีแก้ปัญหาที่ง่ายกว่านี้มาก ลองเรียกใช้คำสั่งต่อไปนี้:

sudo /usr/sbin/DevToolsSecurity --enable

ขอบคุณ! นี่มันเยี่ยมมาก หน้าคนสำหรับDevToolsSecurityอธิบายว่าเกิดอะไรขึ้น
zmccord

12
ทำงานให้ฉัน แต่ทำไม Apple ถึงเพิ่มอุปสรรคนี้? คุณอัปเกรดจาก XCode เวอร์ชันที่ใช้งานได้และพบว่าตัวเองต้องใช้ Google ข้อความแสดงข้อผิดพลาดแปลก ๆ ทันทีพยายามค้นหาวิธีใช้ XCode ต่อไป บริการแย่มาก.
Mike Gledhill

ทำงานให้ฉันเหมือนมีเสน่ห์ ขอบคุณมาก!
fmquaglia

12
ไม่ได้ผลสำหรับฉันเช่นกัน:Developer mode is already enabled.
ยา

สิ่งนี้ใช้ได้กับฉันกับ Xcode 8 บน iMac ที่เรียกใช้ตัวแทน TeamCity บน Mac OS Sierra
Ben Thomas

18

เปิดใช้งานโหมด develoer: ใน Terminal ให้รันสิ่งนี้: DevToolsSecurity -enable


เพียงแค่เรียกใช้คำสั่ง 'DevToolsSecurity' จะเป็นการเปิดใช้งานตามค่าเริ่มต้น ไม่จำเป็นต้องผ่าน - เปิดใช้งานอาร์กิวเมนต์
Vinayak

ไม่ทำงานกับ Eclipse CDT กับดีบักเกอร์ GDB Developer mode is already enabled.
Danijel

12

คำตอบของ Per Zev Eisenberg การติดตั้ง Xcode 4.2.1 ใหม่ใช้งานได้ อย่างไรก็ตามอาจจะง่ายกว่าเพียงแค่แก้ไข/etc/authorizationไฟล์ด้วยความแตกต่างต่อไปนี้

        <key>system.privilege.taskport.debug</key> 
        <dict>
            <key>allow-root</key>
            <false/>
            <key>class</key>
-           <string>user</string>
+           <string>rule</string>
            <key>comment</key>
            <string>For use by Apple.  WARNING: administrators are advised
             not to modify this right.</string>
            <key>default-button</key>
            <dict>
            ...
            </dict>
            <key>default-prompt</key>
            <dict>
            ...
            </dict>
-           <key>group</key>
-           <string>_developer</string>
            <key>shared</key>
            <true/>
-           <key>timeout</key>
-           <integer>36000</integer>
+           <key>k-of-n</key>
+           <integer>1</integer>
+           <key>rule</key>
+           <array>
+               <string>is-admin</string>
+               <string>is-developer</string>
+               <string>authenticate-developer</string>
+           </array>
        </dict>

1
ฉันได้ทำสิ่งเดียวกันกับด้านบน ปัญหาตอนนี้คือฉันไม่สามารถรับอินเทอร์เน็ต wifi ฉันไม่แน่ใจว่าสิ่งนี้เกิดขึ้นได้อย่างไร
Nareshkumar

1
ฉันได้ลอง DevSecurityTools เพิ่มตัวเองในกลุ่ม _developer และการปรับเปลี่ยนเหล่านี้ ฉันยังคงได้รับแจ้งให้ให้สิทธิ์เข้าถึง จนถึงตอนนี้ฉันไม่พบสิ่งที่ลบพรอมต์
drekka

1
การเปลี่ยน system.privilege.taskport โดยการดำเนินการsecurity authorizationdb write system.privilege.taskport allowทำให้รหัสผ่านของฉันหายไป
จิน

9

การติดตั้ง Xcode 4.2.1 อีกครั้งหลังจากอัปเกรดเป็น 10.7.3 ดูเหมือนว่าจะได้รับการแก้ไขให้ฉันแล้ว


เราจะต้องทำสิ่งนี้อีกครั้งเมื่อเปิดตัว Mac OS 10.8 หรือ iOS 5.1 Word กำลังทำให้แอป Xcode เป็น. app จริงเพื่อความสะดวกในการอัปเดตผ่าน App Store
Ivan Karpan

Xcode 4.3 ถูกจัดส่งแล้วในลักษณะนี้ ฉันไม่มีปัญหารหัสผ่านนี้เลยตั้งแต่ติดตั้ง
Zev Eisenberg

9

ฉันแก้ไขกฎสำหรับsystem.privilege.taskportและการแจ้งเตือนไม่ปรากฏขึ้นอีกต่อไป

  1. /etc/authorizationเปิดแฟ้ม
  2. system.privilege.taskportค้นหากฎ ภายใต้บรรทัด<key>class</key>ให้เปลี่ยน<string>rule</string>เป็น<string>allow</string>

การโพสต์ความแตกต่างนั้นดีกว่าเล็กน้อย
Heath Borders

ฉันลองทำตามคำแนะนำอื่น ๆ ทั้งหมดแล้วและนี่เป็นคำแนะนำเดียวที่ใช้ได้ผล ขอบคุณ
drekka

วิธีนี้อาจได้ผล แต่อาจเปิดช่องโหว่ด้านความปลอดภัยในแซนด์บ็อกซ์ของคุณ ฉันระวังนิดหน่อย
13

ขอบคุณ! แต่ / etc / authorization เลิกใช้กับ Mavericks คุณรู้หรือไม่ว่าตอนนี้ฉันควรใช้อะไร?
Slabko

1
เช่นเดียวกับที่ฉันแสดงความคิดเห็นข้างต้นมันยังทำงานได้โดยดำเนินการsecurity authorizationdb write system.privilege.taskport allowในบรรทัดคำสั่ง
จิน

5

ฉันมีปัญหาเดียวกันกับ mac 10.12.5 & Xcode9 ของฉันเรียกใช้คำสั่งนี้:

sudo security authorizationdb write system.privilege.taskport allow 

จากนั้นป้อนรหัสผ่านของคุณ .. ตรวจสอบว่ายังแจ้งให้คุณทราบ โชคดี..


สิ่งนี้ช่วยด้วย Eclipse CDT ขอบคุณ
Danijel

0

มีการแก้ไขบางอย่างในไฟล์ / etc / การอนุญาตฉันเป็น Lion ที่ไม่มี v10.7.3 และมีรหัสต่อไปนี้

บรรทัด 5807-5814

    <key>k-of-n</key>
    <integer>1</integer>
    <key>rule</key>
    <array>
        <string>is-admin</string>
        <string>is-developer</string>
        <string>authenticate-developer</string>
    </array>

หลังจากการอัปเดตไฟล์มีการแก้ไขมากมายเนื่องจากภาษาใหม่รองรับ แต่บรรทัดที่เกี่ยวข้องกับการอนุญาตการดีบักแตกต่างจากบรรทัดที่แสดงด้านบนใน

สาย 7675-7676

    <key>group</key>
    <string>_developer</string>

ฉันไม่สามารถใช้ความแตกต่างเหล่านี้กับการติดตั้ง Lion 10.7.3 ของฉันได้เพราะมันเป็นเครื่องจักรสำหรับการผลิตและฉันไม่สามารถเสี่ยงที่จะเสียหายได้

ฉันได้รับอนุญาตอย่างง่ายดายตามที่แสดงจากคำสั่ง id -a

uid=501(dave) gid=20(staff) groups=20(staff),
401(com.apple.access_screensharing),
402(com.apple.sharepoint.group.1),
12(everyone),
33(_appstore),
61(localaccounts),
79(_appserverusr),
80(admin),
81(_appserveradm),
98(_lpadmin),
100(_lpoperator),
204(_developer)

0

ฉันเพิ่งปิดการดีบักใน (แก้ไขรูปแบบ) -> ยกเลิกการทำเครื่องหมายที่ปฏิบัติการดีบัก แต่ฉันยังทำการดีบักทั้งหมดบนคอนโซลอื่นด้วยดังนั้นหากคุณกำลังพัฒนาและต้องการตัวดีบักมันก็จะไม่ช่วย ฉันมีปัญหานี้กับ Xcode 8.2.1 เวอร์ชันเก่าเท่านั้นเนื่องจากฉันใช้รหัสบน Mac เครื่องเก่าโดยใช้ El Capitan

mac และ Xcode เวอร์ชัน 10 ที่ใหม่กว่าดูเหมือนจะไม่มีปัญหานี้


-3

ไม่ต้องใช้รหัส ไม่จำเป็นต้องติดตั้ง xcode ใหม่ ทำตามขั้นตอนเหล่านี้:

1. ปิด xcode

2. เปิดการเข้าถึงพวงกุญแจ

3. ดับเบิลคลิกที่พวงกุญแจของคุณ (ไอคอนรูปกุญแจที่สร้างจาก keychain.p12)

4. ไปที่แผงควบคุมการเข้าถึง (ชื่ออาจไม่ถูกต้อง)

5. เปิดใช้งานแอปทั้งหมดเข้าถึงสิ่งนี้

6.save

7. เรียกใช้โครงการ xcode ของคุณ

8. มันทำงานได้ดี

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