2012-07-13 9 views
7

मेरे पास एक महत्वपूर्ण श्रृंखला में एक प्रमाणपत्र है जिसमें एक निजी कुंजी है। मैं उस कुंजी के लिए एक्सेस कंट्रोल "व्हाइट लिस्ट" में एक एप्लिकेशन जोड़ना चाहता हूं। मुझे पता है कि ग्राफिकल कुंजी श्रृंखला उपकरण का उपयोग करके इसे कैसे किया जाए, लेकिन मैं इसे एक्सकोड बिल्ड स्क्रिप्ट के हिस्से के रूप में कमांड लाइन के माध्यम से करना चाहता हूं।कमांड लाइन के माध्यम से निजी कुंजी के लिए प्रति-अनुप्रयोग पहुंच नियंत्रण संशोधित करें?

मैं जो कह सकता हूं उससे "सुरक्षा" कमांड कमांड लाइन पर कुंजी श्रृंखलाओं में हेरफेर करने का तरीका है, लेकिन मैं मैन पेज से यह नहीं समझ सकता कि मैं इस कार्य को पूरा करने के बारे में कैसे जाऊंगा।

पूर्णता के लिए, यहाँ वास्तव में क्या मैं कुंजी श्रृंखला उपकरण है जो मैं कमांड लाइन के माध्यम से करना चाहते हैं में कार्य करें:

  1. अपनी निजी कुंजी को दिखाने के लिए प्रमाणपत्र पर क्लिक करें।
  2. निजी कुंजी पर राइट-क्लिक करें और "जानकारी प्राप्त करें" मेनू आइटम का चयन करें।
  3. "एक्सेस कंट्रोल" टैब पर क्लिक करें।
  4. सफेद सूची में कोई एप्लिकेशन जोड़ने के लिए "+" बटन पर क्लिक करें।
  5. एप्लिकेशन का चयन करें (मेरे मामले में एक्सकोड में) और "जोड़ें" पर क्लिक करें।

मुझे भी सभी अनुप्रयोगों तक पहुंच की अनुमति देने में रुचि हो सकती है।

उत्तर

4

मुझे नहीं लगता कि security से किसी भी तरह से इस के बाद कुंजी आयात किया गया था करने के लिए है।

-T Specify an application which may access the imported key 
    (multiple -T options are allowed) 

तो मेरे मामले में मैं यह कर कर रहा था:

security import my.key -P mypassword -T /usr/bin/pkgbuild 

और सब कुछ काम किया हालांकि, अगर आप पहली बार के लिए कुंजी आयात कर रहे हैं, तो आप -T ध्वज का उपयोग कर सकते हैं!

0

अस्वीकरण

मैं ईमानदार यह शायद सबसे अच्छी जगह इस पोस्ट करने के लिए नहीं है कर रहा हूँ ... लेकिन मैं पर इस (और कई अन्य) और अधिक या कम एक ही समस्या के साथ प्रविष्टियों ठोकर खाई। https://stackoverflow.com/a/34388302/359100 भी देखें। लेकिन चूंकि मैं मेरे CLI के माध्यम से आयात करने के लिए एक समाधान है जो अन्य लोगों को जो दूरस्थ सत्र मेरी समाधान के माध्यम से मदद कर सकता है, कीचेन में निजी कुंजी के लिए पहुँच नियंत्रण को बदलने की कोशिश में मदद कर सकता ...

बी/सी पाया काम नहीं किया था (-T या -A का उपयोग कर)। कीचैन से पहुंच के संबंध में मुझे हमेशा उस पॉप को मिला।

Btw: क्या आप जानते हैं एक बेहतर तो जवाब में, जहां इस संबंध रखता है ... मुझे पता है या उसे वहां ले कृपया ...

समाधान

अपने स्थानीय मशीन पर एक कीचेन बनाएं । जैसे इसे सेब-डेवलपमेंट [.keychain] नाम दें। वहां अपनी निजी कुंजी जोड़ें और आवश्यक पहुंच नियंत्रण असाइन करें (सर्वोत्तम: "सभी को अनुमति दें ...")। अब उस रिचार्ज को अपने रिमोट मैक पर कॉपी करें और इसे किचैन एप्लिकेशन (फाइल/ऐड कीचेन ...) के माध्यम से जोड़ें। सीआई के लिए आप शायद ऐसा कुछ कर सकते हैं:

security unlock-keychain -p YOUR-KEYCHAIN-PASSWORD "${HOME}/apple-development.keychain" 
संबंधित मुद्दे