身元不明のデベロッパーによるため、アプリを開くことができません


9

質問:

:ノートこれはことを読み込む前にしてください「に行くためにそれらを伝えるSystem preferences > Security & privacyallow 3rd party applications to run。この問題に対する解決は受け入れられません。

.app有効なMac開発者証明書で署名されたものを作成しました。それでもインターネットからダウンロードして実行すると、セキュリティプロンプトが表示されます。

身元不明のデベロッパーによるため、アプリを開くことができません

これはのcodesign -vvvターミナルダンプです.app

Executable=/Users/me/Desktop/ADRA.app/Contents/MacOS/ADRA
Identifier=unity.Company.ADRA NSW 2016
Format=app bundle with Mach-O thin (i386)
CodeDirectory v=20200 size=178145 flags=0x0(none) hashes=5561+3 location=embedded
Hash type=sha256 size=32
CandidateCDHash sha1=79ecf88721d6387749c1f6b10355c3683ef20eb2
CandidateCDHash sha256=0799e968a18a663a0c08d26d3fb7826017ce5a3a
Hash choices=sha1,sha256
CDHash=0799e968a18a663a0c08d26d3fb7826017ce5a3a
Signature size=4739
Authority=3rd Party Mac Developer Application: Company Pty Ltd (NH73TNDB28)
Authority=Apple Worldwide Developer Relations Certification Authority
Authority=Apple Root CA
Signed Time=20 Apr 2017, 2:46:12 PM
Info.plist entries=14
TeamIdentifier=NH73TNDB28
Sealed Resources version=2 rules=12 files=138
Internal requirements count=1 size=224

これがGatekeeperを通過しない理由がわかりません。何か足りないものはありますか?Appleはさらに何かを必要としますか?


更新1:

@TheDarkKnightは、不正な証明書を使用してに署名していることを示唆しています.app。それらが正しいようにDeveloper ID Application certificate見えるので、私は新しく作成しましたが、明らかに私はグループアカウントの「エージェント」ではないため、「エージェント」が作成するまで待つ必要があります。 「エージェント」がこれを作成するのを待つ他の方法はありませんか?

(Xcodeの場合)[開発者ID]ラジオボタンがグレー表示されている場合は、おそらくグループアカウントを持っています。これらのタイプのアカウントは、「エージェント」ロールが開発者IDを作成することのみを許可します。ここで行き詰まった場合は、グループのApple Developerアカウントを作成した人に連絡してください。

https://developer.mozilla.org/en-US/docs/Mozilla/Signing_Mozilla_apps_for_Mac_OS_X


アップデート2:

だから、私は今日新しい証明書を今日手に入れ、に再度署名し.app、サーバーからダウンロードして実行し、エラーメッセージまだ取得しました。権限は今では正しいようです:

Executable=/Users/me/Downloads/ADRA.app/Contents/MacOS/ADRA
Identifier=com.company.adra
Format=app bundle with Mach-O thin (i386)
CodeDirectory v=20200 size=178133 flags=0x0(none) hashes=5561+3 location=embedded
Library validation warning=OS X SDK version before 10.9 does not support Library Validation
OSPlatform=36
OSSDKVersion=657408
OSVersionMin=656896
Hash type=sha256 size=32
CandidateCDHash sha1=90d2a54162d6d018bf4f7602d7707c8e8e522fc6
CandidateCDHash sha256=dadfe5203d1367ea776f9501025dbd4ce751ee30
Hash choices=sha1,sha256
Page size=4096
CDHash=dadfe5203d1367ea776f9501025dbd4ce751ee30
Signature size=8930
Authority=Developer ID Application: Company Pty Ltd (NH73TNDB28)
Authority=Developer ID Certification Authority
Authority=Apple Root CA
Timestamp=10 May 2017, 3:36:51 pm
Info.plist entries=14
TeamIdentifier=NH73TNDB28
Sealed Resources version=2 rules=12 files=138
Internal requirements count=1 size=184

私は署名して.appいるだけで、この作業を行うために他に何かしなければならないことはありますか?これが機能するまでに待機する必要がある期間はありますか?


更新3:

アップデート2からほぼ1か月が経過しましたが、この問題はまだ見られないため、報奨金が支払われました。


1
DMGダウンロードしたアプリケーションは、コード署名されたディスクイメージに埋め込まれていますか?テストしているmacOSのバージョンは何ですか?
Graham Miln 2017

@GrahamMiln macOSバージョンで返信する必要があります。に署名しませんでしたが.dmg、それに署名する必要もありますか?私はsuccesssoftware.net/2012/08/30/…を参照として使用ており、.dmg追加の署名は必要ないため、署名しなかったと彼らは述べています。
Zze


:で署名をテストしてみてくださいspctl -vvv -a -t open --context context:primary-signature <full path to app or dmg>
グラハム・ミルン

@GrahamMilnコメントをありがとう、私は午前中にこれについてあなたに連絡します!
Zze

回答:


7

大まかに言って、Mac App Storeの外でアプリを配布する場合は、次のことを行う必要があります。

  1. 署名IDを開発者IDに設定します
  2. 開発者ID証明書を作成する
  3. アプリアーカイブを作成する
  4. アプリを検証する
  5. デベロッパーIDで署名されたアプリをエクスポートする
  6. インストーラーパッケージに署名します(お客様のケースには該当しません)
  7. ゲートキーパーを有効にしてアプリの動作をテストし、ゲートキーパーを無効にしてもう一度テストします

このような問題のトラブルシューティングは、OP(この場合はあなた)がどれだけ知っているかなどを簡単に推測できるため、難しい場合があります。質問を読むことから、最初の3つのステップが処理されていると仮定します。

では、アプリの検証方法を再確認するところから始めましょう。

アプリを検証する

開発者IDで署名されたアプリを検証するには、次の手順に従います。

  1. Xcodeで[製品]> [アーカイブ]に移動します
  2. アーカイブオーガナイザーウィンドウが表示されます
  3. 問題のアプリのアーカイブを選択します
  4. クリックしてValidate、ボタン
  5. 検証の方法を選択するように求めるダイアログボックスが表示されます
  6. 開発者ID署名済みアプリケーション検証」オプションを選択します
  7. クリック Next
  8. 次のウィンドウで、ポップアップメニューからチームを選択します
  9. クリック Choose
  10. クリックValidateボタンを

これにより、検証の問題が特定されます。何かが見つかった場合、これが問題(または少なくともその一部)になるため、これを解決する必要があります。

問題が見つからない場合は、以下に進みます。

開発者ID署名付きアプリをエクスポートする

  1. 引き続き[アーカイブの整理]ウィンドウ内で、問題のアプリのアーカイブを選択します
  2. クリックしてExport、ボタン
  3. エクスポートの方法を選択するように求めるダイアログボックスが表示されます
  4. [ 開発者ID署名済みアプリケーションエクスポート ]オプションを選択します
  5. クリック Next
  6. 次のウィンドウで、ポップアップメニューからチームを選択します
  7. クリック Choose
  8. クリックExportボタンを

アプリをエクスポートしたら、ゲートキーパーを有効にしてテストし、ゲートキーパーを無効にしてもう一度テストする必要があります。


答えてくれてありがとう。できるだけ早くこれを試みます。
Zze
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.