問題タブ [productsign]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
macos - 小さい署名付き pkg ファイルを含む mpkg で productsign を使用するには?
Parent.unsigned.mpkgOS X で署名したいという名前の親インストーラーパッケージがありますproductsign。
このファイルには、 、 、Parent.unsigned.mpkgという子パッケージが含まれており、Clang でコンパイルされたコマンドライン バイナリとラッパー スクリプトがインストールされます。A.pkgB.pkgC.pkgbash
Mac 開発者アカウントにサインアップすると、(他の証明書の中でも) ID を持つ開発者 ID インストーラー証明書がセットアップされますABCD1234(この ID は実際には異なり、私の Apple ID に固有のものです)。securityツールを使用してこの ID 値を取得します。
これらの子パッケージのそれぞれに、この ID 値で署名します。これは問題なく進行しているように見えます。
次に、これらの署名済みの子パッケージを元のファイル名に戻します。
親パッケージにアクセスしようとするとproductsign、次の警告メッセージが表示されます。
インストーラーが署名されていることを確認しようとすると、拒否メッセージが表示されます。
こことここに概説されている Apple の指示を使用しています。
署名されていないインストーラーはそのままでも正しく動作しますが、OS X Gatekeeper をバイパスする必要があります。そのため、インストーラー バンドルとコンテンツは正しいように見えます (または、少なくとも正しく動作しています)。
OS X Gatekeeper で動作するデジタル署名されたインストーラーを生成するために、どのような手順または手順が欠けていますか?
macos - productsign mac .pkg インストーラー
拡張子が .pkg の MacOS インストーラーに署名する必要があります。.pfx 証明書があり、それをキーチェーンに追加しました。証明書と秘密鍵の両方が含まれています。
しかし、productsignユーティリティを使用してこの .pkg に署名しようとすると、次のようなエラーが表示されます。
productsign --sign "commonName" unsigned.pkg signed.pkg
productsign: エラー: 「commonName」の適切な署名 ID が見つかりませんでした。フラット スタイルの製品に署名するには、インストーラ署名 ID (アプリケーション署名 ID ではない) が必要です。
macos - productsign はキーチェーンから証明書を見つけることができません
次のコマンドを使用して、Mac インストーラー (.pkg ファイル) に署名しようとしています。
しかし、次のエラーが発生しています。
を使用して証明書を検索しようとするとsecurity -v find-identity -p codesigning、次の出力が得られます。
この問題のトラブルシューティングと修正方法を教えてください。
xcode - Mac App Store に送信すると、アプリのインストーラーに「無効な署名」が与えられ続ける
Mac App Store に (Qt 5.4.2 を使用して (疑いがありますが、念のため含めて)) アプリを送信しようとしていますが、何らかの理由で次のエラーが発生し続けます。
無効な署名- このエラーは、アプリのインストーラーに間違って署名した場合に発生します。このプロセスには、「サード パーティ Mac 開発者アプリケーション」証明書と「サード パーティ Mac 開発者インストーラ」証明書の 2 つの証明書が必要です。パッケージに署名するときは、インストーラ証明書を使用してパッケージに署名していることを確認する必要があります。Xcode オーガナイザー経由でアプリを送信するとき、またはコマンド ラインから productbuild を実行するときに、この証明書を指定していることを確認してください。
Xcode 6.4 で 10.10.4 を使用していたとき、Application Loader でこのエラーが発生していました。通常の検索を行った後、この問題について見つけた参考資料はすべて 3 ~ 4 年前のものでした。古い回答の 1 つで、誰かが OSX と Xcode をアップグレードするとそれが修正されたと述べていたので、一体何なのかを考えました。
私は OSX 10.11.13 にアップグレードし、Xcode 7.2.1 (Application Loader 3.4 (902) とともに) でコンパイルしていますが、最初は「ああ、エラーはなくなった!」と思いました。Application Loader で表示されなくなったためです。ただし、Application Loader がアップロードすると、(上記のように) メールに同じエラーが表示されます。
私は、Qt フレームワークでコピーすることで多くのブードゥーを実行し、問題を修正してバイナリに署名する Python スクリプトを持っています。そして、最後の 2 つのことは、PKG ファイルを作成して署名することです。最初は、2 つの別々のステップでそれを行いました。--sign笑いのために、引数を段階的に追加しようとしましたproductbuildが、同じ結果が得られました。コマンドは次のようになります。
また、FWIW、アプリを更新しようとしたのはこれが 1 年以上ぶりです (私は知っています :( ) 。これは新しいマシンです。そのため、開発者ポータル (developer.apple.com) で証明書を削除し、再作成しました。それらをインポート/インストール/ダウンロードしました. 実際, 私はそれを理解するために何度かそれをしました. 前回Xcodeを介してそれらを作成したとき. したがって、キーチェーンアクセスは次のようになります:
開発者ポータルでのビューは次のようになります。
ただし、私が言及する可能性のある別のこと (重要かどうかはわかりません)、これらの新しい証明書をキーチェーンに追加するたびに、Xcode で行うか、主に証明書を作成、ダウンロード、インポートするかにかかわらず、証明書を右クリックして [情報を見る] -> [信頼] に移動し、[コード署名] を [値を指定しない] から [常に信頼する] に変更する必要がありました。
誰かが私が間違っていることを特定するのを手伝ってくれることを期待して、私は多くの詳細を提供しようとしました. 誰か提案やアイデアがあれば、私は非常に感謝しています!
macos - productsign を使用して OSX で APP インストーラーに署名する方法は?
Apple からインストーラー証明書を取得しました。私のインストーラーはカスタム APP (pkg などではありません) です。今私が走れば
それはちょうどこれを言います:
バグか何かだと思いましたが、APPファイルが気に入らないだけかもしれません。何か案は?
macos - productsign で XAR に署名するとアーカイブ ファイルが破損する
を使用して作成された 2 つのファイルを含むアーカイブproductsignに署名するために使用しようとしています。ツールはファイルを正しく作成していますが、取得したファイルが署名されていても、署名によってコンテンツが破損していると思います。以下の関連するコマンド出力の一部 (機密情報を に置き換えました):XARpkgproductbuildxarINFO
コマンドはproductsign他の方法で機能することを意図していますか? 私のアプローチの何が問題なのかわかりません。
macos - OSX - 署名されたインストーラーが拒否されました
私はインストーラーに署名するために以下を使用しています:
出力は次のとおりです。
後で、インストーラーを確認し、次を取得します。
どんな手掛かり ?
bash - Teamcity: Mac ビルド エージェントは、productsign を使用して .pkg ファイルに署名できません。SignData が失敗しました: CSSMERR_CSP_NO_USER_INTERACTION (-2147415840)
シナリオ:
TeamCity ビルドが完了した後、TeamCity を使用して署名する必要がある .pkg ファイルがあります。
これは、最後に実行されるビルド ステップまたはスクリプトであることが理想的です。調査の結果、次のことを試しました。
スクリプト入力:
出力:
質問:
キーチェーンのアクセス制御に関して、ダイアログ プロンプトが最初に表示されたときに [常に許可] をクリックするというこの言及に対する多くの解決策に気付きましたが、このビルド エージェントとの唯一の既知の対話は SSH を介したものです。この「常に許可」プロンプトでの GUI 操作なしで、Teamcity mac ビルド エージェントで productsign を使用して .pkg に署名する手段はありますか? または、ビルド エージェントにログインして GUI を表示し、[常に許可] をクリックしてこれを有効にする方法はありますか?
注:(ローカル署名マシン)秘密鍵のアクセス制御を「すべてのアプリケーションがこのアイテムにアクセスできるようにする」ように保存し、それをエクスポートし、ビルドエージェントの login.keychain にインポートしてから、上記をもう一度試してみました。同じ出力があります。私の macbookpro で同じプロセスを実行すると、すべてが機能しますが、ずっと前に「常に許可」をクリックしたかどうかは思い出せません。
何かご意見は?とても有難い。

