2012-03-16 13 views
17

Od oglądania notatek do nadchodzącej wersji OSX (tej po OSX Lion) wydaje się, że wszystkie DMG/instalatory muszą być podpisane, nawet jeśli nie są rozprowadzane za pośrednictwem sklepu Mac App Store.Podpisywanie podpórki dla OSX DMG poza OSX/XCode/Mac App Store?

Nie można znaleźć narzędzia wiersza polecenia, aby wykonać to podpisanie, lub dużo dokumentacji o uzyskaniu certyfikatu podpisu bez przesyłania do sklepu App Store.

Czy ktoś może rzucić światło na: 1) Jak uzyskać certyfikat bez dystrybucji aplikacji za pośrednictwem sklepu Mac App Store? 2) Jak podpisać DMG bez używania wbudowanych narzędzi XCode (najlepiej narzędzie wieloplatformowe)?

Dzięki!

+0

Większość szczegółów systemu OS X 10.8 nadal znajduje się w obszarze NDA. – duskwuff

+3

Dobrze, potraktuj to jako "jak podpisać DMG dla Snow Leopard". Zmieniłem też pytanie, by nie wspominać o "rzeczy, która jest pod NDA". Mam nadzieję, że ułatwi to twoje wyzwalanie-szczęście, aby nacisnąć przycisk zamykania, zamiast wkładać coś znaczącego w rozmowę. – psychotik

+0

sprawdź narzędzie "xcrun", które wykonuje najwięcej zadań do podpisywania danych (w tym profile udostępniania). – Eimantas

Odpowiedz

4

Kodowanie jest opisane szczegółowo here i here - w zasadzie musisz uzyskać certyfikat, a następnie możesz podpisać swoją aplikację ... AFAIK nie ma obecnie oficjalnych dokumentów na temat podpisywania samego DMG. Jeśli chodzi o twoje drugie pytanie (podpisywanie na wielu platformach), nie ma takiego narzędzia (przynajmniej żadnego oficjalnie obsługiwanego przez Apple). Jeśli chodzi o informacje dotyczące przyszłych wersji OS X, gorąco polecam zadawanie pytań na odpowiednich forach firmy Apple (zazwyczaj są też fora poświęcone sprawom związanym z NDA).

4

To bardzo proste:

CODESIGN_IDENTITY='Name of Code Sign Cert' # Found in Keychain Access 

codesign -s "$CODESIGN_IDENTITY" -v path/to/YourApp.app 

Następnie na dmg:

codesign -s "$CODESIGN_IDENTITY" -v path/to/YourApp.dmg 

To działa nawet na tylko do odczytu CMBG jak UDZO.

+0

wow, jak działa podpisywanie DMG? czy to hfs + metadane? –

2

Podpisanie Disk Images (źródło: Apple)

obrazy dysków mogą być podpisane przy użyciu codesign narzędzie na MacOS 10.11.5 i nowszej. Pozwala to na sprawdzenie całego obrazu dysku przez Gatekeepera przy pierwszym podłączeniu.

Strażnik weryfikuje również zawartość obrazu dysku.

Obrazy dysków powinny być podpisane tylko za pomocą identyfikatora aplikacji ID programisty.

na MacOS Sierra i później spctl mogą być wykorzystane do oceny podpisu obrazu dysku, podobnie jak to:

$ spctl -a -t otwarty --context kontekst: podstawowy podpis -v MyImage.dmg /Users/me/Downloads/MyImage.dmg: akceptowane source = ID Twórca

Uwaga: obraz dysku podpisana na OS X 10.11.5 lub 10.11.6 może nie być w stanie zostać ponownie podpisany. W tej sytuacji operacja okaże się sukcesem, ale podpis będzie nieważny. Jeśli napotkasz ten warunek, zarejestruj nową (niepodpisaną) kopię obrazu w systemie MacOS Sierra lub nowszym.