rootとして実行する必要があり、launchdによって起動されるデーモンがあります。このデーモンは、ユーザーが指定したクレデンシャルを保存する必要があるため、SecKeychainOpenおよび同様の関数を使用してシステムキーチェーンに書き込みます。
これはrootとして実行されるため、システムキーチェーンを使用する必要があると確信しています(通常のユーザーとしては実行されないため、ユーザーのログインキーチェーンの使用は正しくありません)。
私のインストーラーは、インストールの最後にlaunchctlを使用してこれをlaunchdにロードします。問題は、再起動するまで実際には起動しないことです。plistでOnLOadをtrueに設定しましたが、システムキーチェーンを使用する場合、それを機能させるには再起動する必要があるようです。
再起動が必要ない場合はユーザーエクスペリエンスがはるかに向上するため、これに対処する方法を誰かが知っているかどうか疑問に思いました。明確にするために、再起動せずにlaunchdを使用してデーモンからシステムキーチェーンにプログラムでアクセスできますか?
アドバイスやアイデアをありがとう。