私はこれを何度も受け入れてきたので、ファイアウォールはすでにそれを覚えているはずです。
たとえば、デバッグモードでJavaプログラムを起動すると、Eclipseで取得されます。このダイアログは、0.5秒など非常に短い時間しか表示されず、表示されない場合があります。また、iTunes(ライブラリの共有を有効にしている場合)やその他のプログラム(ファイアウォールの設定パネル(詳細設定)にリストされている場合でも)で入手できます。
私はこれを何度も受け入れてきたので、ファイアウォールはすでにそれを覚えているはずです。
たとえば、デバッグモードでJavaプログラムを起動すると、Eclipseで取得されます。このダイアログは、0.5秒など非常に短い時間しか表示されず、表示されない場合があります。また、iTunes(ライブラリの共有を有効にしている場合)やその他のプログラム(ファイアウォールの設定パネル(詳細設定)にリストされている場合でも)で入手できます。
回答:
ここには2つのオプションがあります。
plist
それらのアプリのファイルを削除して実行し、リストに追加できます。plistは多くの動作に責任があり、OSのアップグレードまたはアプリによって「リンク」が壊れる可能性があると確信しています。plist
ファイルについて... plistは、アプリケーションと他のリソース(通常はOS)がアプリケーションの実行に必要な情報を保持および再利用するために使用するプロパティを含む特別な種類のテキストファイルです。plist
はファイルタイプであり、多くの用途があり、通常はユーザー設定を保存しますが、本質的にはXMLファイルです。およびplist
で問題のアプリケーション用のキャッシュ(通常はファイル)があるかどうかを確認できます。1つもありますが、いじくり回すと悪いことが起こる可能性があるため、そのままにしておきます。システムはさまざまな理由でこれらのフォルダーに移動します。通常、月に1回程度、完全にリストした最初の2つのフォルダーを削除します。/Library/Caches
/System/Library/Caches
~/Library/Caches/
sudo codesign --force --deep --sign - /path/to/application.app
この方法を使用して証明書を作成する必要はありませんでした。
それでも解決しない場合は--deep
、末尾のスラッシュを付けずに、または付けずに試してください。
sudo codesign --force --sign - /path/to/application.app
わかりやすくするために注意してください。署名を適用した後、アプリを起動し、最後に着信接続を受け入れてから、終了して再度起動し、要求がなくなったことを確認します。
-
後は--sign
、「アドホック署名」を使用していることを意味します。そのコマンドを使用するために証明書を持っている必要はありません。これが端末の使用と矛盾する理由がわかりません。実行man codesign
して説明を確認します。
sudo codesign --force --sign - /path/to/application.app
私のために働いたが、著者によって提案されたバリエーションではありません。--deep
それとも先頭のスラッシュが問題だったのだろうか。
RedYetiのリンクは便利ですが、他の人のために数回クリックを保存するだけで、コード署名証明書を生成し、コードの(再)署名に使用する方法を要約できます。
独自のコード署名証明書を作成します。
キーチェーンアクセスで、キーチェーンアクセス>証明書アシスタント>証明書を作成します。これにより、証明書アシスタントが起動します。
名前:覚えやすい任意の文字列をここに入力します。そうしないとcodesign
、コマンドラインから使用するときに証明書の名前をエスケープする必要があります。
IDタイプ:自己署名ルート
証明書の種類:コード署名
[デフォルトを上書きする]チェックボックスをオンにします。これは非常に重要です
シリアル番号:1(証明書名/シリアル番号の組み合わせが一意である限り、OK)
有効期間:3650(10年を与えます)
メール、名前などを自由に入力してください。
キーペア情報:RSA、2048ビットに設定。私見は本当に重要ではありません。
「キー使用法の拡張子」から「サブジェクトの別名の拡張子」まで:デフォルトを受け入れます。
場所:ログインキーチェーン。
作成したら、ログインキーチェーンで「常に信頼する」に設定します。証明書を右クリックして「情報を見る」を選択し、「信頼」セクションで「この証明書を使用するとき」を「常に信頼する」に設定します。
アプリの再署名:
codesign -f --deep -s <certname> /path/to/app
動作したことを確認します。
codesign -dvvvv /path/to/app
楽しい!
これは、アプリが署名されているかどうかに関係します。署名されていない場合、設定は記憶されません。
アプリが署名されているかどうかを確認するには、ターミナルでこれを行います。
cd path/to/your/app
codesign -vvv Eclipse.app/
Eclipseの場合-私はそれがまったく署名されていないと言います。アプリに署名する方法についてこれ以上コメントすることはできませんが、私はそれをすることに煩わされていませんが、スーパーユーザーに関するこの答えはそれをカバーしています:
これは古いQ&Aであることに感謝しますが、同じ問題が発生したとき、Googleでの最初のヒットでした。ここに着くかもしれない他の人のために何かを追加したかっただけです。
ここで説明したコード署名コマンドを実行するには、xcodeコマンドラインツールをインストールする必要があります。これらがないと、エラーメッセージが表示されます。
xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun
これを修正するには、次を使用してツールをインストールします。
xcode-select install
私はahallの投稿にコメントしたでしょうが、そうする評判ポイントはありません。
コンピューターを起動した後、毎回このダイアログボックス(Canon ccpd)を取得しました。ファイアウォールを開く>セキュリティとプライバシー>ロックを解除して変更を有効にする>「ステルスモードを有効にする」ボタンをクリックする>「着信接続をすべてブロックする」ボタンをクリックする
その後、キヤノンプリンタードライバーからダイアログボックスを開く必要はありません。
上記のすべてをMac 10.13で試しましたが、何も機能しませんでした。
最後に、ログインフックに接続されたログアウト時に実行されるファイアウォールをオフにするスクリプトを作成したので、ログイン時に許可が不要になり、delayedlauncherを使用してファイアウォールをオンにする別のスクリプトを実行しました。
すべて良い今
私の状況には、MacOS Mojave 10.14.5にインストールされたEclipseの2つのコピーが関係しています。最初のコピーは、MacOSファイアウォールで許可されました。2番目のコピーでは、常に「着信接続を受け入れる」プロンプトが表示されます。「Accept」を選択すると、リブートするたびにメッセージが表示され続け、ファイアウォールの設定は更新されなかったようです。
解決策は、MacOSシステム環境設定->セキュリティとプライバシー->ファイアウォールを開き、画面のロックを解除し、ファイアウォールオプションを選択することでした。Eclipse.app「着信接続を許可する」を選択し、「-」ボタンで削除します。次回、Eclipseの「着信接続を受け入れる」プロンプトで「許可」を選択したのは最後でした。
私にとっての解決策は、ファイアウォールを完全に無効にすることでした。ネイティブにコンパイルしているため、もちろん署名されていないWeb対応ソフトウェアを作成することは非常に一般的です。
CMD +スペースバーでスポットライトを開き、「プライバシー」を検索して「セキュリティとプライバシー」を選択します。次に、「ファイアウォール」タブに切り替えて、そこでファイアウォールを無効にします。